Tier 4Tier 4 · TV (Generic): tv.put.io, Tizen, webOS. The design system as on web but restrained. Built from apps/tv-native, the same React Native codebase that ships Android TV, so the two tiers match by construction.--component-bg · --component-bg-active · --text · --yellow-solid · --radius-tv
Select modalmodal/select-modalshared with Android TV
One overlay serves all three player menus. Title, a list of options, a check on the active one. No description lines, no icons per row, no nesting.
Subtitles
Off
English
English (SDH)
Turkish
SubtitlesOff is prepended as value -1, always first
Playback speed
0.75x
1x
1.25x
1.5x
Playback speedEight steps ship: 0.25 to 2. Focus and selection are separate
Audio tracks
English
Turkish
Commentary
Audio tracksLabel falls back to the language name when the track has no title
titlesSubtitles, Playback speed, Audio tracks. Verbatim from source
subtitlesOff prepended at value -1
speeds0.25, 0.5, 0.75, 1, 1.25, 1.5, 1.75, 2
track labeltrack.title, else getLanguageName(track.language)
mp4 subtitlesrelabelled LANG - title
autoselectfirst text track selected unless dont_autoselect_subtitles
row80px, focus is a full-width fill
check--yellow-solid, marks selection not focus
panelcentred, 720px, --radius-tv 12px
Do not. Invent option labels. Every string here comes from the player source, and the speed list is exactly eight values.
Contract: platforms/tv-generic/DESIGN.md