Up from the first channel reaches the last again, so channels at the end of the lineup are a press away. The filters are Down from the dock, which is Left from the earliest program.
- commit
- 90921085bc61369075eeae7b429435e8ec53b788
- parent
- 070eb3345d8412abac83c961473ceb8986763010
- author
- FelineStateMachine <226808055+FelineStateMachine@users.noreply.github.com>
- kind
- fix risk score 1.9 of 3, Jev's estimate
| M | README.md | 2 | +- |
| M | frontend/ | 19 | +++++++++++-------- |
@@ -145,7 +145,7 @@ had.
145145 146146 | Key | Elsewhere |147147 | --- | --- |148-| G | Guide: arrows move, Up from the top row to the filters (Favorites, Sports...; also `[` `]`). Enter watches what's on, or shows a program to come's actions; hold Enter, or I, for any program's: watch, record, series, new episodes only, favorite, hide. Home jumps to now, R / Shift R / N record, f favorite, H hide (U undoes) |148+| G | Guide: arrows move, and Up and Down wrap round the channels. The filters (Favorites, Sports...; also `[` `]`) are Down from the top bar, which is Left from the earliest program. Enter watches what's on, or shows a program to come's actions; hold Enter, or I, for any program's: watch, record, series, new episodes only, favorite, hide. Home jumps to now, R / Shift R / N record, f favorite, H hide (U undoes) |149149 | D | Recordings: Left (or `[` `]`) for Library, Coming up, Series. Enter shows a recording's actions: resume, from the start, watched, delete (press twice); Shift Enter starts over, W marks watched, Delete twice removes; on a series K sets how many to keep, N new episodes only |150150 | A | Reception: what the tuners measured, by RF channel (the ones the scan found first), with the transmitters licensed on each. Up and Down pick one, Enter watches its first channel; Left for the tuner and Measure now, which reads every RF channel on a free tuner and shows its progress |151151 | W | Weather: current conditions, alerts, the next 24 hours, 7-day, radar loop and satellite; Up and Down move through them, Left to watch the weather channel |@@ -1479,7 +1479,12 @@ function dockKey(e) {
14791479 e.preventDefault();14801480 return true;14811481 }1482- case 'Escape': case 'ArrowDown': closeDock(); e.preventDefault(); return true;1482+ case 'ArrowDown':1483+ // In the guide the filters sit just below the dock.1484+ if (state.view === 'guide') { closeDock(false); guideZone('filters'); } else closeDock();1485+ e.preventDefault();1486+ return true;1487+ case 'Escape': closeDock(); e.preventDefault(); return true;14831488 default: closeDock(); return false;14841489 }14851490 e.preventDefault();@@ -1885,12 +1890,10 @@ function guideKey(e) {
18851890 const list = guideChannels();18861891 const sel = selectedProgram(list);18871892 switch (e.key) {1888- // Down from the last row wraps to the first; Up from the first goes to1889- // the filters. The dock is Left from the earliest program.1890- case 'ArrowUp':1891- if (state.gRow <= 0) { e.preventDefault(); return guideZone('filters'); }1892- state.gRow -= 1;1893- break;1893+ // Up and Down wrap round the channels, so the last ones are a press1894+ // away. The dock is Left from the earliest program, and the filters1895+ // Down from the dock.1896+ case 'ArrowUp': state.gRow = list.length ? (state.gRow - 1 + list.length) % list.length : 0; break;18941897 case 'ArrowDown': state.gRow = list.length ? (state.gRow + 1) % list.length : 0; break;18951898 case 'PageUp': state.gRow = state.gRow === 0 ? list.length - 1 : Math.max(0, state.gRow - 8); break;18961899 case 'PageDown': state.gRow = state.gRow === list.length - 1 ? 0 : Math.min(list.length - 1, state.gRow + 8); break;@@ -2111,7 +2114,7 @@ function renderGuide() {
21112114 21122115 // guideStatusHints names the guide's keys beside its filters.21132116 function guideStatusHints() {2114- if (androidTV && !prompts.pad) return 'Up from the top row for filters';2117+ if (androidTV && !prompts.pad) return 'Filters: Left to the top bar, then Down';21152118 return hints([['i', 'I', 'more'], ['f', 'F', 'favorite'], ['h', 'H', 'hide'], ['[', '[ ]', 'filter']]);21162119 }21172120