webOS IPTV Player v1.1.0
✨ Features
- Channel search in both the channel list and the player sidebar.
- Multilingual genre icons for channel groups — group titles are matched against a keyword set (EN/ES/DE/FR, Russian, Simplified Chinese, Arabic) to pick from 13 category icons plus All/Favorites, with a fallback for unmatched groups.
- Remote-control keys now work while the search box has focus — Back, colored, channel, and media buttons reach the app even with the search caret active, instead of being swallowed by the text input.
🚀 Performance & UX
- Faster morph re-renders via an
isEqualNodefast path — re-rendering an unchanged 344-row list dropped from ~198ms to ~57ms on a webOS TV. - Faster channel rendering and normalized ellipsis in UI text.
- Smoother hovering: redundant hover work on pointer move is avoided, and the hover highlight clears when the cursor leaves.
- Sticky search bar now stays above scrolling rows, with channels scrolling through beside the input.
🐛 Bug Fixes
- Channel list now re-renders when the initial EPG load and the 12h refresh complete, so now-playing lines are no longer blank or stale.
- Pressing Back/Enter in the search box no longer double-fires the global key handler (e.g. exiting search and closing the sidebar).
- Fixed uneven channel row heights in the list and sidebar.
🧰 Internal & Docs
- Centralized the Escape/Back key codes under
CONFIG.KEYSso the handler and its tests share one source. - Added a screenshot generator (
scripts/generate-screenshots.mjs) and README preview images. - Added installation steps to the README and documented why the upload service is M3U-only.
Full Changelog: v1.0.0...v1.1.0