Tier 4Tier 4 · Web TV (tv.put.io, Tizen, webOS). The design system as on web, restrained to a generic list-first 10-foot interface. The shipped tv-native app is the reference look; Roku matches it directly and the native TV tiers align with the same family feel inside their own control conventions.--yellow-solid · --radius-tv · --overlay-full · --tv-video-bg
Sort & action menus, centred select modal
Every TV menu is a centred modal, never a popover anchored to its trigger. --overlay-full scrim, panel on --app-bg with a 1px --line border, 32px padding, 25% width (max 50%). Title 36px --text-secondary.

Rows are transparent until focused, then --component-bg-active. Destructive rows read --red-text-secondary at rest and fill --red-solid on focus, but the label stays --text: focus resets text colour regardless. Default focus is the current value, else the first row. Source: select-modal.tsx · modal.tsx.
Sort list · how getOptionsForValue builds it
Six keys × two directions = twelve options, filtered against the current value. An option survives if it shares the current key or the current direction. The current value is kept and checked; the opposite direction of the current key carries a chevron. Every other key appears once. NAME_ASC yields seven rows.

Known app quirk: rows 1 and 2 are both labelled “Name”: translate("files_sort_name_label") is reused for both directions, so the only difference is the chevron. Reproduced here faithfully rather than smoothed over; worth raising with the app team.

Your Files

Refresh
Name
__tears_of_steel__
544.89 MB
Movies
412 GB
multi-audio-mp4
4.34 GB
Sort by
Name
Name
Size
Date added
Date modified
Type
Watch status
Long-press file actions · same modal, different contents
Long-OK or right arrow opens the same SelectModal, titled with the raw filename. Items are filtered by capability, so the set is never fixed: Play in VLC needs a stream URL and the VLC scheme; Mark as watched needs a non-shared video with start-from on; Trash or Delete for anything unshared.

Nothing qualifies, no menu opens. Source: use-long-press-file-actions.tsx.

Your Files

Glacier.Hike.2024.2160p.HDR.x265-GROUP.mkv
12.1 GB
Movies
412 GB
Glacier.Hike.2024.2160p.HDR.x265-GROUP.mkv
Play in VLC
Mark as watched
Trash
Platform variation · implementation, not redesign
What
tvOS
Android TV
Roku
Smart-TV web
Trigger
long-OK · right arrow
long-OK · right arrow
Star ()
Yellow / Tools
Surface
--app-bg · 1px --line
--app-bg · 1px --line
--app-bg · 1px --line
--app-bg · 1px --line
Placement
centred
centred
centred (cert)
centred (perf)
Default focus
current value, else row 1
current value, else row 1
current value, else row 1
current value, else row 1
Destructive item
red text · --red-solid on focus
red text · --red-solid on focus
red text · --red-solid on focus
red text · --red-solid on focus