Skip to content

v4.2.0

Choose a tag to compare

@Liberniz Liberniz released this 25 Oct 07:48
· 3 commits to main since this release
feat(tv): remote-first interaction layer (v4.2.0)

The shared desktop UI is pointer-first; on TV that meant invisible focus and mouse-oriented navigation. When the Android bridge shim flags TV mode (window.__CINEFLOW_TV__), the renderer now adds:

- Spatial D-pad navigation: arrow keys move a visible focus (accent outline, cards scale up) across every interactive element using geometry-based scoring, scoped to the topmost open layer
- Cards/resource rows/style chips become focusable automatically (MutationObserver keeps tabindex in sync with re-renders); Enter activates them
- Modals and the detail panel grab focus on open and restore it on close; boot lands focus on the first card
- Back key: MainActivity asks window.__cineflowHandleBack() first — it closes the scan dialog, player, settings or detail panel — before falling back to WebView history / exit
- tv-mode CSS: no cursor, no scrollbars, desktop island handle hidden

Desktop builds are unchanged (the layer stays inert without the flag).