Commit Graph

90 Commits

Author SHA1 Message Date
76eebc1139 refactor: remove overcomplicated TvHomeHeroState 2026-04-19 19:49:12 +02:00
632dda52d6 Refactor media models to use MediaUiModel for improved consistency and type safety 2026-04-18 21:35:56 +02:00
5a377fc428 Add keys to lazy Compose entries 2026-04-17 18:02:22 +02:00
9591b72273 Extract shared Compose UI into core module 2026-04-15 21:21:10 +02:00
29747a1031 Reorganize app-tv packages and align test imports 2026-04-15 20:35:46 +02:00
ad930e899f feat: introduce core data models and interfaces for playback and downloads 2026-04-15 20:02:50 +02:00
b67c8076f1 refactor: update package structure and imports for consistency across UI components 2026-04-14 22:03:36 +02:00
1f6e3a8b43 feat: update adaptive icons to use color resources and add monochrome variant 2026-04-14 19:52:15 +02:00
3509a09064 Separate mobile downloads from TV playback 2026-04-13 16:31:57 +02:00
9a130e9738 Keep TV player controls hidden while seeking 2026-04-13 14:40:07 +02:00
a0af187e8f feat: implement quick play/pause toggle for TV player
Adds the ability to play and pause media using the Center or Enter keys
without displaying the full player controls. When pausing via this
method, a brief visual "Pause" feedback overlay is shown in the center
of the screen.

- Added `TvPlayerHiddenStopFeedback` component and related logic
- Updated `handleTvPlayerRootKeyEvent` to support background playback toggling
- Added `pausePlayback` and `resumePlayback` to `PlayerViewModel` and `PlayerManager`
- Included comprehensive UI tests for the new hidden control behavior
2026-04-12 19:02:45 +02:00
16839942b1 Focus play/pause button when player controls open 2026-04-12 18:39:57 +02:00
360cd51e23 feat: Enhance TV player controls with key event handling and overlay visibility management 2026-04-10 15:49:34 +02:00
7c30e12af7 Fix TV player track selector focus 2026-04-09 19:59:01 +02:00
53f7cb58f3 feat: Update background image URL handling in TvEpisodeScreen 2026-04-09 19:28:17 +02:00
313a971684 feat: Rename screen and component classes for TV context 2026-04-09 19:01:16 +02:00
d007c80af7 Refine TV player inline playlist flow
Move the TV player queue into a simplified bottom inline playlist row and keep the existing seek bar -> controls -> playlist navigation hierarchy.

Focus playlist entry on the current queue item, keep focus pinned on the row at the horizontal edges, and return to the controls row on Up/Back.

Add compose coverage for playlist expansion, current-item focus, fallback focus, and row edge navigation.
2026-04-09 18:22:21 +02:00
54e79d8bee feat: Extend play toggle functionality to include additional enter key inputs 2026-04-09 17:03:16 +02:00
4ef78b8ec6 feat: Implement back button behavior for TV player controls 2026-04-09 16:57:30 +02:00
b41a9c24a2 feat: Implement auto-hide delay for TV player controls 2026-04-08 20:19:04 +02:00
cf08db5034 Split mobile and TV playback profiles 2026-04-08 19:46:37 +02:00
1a17c52326 refactor: Throw out overcomplicated shit code for Playback 2026-04-08 18:03:23 +02:00
b47ebda8e6 feat: add TV player UI components including controls, loading error card, and track selection 2026-04-07 19:25:23 +02:00
fb1d099ec1 refactor: remove unused back navigation handlers in TV player UI 2026-04-07 18:53:42 +02:00
bcbad6f262 Refine TV player remote control key mappings
Update directional key behavior to separate seeking, showing controls, and
toggling playback. Left/Right now seek without showing controls, while
Up/Down now only show controls instead of toggling playback.
2026-04-07 18:51:25 +02:00
8a6c745332 fix: reduce memory cache size percentage in TvActivity 2026-04-07 18:51:07 +02:00
985fdec3a5 feat: add play/pause toggle on key press in TV player screen 2026-04-07 16:58:18 +02:00
b91a8a81e8 Fix TV detail playback single-press behavior 2026-04-06 20:38:05 +02:00
9e8772467c Improve player error reporting 2026-04-06 20:20:44 +02:00
60291dc78e Keep TV detail hero visible on initial focus 2026-04-06 19:54:01 +02:00
0870e8aee4 Remove status and progress overlays from TV hero section
Removes eyebrow text, watched status chips, and progress bars from the
focused hero component on the TV home screen. The underlying model and
UI are simplified to display only the title and basic metadata.
2026-04-06 19:38:27 +02:00
f0bb37d8ec refactor: adjust image layout in TvMediaDetailScaffold for improved responsiveness 2026-04-06 19:28:55 +02:00
34ae15d645 Move TV detail hero content into body 2026-04-06 19:12:52 +02:00
9083a08f95 Refactor TV media detail backdrop layout 2026-04-06 19:00:24 +02:00
32d50f750f Use BringIntoViewSpec for TV home focus alignment 2026-04-06 18:38:20 +02:00
2937ee836b refactor: update TvMediaDetailScaffold to use artwork parameters and improve layout 2026-04-06 14:19:59 +02:00
6dc3442089 Replace TV tabs with navigation drawer 2026-04-06 13:08:56 +02:00
df67348f24 refactor: remove action parameters from TvLibraryPosterSection and TvSectionHeader for cleaner UI 2026-04-06 12:32:10 +02:00
bdef25d36a refactor: remove badge text from TvHomeSections and clean up related code 2026-04-06 12:25:36 +02:00
cf296c3286 refactor: simplify gradient handling and remove unused components in TvFocusedItemHero 2026-04-06 12:21:29 +02:00
9161c23507 refactor: remove top bar components from Movie, Series, and Episode screens in the tv ui 2026-04-05 20:02:49 +02:00
69b3933175 feat: added TvHomeFocused section to the TvHomeScreen 2026-04-05 19:54:13 +02:00
0011420bf2 feat: add initial focus management and media metadata for TV home screen
Introduce a `FocusableItem` interface to unify media item properties (ID, type, text, and images) across `ContinueWatchingItem`, `NextUpItem`, and `PosterItem`.

Key changes:
- Implement automatic initial focus on the first available item in `TvHomeContent`.
- Add `onMediaFocused` callbacks to TV sections and cards to track active items.
- Standardize image URL generation and metadata access in home models.
- Clean up unused previews in `HomeScreen`.
- Add UI tests for TV home content focus behavior.
2026-04-05 17:38:19 +02:00
680df51ce7 refactor: update image handling in Episode dto to use imageUrlPrefix and JellyfinImageHelper 2026-04-01 22:49:37 +02:00
98850087ff refactor: update image handling in Series dto to use imageUrlPrefix and JellyfinImageHelper 2026-04-01 22:38:58 +02:00
ce5266f17c refactor: update image handling in Movie dto to use imageUrlPrefix and JellyfinImageHelper 2026-04-01 22:30:32 +02:00
61ce6abb39 refactor: reorganize package structure and rename TvHomeScreen to TvHomeContent for clarity 2026-04-01 21:55:46 +02:00
6e4ea692d5 refactor: rename TvHomeContent to TvHomeScreen for consistency 2026-04-01 21:50:49 +02:00
de011a5f3b refactor: rename TvHomeScreen to TvAppScreen for consistency 2026-04-01 21:50:30 +02:00
b3d3f60d78 refactor: simplify navigation 2026-04-01 21:48:58 +02:00