From a01181e8e049e200d63d11f0b37b28508c202503 Mon Sep 17 00:00:00 2001 From: Terry Hanoman Date: Fri, 27 Jan 2023 22:33:59 -0500 Subject: [PATCH 1/5] Use user setting for seeking on Android TV --- .../cloudstream3/ui/player/FullScreenPlayer.kt | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt index c79cdd763b..2f03e261a0 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt @@ -1050,20 +1050,14 @@ open class FullScreenPlayer : AbstractPlayerFragment() { } } KeyEvent.KEYCODE_DPAD_LEFT -> { - if (!isShowing && !isLocked) { - player.seekTime(-10000L) - return true - } else if (player_pause_play?.isFocused == true) { - player.seekTime(-30000L) + if ((!isShowing && !isLocked) || player_pause_play?.isFocused == true) { + player.seekTime(fastForwardTime) return true } } KeyEvent.KEYCODE_DPAD_RIGHT -> { - if (!isShowing && !isLocked) { - player.seekTime(10000L) - return true - } else if (player_pause_play?.isFocused == true) { - player.seekTime(30000L) + if ((!isShowing && !isLocked) || player_pause_play?.isFocused == true) { + player.seekTime(fastForwardTime) return true } } From f4d62a6bb0bdf3550dd0b3beafe27f8e5c187cd5 Mon Sep 17 00:00:00 2001 From: Terry Hanoman Date: Sat, 28 Jan 2023 11:47:15 -0500 Subject: [PATCH 2/5] Fixed left dpad seeking --- .../com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt index 2f03e261a0..9aab66539b 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt @@ -1051,7 +1051,7 @@ open class FullScreenPlayer : AbstractPlayerFragment() { } KeyEvent.KEYCODE_DPAD_LEFT -> { if ((!isShowing && !isLocked) || player_pause_play?.isFocused == true) { - player.seekTime(fastForwardTime) + player.seekTime(-fastForwardTime) return true } } From 7d5cb541c504ecdcc2d0afb7027b39042a8f1167 Mon Sep 17 00:00:00 2001 From: Terry Hanoman Date: Tue, 31 Jan 2023 22:29:36 -0500 Subject: [PATCH 3/5] Added a Android TV section for seeking --- .../ui/player/FullScreenPlayer.kt | 30 ++++++++++++++----- app/src/main/res/values-es/strings.xml | 4 +++ app/src/main/res/values/strings.xml | 7 +++++ app/src/main/res/xml/settings_player.xml | 27 +++++++++++++++++ 4 files changed, 60 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt index 9aab66539b..f29b692107 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt @@ -109,6 +109,8 @@ open class FullScreenPlayer : AbstractPlayerFragment() { protected var currentPrefQuality = Qualities.P2160.value // preferred maximum quality, used for ppl w bad internet or on cell protected var fastForwardTime = 10000L + protected var androidTVInterfaceOffSeekTime = 10000L; + protected var androidTVInterfaceOnSeekTime = 30000L; protected var swipeHorizontalEnabled = false protected var swipeVerticalEnabled = false protected var playBackSpeedEnabled = false @@ -1050,15 +1052,21 @@ open class FullScreenPlayer : AbstractPlayerFragment() { } } KeyEvent.KEYCODE_DPAD_LEFT -> { - if ((!isShowing && !isLocked) || player_pause_play?.isFocused == true) { - player.seekTime(-fastForwardTime) - return true + if (!isShowing && !isLocked) { + player.seekTime(-androidTVInterfaceOffSeekTime); + return true; + } else if (player_pause_play?.isFocused == true) { + player.seekTime(-androidTVInterfaceOnSeekTime); + return true; } } KeyEvent.KEYCODE_DPAD_RIGHT -> { - if ((!isShowing && !isLocked) || player_pause_play?.isFocused == true) { - player.seekTime(fastForwardTime) - return true + if (!isShowing && !isLocked) { + player.seekTime(androidTVInterfaceOffSeekTime); + return true; + } else if (player_pause_play?.isFocused == true) { + player.seekTime(androidTVInterfaceOnSeekTime); + return true; } } } @@ -1066,8 +1074,7 @@ open class FullScreenPlayer : AbstractPlayerFragment() { } when (keyCode) { - // don't allow dpad move when hidden - + // don't allow dpad move when hidde KeyEvent.KEYCODE_DPAD_DOWN, KeyEvent.KEYCODE_DPAD_UP, KeyEvent.KEYCODE_DPAD_DOWN_LEFT, @@ -1201,6 +1208,13 @@ open class FullScreenPlayer : AbstractPlayerFragment() { settingsManager.getInt(ctx.getString(R.string.double_tap_seek_time_key), 10) .toLong() * 1000L + androidTVInterfaceOffSeekTime = + settingsManager.getInt(ctx.getString(R.string.android_tv_interface_off_seek_key), 10) + .toLong() * 1000L + androidTVInterfaceOnSeekTime = + settingsManager.getInt(ctx.getString(R.string.android_tv_interface_on_seek_key), 10) + .toLong() * 1000L + navigationBarHeight = ctx.getNavigationBarHeight() statusBarHeight = ctx.getStatusBarHeight() diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 08ae5bf18f..d12ae5b038 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -489,4 +489,8 @@ Actualización iniciada Complemento descargado Quitar de visto + Jugadora mostrada - buscar cantidad + Jugadora oculta - buscar cantidad + Android TV + La cantidad de búsqueda utilizada cuando la jugadora es visible. \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 6c10d865da..301b8313f6 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -32,6 +32,8 @@ double_tap_enabled_key double_tap_pause_enabled_key double_tap_seek_time_key2 + android_tv_interface_off_seek_key + android_tv_interface_on_seek_key swipe_vertical_enabled_key autoplay_next_key display_sub_key @@ -362,6 +364,10 @@ Video buffer length Video cache on disk Clear video and image cache + Player Shown - Seek Amount + The seek amount used when the player is visible + Player Hidden - Seek Amount + The seek amount used when the player is hidden Causes crashes if set too high on devices with low memory, such as Android TV. Causes problems if set too high on devices with low storage space, such as Android TV. DNS over HTTPS @@ -399,6 +405,7 @@ Extensions Actions Cache + Android TV Gestures Player features Subtitles diff --git a/app/src/main/res/xml/settings_player.xml b/app/src/main/res/xml/settings_player.xml index d9b7e24782..0e5bd84ffa 100644 --- a/app/src/main/res/xml/settings_player.xml +++ b/app/src/main/res/xml/settings_player.xml @@ -149,4 +149,31 @@ android:key="@string/video_buffer_clear_key" android:title="@string/video_buffer_clear_settings" /> + + + + \ No newline at end of file From 52e7ade15ca77a2179fcb5cbca8294d813e0a54d Mon Sep 17 00:00:00 2001 From: Terry Hanoman Date: Tue, 31 Jan 2023 22:57:03 -0500 Subject: [PATCH 4/5] Fixed text --- .../com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt index 305da69c2a..d43ebb004d 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt @@ -1074,7 +1074,8 @@ open class FullScreenPlayer : AbstractPlayerFragment() { } when (keyCode) { - // don't allow dpad move when hidde + // don't allow dpad move when hidden + KeyEvent.KEYCODE_DPAD_DOWN, KeyEvent.KEYCODE_DPAD_UP, KeyEvent.KEYCODE_DPAD_DOWN_LEFT, From 929c8db5b92f847ceae8d172a0ddfc830fccc9e6 Mon Sep 17 00:00:00 2001 From: Terry Hanoman Date: Thu, 2 Feb 2023 10:30:01 -0500 Subject: [PATCH 5/5] Removed semi-colons --- .../cloudstream3/ui/player/FullScreenPlayer.kt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt index d43ebb004d..8d28fd9d80 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/player/FullScreenPlayer.kt @@ -1053,20 +1053,20 @@ open class FullScreenPlayer : AbstractPlayerFragment() { } KeyEvent.KEYCODE_DPAD_LEFT -> { if (!isShowing && !isLocked) { - player.seekTime(-androidTVInterfaceOffSeekTime); - return true; + player.seekTime(-androidTVInterfaceOffSeekTime) + return true } else if (player_pause_play?.isFocused == true) { - player.seekTime(-androidTVInterfaceOnSeekTime); - return true; + player.seekTime(-androidTVInterfaceOnSeekTime) + return true } } KeyEvent.KEYCODE_DPAD_RIGHT -> { if (!isShowing && !isLocked) { - player.seekTime(androidTVInterfaceOffSeekTime); - return true; + player.seekTime(androidTVInterfaceOffSeekTime) + return true } else if (player_pause_play?.isFocused == true) { - player.seekTime(androidTVInterfaceOnSeekTime); - return true; + player.seekTime(androidTVInterfaceOnSeekTime) + return true } } }