fix(player): hide stale next marker

close #1003
This commit is contained in:
edde746
2026-05-11 02:47:15 +02:00
parent cd31b2e2e6
commit 4b243d38b9
2 changed files with 7 additions and 5 deletions
@@ -379,13 +379,13 @@ extension _PlexVideoControlsVisibilityMethods on _PlexVideoControlsState {
/// Hide controls when navigating up from timeline (keyboard mode) /// Hide controls when navigating up from timeline (keyboard mode)
/// If skip marker button or Play Next dialog is visible, focus it instead of hiding controls /// If skip marker button or Play Next dialog is visible, focus it instead of hiding controls
void _hideControlsFromKeyboard() { void _hideControlsFromKeyboard() {
if (_currentMarker != null) { if (widget.playNextFocusNode != null) {
_skipMarkerFocusNode.requestFocus(); widget.playNextFocusNode!.requestFocus();
return; return;
} }
if (widget.playNextFocusNode != null) { if (_currentMarker != null) {
widget.playNextFocusNode!.requestFocus(); _skipMarkerFocusNode.requestFocus();
return; return;
} }
@@ -785,7 +785,9 @@ class _PlexVideoControlsState extends State<PlexVideoControls> with WindowListen
), ),
), ),
// Skip intro/credits button (auto-dismisses after 7s, then only shows with controls) // Skip intro/credits button (auto-dismisses after 7s, then only shows with controls)
if (_currentMarker != null && (!_skipButtonDismissed || _showControls)) if (_currentMarker != null &&
widget.playNextFocusNode == null &&
(!_skipButtonDismissed || _showControls))
AnimatedPositioned( AnimatedPositioned(
duration: const Duration(milliseconds: 200), duration: const Duration(milliseconds: 200),
curve: Curves.easeInOut, curve: Curves.easeInOut,