Commit Graph

15 Commits

Author SHA1 Message Date
81a3504606 refactor: update media retrieval to use Flow and improve error handling in PlaylistQueue loading 2026-04-25 22:31:39 +02:00
b15453ab01 refactor: convert PlayableMedia to sealed class with specific media types 2026-04-25 21:25:11 +02:00
f7f9fc1058 refactor: centralize playable media state
Move playback-related media state into shared model types and make the player consume a single PlayableMedia object instead of separately loading MediaItems, track preferences, resume positions, and media segments.

This updates PlayableMediaRepository to return playable media bundles, seeds the player playlist with the current item, keeps next-up entries in the same model, restores resume/segment handling, and fixes current queue highlighting.

The change also moves track preference models into core-model, centralizes Jellyfin BaseItemDto conversion, removes placeholder movie audio/subtitle fields, bumps the offline Room schema, and updates mobile/TV queue UI code for the playlist model.

Verification:
./gradlew --no-daemon :core-model:compileDebugKotlin :core:compileDebugKotlin :data:compileDebugKotlin :app:compileDebugKotlin
2026-04-25 18:08:23 +02:00
2433ececac refactor: change dependency structure. core should not depend on data. Move repository interfaces to core. Move hilt bindings in the data model. 2026-04-24 19:02:26 +02:00
354314710b refactor: extract core-model into its own module 2026-04-24 18:11:28 +02:00
57e2983527 refactor: move JellyfinAuthInterceptor and JellyfinNetworkModule to the domain module 2026-04-24 09:36:19 +02:00
a9bd23e26c refactor: moved CompositeMediaRepository to the domain level + changes in connected classes 2026-04-24 09:04:51 +02:00
8423e63937 refactor: moved packages from data/core into /data in the data module 2026-04-24 08:37:45 +02:00
3f7c1966af Collapse shared modules into data domain and ui-common 2026-04-23 20:42:59 +02:00
899e2f08b0 refactor: Added MediaSegments to MediaContext to make it accesible during playback. Also refactored MediaTrackPreferences to load preference in the PlayerViewModel 2026-04-22 19:34:11 +02:00
188efde982 Refactor JellyfinApiClient into thin API wrapper 2026-04-22 18:58:15 +02:00
7f83bb181b refactor: Include media data in HomeCache so the first startup is faster. 2026-04-21 22:24:03 +02:00
a2931b78f9 refactor: simplify AppContentRepository initialization logic. 2026-04-21 21:34:22 +02:00
76eebc1139 refactor: remove overcomplicated TvHomeHeroState 2026-04-19 19:49:12 +02:00
ad930e899f feat: introduce core data models and interfaces for playback and downloads 2026-04-15 20:02:50 +02:00