diff --git a/lib/screens/media_detail/action_buttons.dart b/lib/screens/media_detail/action_buttons.dart index 38d339db..04c5ba24 100644 --- a/lib/screens/media_detail/action_buttons.dart +++ b/lib/screens/media_detail/action_buttons.dart @@ -98,6 +98,9 @@ extension _MediaDetailActionButtons on _MediaDetailScreenState { return Focus( skipTraversal: true, + onFocusChange: (hasFocus) { + if (isTv) _setTvDetailActionRowFocus(hasFocus); + }, onKeyEvent: _handlePlayButtonKeyEvent, child: Row( children: [ diff --git a/lib/widgets/media_card.dart b/lib/widgets/media_card.dart index 5be8ad52..4db94f24 100644 --- a/lib/widgets/media_card.dart +++ b/lib/widgets/media_card.dart @@ -59,6 +59,7 @@ class MediaCard extends StatefulWidget { final bool isOffline; // True for downloaded content without server access final bool mixedHubContext; // True when in a hub with mixed content (movies + episodes) final bool showServerName; // Show server name in list view (multi-server) + final EpisodePosterMode? episodePosterModeOverride; const MediaCard({ super.key, @@ -75,6 +76,7 @@ class MediaCard extends StatefulWidget { this.isOffline = false, this.mixedHubContext = false, this.showServerName = false, + this.episodePosterModeOverride, }); @override @@ -241,6 +243,7 @@ class MediaCardState extends State with ContextMenuTapMixin with ContextMenuTapMixin with ContextMenuTapMixin