Commit Graph

37 Commits

Author SHA1 Message Date
c815f53cff refactor: simplify color definitions using HSL for better readability 2026-03-31 11:01:07 +02:00
52593237f4 Hide controls if media is playing in the tv ui 2026-03-30 08:47:49 +02:00
be350ff585 Add toggle play state functionality to seek bar onEnter pressed in TvUI 2026-03-30 08:44:13 +02:00
94f1eb2883 Refactor SeriesScreen components and update UI text for clarity 2026-03-30 08:32:46 +02:00
1751755f31 Fix TV detail screen entry focus 2026-03-29 19:36:35 +02:00
cc1e1d7df9 Move TV detail overview and playback into body 2026-03-29 19:19:12 +02:00
c163a714d8 Refactor media detail screens with a unified TV scaffold
Introduces `TvMediaDetailScaffold` to standardize the layout of Movie, Series, and Episode detail screens. This refactor implements a consistent two-column header design featuring a hero section on the left and an overview panel on the right, supported by a new horizontal and vertical gradient overlay system.

Key changes:
- Created `TvMediaDetailScaffold`, `MediaDetailHeaderRow`, and `MediaDetailSectionTitle` common components.
- Extracted screen-specific hero and overview logic into internal components for `MovieScreen`, `SeriesScreen`, and `EpisodeScreen`.
- Standardized typography, spacing, and focus management across all detail views.
- Added comprehensive UI tests for Movie, Series, and Episode content screens.
- Improved the "Up Next" and "Library Status" visibility on the Series detail page.
2026-03-29 18:11:05 +02:00
55e87d9d04 Add series shortcut to TV episode top bar 2026-03-29 17:12:43 +02:00
0afa7334be Add play button to TV series screen 2026-03-29 17:00:15 +02:00
a187192013 Fix TV home row focus navigation 2026-03-28 22:40:25 +01:00
fb4b8a56fa Fix TV home next up focus navigation 2026-03-28 21:15:26 +01:00
6de42dc65b Fix TV detail top bar focus navigation 2026-03-28 16:58:37 +01:00
cfff7c6403 Remove add button from TV episode/series/movie screens 2026-03-28 16:48:32 +01:00
0d7a3d99dd Removed online/offline toggle button from tv ui and also from the references 2026-03-28 11:38:22 +01:00
775d579c2f Removed play button form Next up Card in the Tv ui 2026-03-28 11:37:25 +01:00
a7a455c427 Rename TvHomePage to TvHomeScreen and update references 2026-03-28 11:31:09 +01:00
9ae8fac33b Refactor tv components and cleaned up code 2026-03-28 11:09:07 +01:00
266f310f1c Remove unused resources 2026-03-28 10:54:03 +01:00
6dacd269e0 Remove app name label from main activities in AndroidManifest 2026-03-28 10:51:04 +01:00
d1ef218b16 Change Navigation Drawler to Top Tabs 2026-03-28 10:50:53 +01:00
70514ea146 Added Profile dropdown menu 2026-03-27 14:52:27 +01:00
9eccf859bc Added logic for Searching through available medias and basic ui 2026-03-26 22:22:56 +01:00
8afae8a71c Fix: Enhance NavDisplay transitions with fade animations and background color 2026-03-26 18:00:42 +01:00
6e49b1f9b7 Fix TV episode playback navigation 2026-03-25 20:19:04 +01:00
f85624b159 Fix interactive episode navigation buttons 2026-03-24 21:34:38 +01:00
0f82ed4603 feat: add focus management for play button in Movie and Episode screens 2026-02-27 21:07:55 +01:00
36002e513e feat: implement focus management for Continue Watching section in TV player 2026-02-27 21:03:45 +01:00
96a9419746 feat: enable code optimization and resource shrinking in release build 2026-02-27 19:34:08 +01:00
78f03096dd feat: make prerequisits for app publication 2026-02-27 18:52:14 +01:00
06272eb08a feat: Add D-pad seeking and auto-focus seek bar in TV player
D-pad left/right now seeks -10s/+10s both when controls are hidden
and when the seek bar is focused. Controls auto-focus the seek bar
when shown, removing the need to press OK first to interact.
2026-02-27 18:52:14 +01:00
71d2ef9534 feat: Show TV player controls on D-pad or OK button press 2026-02-27 18:12:28 +01:00
e4b99354f6 feat: Back gesture should hide controls in tv module 2026-02-27 17:42:05 +01:00
2b27ce946d feat: Add TV focus states and refactor content screens to LazyColumn
- Add animated focus feedback (scale, border, background) to all interactive
  TV UI components: PosterCard, GhostIconButton, MediaActionButton,
  MediaResumeButton, PurefinIconButton, TvHomeDrawer nav items,
  TvHomeSections cards, TvPlayerScreen track/queue panels
- Refactor EpisodeScreen, MovieScreen, and SeriesScreen from Scaffold +
  verticalScroll to LazyColumn layout with Box-overlaid top bar
- Switch MovieComponents and MovieScreen from MovieUiModel to core Movie model
- Conditionally render cast sections only when cast is non-empty
2026-02-27 17:24:05 +01:00
9ec09a0e94 feat: Allow offline mode in Purefin 2026-02-22 15:41:08 +01:00
6f34190ed0 feat: add player screen to TV app via compose navigation
- Add PlayerRoute to the Route sealed interface
- Refactor PlayerViewModel to expose loadMedia() for external callers
- Add onPlay() to EpisodeScreenViewModel and MovieScreenViewModel
- Wire play/resume buttons in TV episode and movie screens
- Create TvPlayerScreen with TV-optimized controls: seek bar, playback
  buttons, track selection panels, queue panel, and state cards
- Register PlayerRoute in TvRouteEntryBuilder and TvNavigationModule
- Add media3-ui dependency to app-tv module
2026-02-22 11:05:27 +01:00
f85ecc04c7 feat: add content screens to TV app (movies, series, episodes)
- Created MovieScreen, MovieComponents for movie detail view
- Created SeriesScreen, SeriesComponents for series detail with season selection
- Created EpisodeScreen, EpisodeComponents for episode detail view
- Copied all required common UI components from mobile app
- Updated TvNavigationModule with route entry builders
- Updated TvRouteEntryBuilder with new screen entries
- Added missing launcher resources for TV app build
- All screens reuse ViewModels from :feature:shared module
- TV app now supports browsing movies, series, and episodes
2026-02-22 11:05:27 +01:00
75f3313aa9 feat: add :app-tv module as Android TV starting point
Creates a new :app-tv application module that reuses shared business
logic from :core:model, :core:data, :core:player, and :feature:shared,
with its own TV-specific UI layer.

- TvApplication + TvActivity with full Hilt + Navigation3 wiring
- TvHomePage reusing HomePageViewModel from :feature:shared
- Copied common UI components (PosterCard, WaitingScreen, etc.)
- Copied login screen and form components
- TV navigation module with Home + Login route entry builders
- Material3 theme copied from mobile (ready for TV customization)
- AndroidManifest with LAUNCHER + LEANBACK_LAUNCHER intent filters
- Excludes :feature:download (downloads are mobile-only)
2026-02-22 11:05:27 +01:00