Commit Graph
15 Commits
Author SHA1 Message Date
Sam Matthews e500fe452d fix: when navigating back to home screen it does full screen refresh, making it feel slow now it just refreshes the continue watching tab and keeps everything else the same. 2025-11-05 11:39:29 +00:00
Sam Matthews 00da8a23e3 feat: sleep timer
- default timer values in settings
- extend timer function
- pauses playback when done and shows popup
2025-11-05 11:28:51 +00:00
Sam Matthews 2f7c1084cb Add library management features: scan, refresh metadata, empty trash, and analyze #38 2025-11-04 20:10:59 +00:00
Sam Matthews 81adf86769 formatting issues 2025-11-04 19:00:44 +00:00
Sam Matthews 50264d52f3 Merge branch 'main' into plex-recommendation-on-discover-screen-28 2025-11-04 18:59:31 +00:00
Sam Matthews 2603a3992c - Add PlexHub model to represent recommendation sections (trending, top in genre, etc.)
- Add getLibraryHubs() and getPlaylist() API methods to PlexClient
- Display library hubs below Recently Added on Discover screen
- Filter out duplicate hubs (Continue Watching, Recently Added) that are already shown
- Add dynamic context-aware icons based on hub titles (trending, genres, ratings, etc.)
- Support 20+ hub types with matching icons: trending, popular, seasonal, genres, top rated, playlists, and more
- Support for custom collections from Kometa/Pulsarr

Implements feature request #28
2025-11-04 18:57:46 +00:00
Sam Matthews bc54a2230b feat: Add support for Plex recommendation hubs on Discover screen
- Add PlexHub model to represent recommendation sections (trending, top in genre, etc.)
- Add getLibraryHubs() and getPlaylist() API methods to PlexClient
- Display library hubs below Recently Added on Discover screen
- Filter out duplicate hubs (Continue Watching, Recently Added) that are already shown
- Add dynamic context-aware icons based on hub titles (trending, genres, ratings, etc.)
- Support 20+ hub types with matching icons: trending, popular, seasonal, genres, top rated, playlists, and more
- Support for custom collections from Kometa/Pulsarr

Implements feature request #28
2025-11-04 18:04:43 +00:00
Sam Matthews 4b972b0992 feat: Add 'Latest Episode Air Date' sort option for TV show libraries
- Add conditional sort option for TV show libraries that sorts by the most recent episode's original air date
- Uses 'episode.originallyAvailableAt' field to track when the latest episode aired
- Only appears for TV show libraries, not movies or other media types
- Defaults to descending order to show recently aired episodes first
- Perfect for tracking seasonal anime/shows with new episodes

Fixes #31
2025-11-04 17:15:21 +00:00
Sam Matthews 1cab790570 fix 2025-11-04 17:09:32 +00:00
Sam Matthews 2ac3555567 Merge main into issue-20: Combine music filtering with library ordering 2025-11-04 16:04:31 +00:00
Sam Matthews 1ec9fbcc02 Hide music libraries from app (Issue #20)
- Filter out artist-type libraries in libraries_screen.dart
- Add safety check in media_card.dart to prevent music playback attempts
- Filter music content from getOnDeck() and getRecentlyAdded() in plex_client.dart

Music libraries are now hidden throughout the app since music playback
is not yet supported. This focuses the app on video content (movies and TV shows).
2025-11-04 15:49:00 +00:00
Sam Matthews 236e3e7cfc Fix poster sizing on home screen to match libraries view
- Increase minimum poster width from 130px to 160px
- Adjust poster sizing to account for MediaCard padding (16px)
- Calculate poster dimensions based on actual display area
- Ensure consistent poster sizing across Home and Libraries screens

Fixes #13
2025-11-04 05:06:55 +00:00
Sam Matthews f06deba0cc feat: add library reordering functionality (#6)
- Add reorder mode toggle button in Libraries screen app bar
- Implement drag & drop reordering for library chips
- Persist library order to local storage using SharedPreferences
- Restore saved library order on app launch
- Update selected library index when libraries are reordered
- Add visual feedback with drag handle icon in reorder mode

Fixes #6
2025-11-04 04:29:26 +00:00
Sam Matthews ed668ba0e4 Fix content rating display to remove country prefixes
- Add formatContentRating utility function to strip country codes (gb/, us/, de/, etc.)
- Apply formatter in discover_screen.dart hero section
- Apply formatter in media_detail_screen.dart (badge and info row)
- Ratings now display as '12', 'PG', 'PG-13' instead of 'gb/12', 'us/PG-13'
- Fixes #10
2025-11-04 03:32:28 +00:00
Sam Matthews f7d98fbe44 Fix rating display showing 0.7 instead of 7.0
Fixes #7

- Changed rating field type from int to double in PlexMetadata model
- Removed incorrect division by 10 in discover screen rating display
- Regenerated JSON serialization to properly parse rating as double
- Rating now displays correctly (e.g., 7.0 instead of 0.7)
2025-11-04 03:12:42 +00:00