Browse Source

Hide the all playlist mode settings and migrate to default actions

merge-requests/2174/head
Nicolas Pomepuy 1 year ago
parent
commit
349ab4608d
  1. 2
      application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesUi.kt
  2. 33
      application/vlc-android/src/org/videolan/vlc/util/VersionMigration.kt

2
application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesUi.kt

@ -71,6 +71,8 @@ class PreferencesUi : BasePreferenceFragment(), SharedPreferences.OnSharedPrefer
super.onCreate(savedInstanceState)
prepareLocaleList()
setupTheme()
findPreference<Preference>("playlist_mode_video")?.isVisible = false
findPreference<Preference>("playlist_mode_audio")?.isVisible = false
}
override fun onCreatePreferences(bundle: Bundle?, s: String?) {

33
application/vlc-android/src/org/videolan/vlc/util/VersionMigration.kt

@ -36,8 +36,6 @@ import org.videolan.medialibrary.interfaces.Medialibrary
import org.videolan.medialibrary.interfaces.media.Playlist
import org.videolan.resources.AndroidDevices
import org.videolan.resources.util.getFromMl
import org.videolan.tools.PLAYLIST_MODE_AUDIO
import org.videolan.tools.PLAYLIST_MODE_VIDEO
import org.videolan.tools.KEY_APP_THEME
import org.videolan.tools.KEY_CURRENT_MAJOR_VERSION
import org.videolan.tools.KEY_CURRENT_SETTINGS_VERSION
@ -46,18 +44,22 @@ import org.videolan.tools.KEY_PLAYBACK_SPEED_AUDIO_GLOBAL_VALUE
import org.videolan.tools.KEY_PLAYBACK_SPEED_VIDEO_GLOBAL
import org.videolan.tools.KEY_PLAYBACK_SPEED_VIDEO_GLOBAL_VALUE
import org.videolan.tools.KEY_VIDEO_CONFIRM_RESUME
import org.videolan.tools.PLAYLIST_MODE_AUDIO
import org.videolan.tools.PLAYLIST_MODE_VIDEO
import org.videolan.tools.SCREENSHOT_MODE
import org.videolan.tools.Settings
import org.videolan.tools.VIDEO_HUD_TIMEOUT
import org.videolan.tools.coerceInOrDefault
import org.videolan.tools.putSingle
import org.videolan.tools.toInt
import org.videolan.vlc.gui.helpers.DefaultPlaybackAction
import org.videolan.vlc.gui.helpers.DefaultPlaybackActionMediaType
import org.videolan.vlc.gui.onboarding.ONBOARDING_DONE_KEY
import org.videolan.vlc.isVLC4
import java.io.File
import java.io.IOException
private const val CURRENT_VERSION = 14
private const val CURRENT_VERSION = 15
object VersionMigration {
@ -120,6 +122,10 @@ object VersionMigration {
migrateToVersion14(settings)
}
if (lastVersion < 15) {
migrateToVersion15(settings)
}
//Major version upgrade
if (lastMajorVersion == 3 && currentMajorVersion == 4) {
migrateToVlc4(settings)
@ -365,6 +371,27 @@ object VersionMigration {
}
}
/**
* Migrate after implementation of the default playback actions
*
*/
private fun migrateToVersion15(settings: SharedPreferences) {
Log.i(this::class.java.simpleName, "Migrate after implementation of the default playback actions")
if (settings.contains("playlist_mode_video") && settings.getBoolean("playlist_mode_video", false)) {
settings.edit(true) {
putString(DefaultPlaybackActionMediaType.VIDEO.defaultActionKey, DefaultPlaybackAction.PLAY_ALL.name)
}
}
if (settings.contains("playlist_mode_audio") && settings.getBoolean("playlist_mode_audio", false)) {
DefaultPlaybackActionMediaType.entries.filter { it.allowPlayAll }.forEach {
settings.edit(true) {
putString(DefaultPlaybackActionMediaType.TRACK.defaultActionKey, DefaultPlaybackAction.PLAY_ALL.name)
}
}
}
}
/**
* Migration to vlc 4
* This should not be destructive! Any first install will run this.

Loading…
Cancel
Save