From a81cf3b18f3608384dfe4b110dd7a791e5e312a9 Mon Sep 17 00:00:00 2001 From: edde746 <86283021+edde746@users.noreply.github.com> Date: Sat, 1 Nov 2025 08:04:54 +0100 Subject: [PATCH] fix: not showing selected tracks properly --- lib/widgets/plex_video_controls.dart | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/lib/widgets/plex_video_controls.dart b/lib/widgets/plex_video_controls.dart index b709d664..f7b1fcd7 100644 --- a/lib/widgets/plex_video_controls.dart +++ b/lib/widgets/plex_video_controls.dart @@ -1096,7 +1096,9 @@ class _PlexVideoControlsState extends State stream: widget.player.stream.track, initialData: widget.player.state.track, builder: (context, selectedSnapshot) { - final selectedTrack = selectedSnapshot.data?.audio; + // Use snapshot data or fall back to current state + final currentTrack = selectedSnapshot.data ?? widget.player.state.track; + final selectedTrack = currentTrack.audio; final selectedId = selectedTrack?.id; return ListView.builder( @@ -1218,7 +1220,9 @@ class _PlexVideoControlsState extends State stream: widget.player.stream.track, initialData: widget.player.state.track, builder: (context, selectedSnapshot) { - final selectedTrack = selectedSnapshot.data?.subtitle; + // Use snapshot data or fall back to current state + final currentTrack = selectedSnapshot.data ?? widget.player.state.track; + final selectedTrack = currentTrack.subtitle; final selectedId = selectedTrack?.id; final isOffSelected = selectedId == 'no'; @@ -1229,9 +1233,13 @@ class _PlexVideoControlsState extends State // First item is "Off" if (index == 0) { return ListTile( - title: const Text( + title: Text( 'Off', - style: TextStyle(color: Colors.white), + style: TextStyle( + color: isOffSelected + ? Colors.blue + : Colors.white, + ), ), trailing: isOffSelected ? const Icon(