- 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
- Added ExcludeFocus and readOnly: !_isEditing to _TVTextField
- Prevents keyboard from opening during D-pad navigation
- Ensures keyboard only opens when strictly intended by _activateInput
- Added SystemChannels.textInput.invokeMethod('TextInput.show') to force keyboard
- Used addPostFrameCallback to ensure widget state is updated before focus request
- Added support for gameButtonA and numpadEnter keys
- Added FocusTraversalGroup for D-pad navigation
- Handled text field submission to focus next field
- Configured keyboard actions (Next/Done)
- Added SingleChildScrollView preventing focus/keyboard issues
- 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
- 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
- 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)