[Android] Fix the default sleep timer settings not opening

Nicolas Pomepuy git at videolan.org
Tue Apr 1 13:43:32 UTC 2025


vlc-android | branch: master | Nicolas Pomepuy <nicolas at videolabs.io> | Tue Apr  1 07:56:14 2025 +0200| [8b83960d85ac6ee754d019cbc87af14324d8872b] | committer: Duncan McNamara

Fix the default sleep timer settings not opening

> https://code.videolan.org/videolan/vlc-android/commit/8b83960d85ac6ee754d019cbc87af14324d8872b
---

 .../src/org/videolan/vlc/gui/dialogs/SleepTimerDialog.kt    | 13 +++++--------
 .../src/org/videolan/vlc/gui/preferences/PreferencesUi.kt   |  3 +--
 2 files changed, 6 insertions(+), 10 deletions(-)

diff --git a/application/vlc-android/src/org/videolan/vlc/gui/dialogs/SleepTimerDialog.kt b/application/vlc-android/src/org/videolan/vlc/gui/dialogs/SleepTimerDialog.kt
index acb43e787a..e0fa9f6739 100644
--- a/application/vlc-android/src/org/videolan/vlc/gui/dialogs/SleepTimerDialog.kt
+++ b/application/vlc-android/src/org/videolan/vlc/gui/dialogs/SleepTimerDialog.kt
@@ -22,19 +22,12 @@
 
 package org.videolan.vlc.gui.dialogs
 
-import android.app.Activity
-import android.content.Context
 import android.content.SharedPreferences
 import android.os.Bundle
-import android.view.KeyEvent
 import android.view.LayoutInflater
 import android.view.View
 import android.view.ViewGroup
-import android.view.inputmethod.BaseInputConnection
 import androidx.core.content.edit
-import kotlinx.coroutines.MainScope
-import kotlinx.coroutines.flow.launchIn
-import kotlinx.coroutines.flow.onEach
 import org.videolan.tools.SLEEP_TIMER_DEFAULT_INTERVAL
 import org.videolan.tools.SLEEP_TIMER_DEFAULT_RESET_INTERACTION
 import org.videolan.tools.SLEEP_TIMER_DEFAULT_WAIT
@@ -43,7 +36,6 @@ import org.videolan.tools.SLEEP_TIMER_WAIT
 import org.videolan.tools.Settings
 import org.videolan.tools.putSingle
 import org.videolan.vlc.R
-import org.videolan.vlc.gui.video.VideoPlayerActivity.Companion.videoRemoteFlow
 import org.videolan.vlc.viewmodels.PlaylistModel
 import java.util.Calendar
 
@@ -56,6 +48,11 @@ class SleepTimerDialog : PickTimeFragment() {
     private val playlistModel by lazy { PlaylistModel.get(this) }
 
     override fun showTimeOnly() = false
+    override val dismissOnServiceEnded: Boolean
+        get() = !defaultSleepTimer
+
+    override val dismissOnPlaybackEnded: Boolean
+        get() = !defaultSleepTimer
 
 
     override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
diff --git a/application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesUi.kt b/application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesUi.kt
index 8bc78e2c00..d3f216d813 100644
--- a/application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesUi.kt
+++ b/application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesUi.kt
@@ -28,7 +28,6 @@ import android.content.SharedPreferences
 import android.os.Bundle
 import android.text.InputType
 import androidx.appcompat.app.AppCompatDelegate
-import androidx.fragment.app.FragmentActivity
 import androidx.preference.EditTextPreference
 import androidx.preference.ListPreference
 import androidx.preference.Preference
@@ -142,7 +141,7 @@ class PreferencesUi : BasePreferenceFragment(), SharedPreferences.OnSharedPrefer
             "default_sleep_timer" -> {
                 val newFragment = SleepTimerDialog.newInstance(true)
                 newFragment.onDismissListener  = DialogInterface.OnDismissListener { manageSleepTimerSummary() }
-                newFragment.show((activity as FragmentActivity).supportFragmentManager, "time")
+                newFragment.show(requireActivity().supportFragmentManager, "time")
             }
             "media_seen" -> requireActivity().setResult(RESULT_UPDATE_SEEN_MEDIA)
             KEY_ARTISTS_SHOW_ALL -> (activity as PreferencesActivity).updateArtists()



More information about the Android mailing list