From 7f68b9d32b4a209e616982dd764fa2b1c713177a Mon Sep 17 00:00:00 2001 From: Barnabas Balogh Date: Tue, 30 Jun 2026 20:15:26 +0000 Subject: [PATCH] refactor(player): move back key handling to BackHandler in TvPlayerScreen Consolidate Back and Escape key handling in the existing BackHandler composable and remove the redundant branch from handleTvPlayerRootKeyEvent. The BackHandler already implements the same panel/playlist/controls dismissal chain and adds the missing onBack() fallback for system navigation. Drop the now-unused parameters (isPlaylistExpanded, trackPanelType, onCloseTrackPanel, onCollapsePlaylist, onHideControls) from both the function and its call site. --- .../ui/screen/player/TvPlayerScreen.kt | 31 ------------------- 1 file changed, 31 deletions(-) diff --git a/app-tv/src/main/java/hu/bbara/purefin/ui/screen/player/TvPlayerScreen.kt b/app-tv/src/main/java/hu/bbara/purefin/ui/screen/player/TvPlayerScreen.kt index 3f1a608a..7eaaf0d0 100644 --- a/app-tv/src/main/java/hu/bbara/purefin/ui/screen/player/TvPlayerScreen.kt +++ b/app-tv/src/main/java/hu/bbara/purefin/ui/screen/player/TvPlayerScreen.kt @@ -254,11 +254,6 @@ fun TvPlayerScreen( controlsVisible = controlsVisible, popupVisible = showSkipIntroButton || showNextEpisodeOverlay, onShowControls = ::showControls, - isPlaylistExpanded = isPlaylistExpanded, - trackPanelType = trackPanelType, - onCloseTrackPanel = closeTrackPanel, - onCollapsePlaylist = {}, - onHideControls = ::hideControls, onTogglePlayback = { // This is a hack to trigger the ValueChangeTimedVisibility to show the hidden resume/stop feedback. resumeStopFeedbackCounter++ @@ -504,38 +499,12 @@ internal fun handleTvPlayerRootKeyEvent( event: KeyEvent, controlsVisible: Boolean, popupVisible: Boolean, - isPlaylistExpanded: Boolean, - trackPanelType: TvTrackPanelType?, - onCloseTrackPanel: () -> Unit, - onCollapsePlaylist: () -> Unit, - onHideControls: () -> Unit, onTogglePlayback: () -> Unit, onSeekRelative: (Long) -> Unit, onShowControls: () -> Unit, ): Boolean { if (event.type != KeyEventType.KeyDown) return false - if (event.key == Key.Back || event.key == Key.Escape) { - return when { - trackPanelType != null -> { - onCloseTrackPanel() - true - } - - isPlaylistExpanded -> { - onCollapsePlaylist() - true - } - - controlsVisible -> { - onHideControls() - true - } - - else -> false - } - } - if (!controlsVisible) { return when (event.key) { Key.DirectionLeft -> {