Commit Graph
18 Commits
Author SHA1 Message Date
Michael 2406b9b100 feat: introduce XtreamServiceMobile for IPTV API interactions and DnsFallbackInterceptor for network robustness. 2025-12-10 22:16:51 +01:00
Michael 332295a57a v1.1.11: Android TV UX - Extend controls timer + Fix settings keyboard
- Extended player controls visibility from 4s to 10s
- Converted _FilterInput to TV-friendly StatefulWidget
- Added ExcludeFocus + readOnly pattern to prevent keyboard auto-open
- Settings fields now only activate on OK/Enter press
2025-12-10 20:24:12 +01:00
Michael 1841f7f706 v1.1.5: Increase cache wait to 5s before playback 2025-12-10 18:33:32 +01:00
Michael 3ed686e033 v1.1.4: Optimize stream stability for Live TV
- Increased cache to 5 minutes (was 2 min)
- Increased buffer to 150MB (was 50MB)
- Added back-buffer of 75MB
- Network timeout increased to 2 min
- More aggressive reconnection settings
- Added read-ahead buffer of 60s
- Frame dropping to catch up on delays
2025-12-10 18:25:13 +01:00
Michael 774322ec13 v1.1.3: Allow audio to continue in background 2025-12-10 18:20:51 +01:00
Michael 6dd543a0b8 v1.1.2: Add deactivate + lifecycle observer to properly stop player 2025-12-10 18:11:48 +01:00
Michael f46216aa90 v1.1.1: Fix audio continuing in background when leaving player 2025-12-10 18:08:16 +01:00
Michael ee1152ee95 v1.1.0: Add remote control/keyboard support for Android TV
- Space/Enter/Select: Toggle play/pause
- Left/Right arrows: Seek -10s/+10s (VOD only)
- Up/Down arrows: Previous/Next channel (Live TV)
- Escape/Back: Exit player
- Added favorite button to Live TV channel tiles
2025-12-10 14:34:30 +01:00
Michael 326af09282 Feature: Visual Snackbar for resume playback feedback 2025-12-10 13:19:19 +01:00
Michael 049de97a0b Fix: Resume playback retry logic + better debug logging
- Added _seekToResume() method with retry logic (max 10 attempts)
- Seek now waits until player is playing AND has duration loaded
- Added debug logging for resume position checks
- 500ms retry interval with 1.5s initial delay
2025-12-10 12:07:49 +01:00
Michael 451dd082b0 Fix: Resume playback not working - Hive storage issues
- Fixed Hive Map type conversion with safe iteration
- Improved save logic to not require duration loaded
- Added debug logging for troubleshooting
- Save position even if duration not available yet
2025-12-10 11:41:28 +01:00
Michael bf5893e545 Feature: Resume playback from last position
- Added resumePositions storage in MobileWatchHistory
- Save position on player exit (if not finished)
- Auto-seek to saved position on content load
- Clear resume position when content finished (80%+)
2025-12-10 11:13:53 +01:00
Michael d196b1dce0 Feature: Mark movies/episodes as watched at 80% progress
- Added _checkAndMarkWatched() method in NativePlayerScreen
- Moved watch tracking from immediate play to 80% completion
- Added seriesId/season/episodeNum params to NativePlayerScreen
- Removed premature markWatched calls from movies/series tabs
2025-12-10 11:07:35 +01:00
Michael 1f66fde536 Fix: TV stream auto-reconnect and stability improvements
- Added MPV reconnect options (stream-lavf-o reconnect parameters)
- Implemented auto-reconnect on stream completion for live TV
- Added watchdog timer to detect stalled streams
- Max 5 reconnect attempts with exponential backoff
2025-12-10 10:44:29 +01:00
Michael ccda497236 Fix: Movie infinite scroll + Player controls auto-hide
- Added in-memory caching for movies/series pagination in XtreamServiceMobile
- Fixed player controls appearing then instantly disappearing on touch
- Updated refresh methods to clear cache on pull-to-refresh
- Added releases/ to gitignore (APKs too large for GitHub)
2025-12-10 10:23:04 +01:00
Michael 3888a21990 UI: Clean up player controls (remove duplicate arrows, move LIVE badge) 2025-12-09 20:34:44 +01:00
Michael e6281ff912 feat: Add mobile-specific Riverpod providers for Xtream services, including live channels, movies, series, and series info. 2025-12-09 18:36:44 +01:00
Michael d0c5c4ff3a init: Initial Flutter project setup with Android and iOS platform files. 2025-12-09 08:40:50 +01:00