mirror of
https://github.com/JustinZeus/Wholphin.git
synced 2026-07-08 15:50:16 +02:00
Add preference for theme music
This commit is contained in:
parent
f8efffa3c2
commit
6f18f780eb
4 changed files with 30 additions and 0 deletions
|
|
@ -175,6 +175,18 @@ sealed interface AppPreference<T> {
|
|||
summaryOff = R.string.disabled,
|
||||
)
|
||||
|
||||
val PlayThemeMusic =
|
||||
AppSwitchPreference(
|
||||
title = R.string.play_theme_music,
|
||||
defaultValue = true,
|
||||
getter = { it.interfacePreferences.playThemeSongs },
|
||||
setter = { prefs, value ->
|
||||
prefs.updateInterfacePreferences { playThemeSongs = value }
|
||||
},
|
||||
summaryOn = R.string.enabled,
|
||||
summaryOff = R.string.disabled,
|
||||
)
|
||||
|
||||
// val PlaybackDebugInfo =
|
||||
// AppSwitchPreference(
|
||||
// title = R.string.playback_debug_info,
|
||||
|
|
@ -232,6 +244,7 @@ val basicPreferences =
|
|||
AppPreference.SeekBarSteps,
|
||||
AppPreference.HomePageItems,
|
||||
AppPreference.RewatchNextUp,
|
||||
AppPreference.PlayThemeMusic,
|
||||
),
|
||||
),
|
||||
)
|
||||
|
|
|
|||
|
|
@ -33,6 +33,12 @@ class AppPreferencesSerializer
|
|||
maxItemsPerRow = AppPreference.HomePageItems.defaultValue.toInt()
|
||||
enableRewatchingNextUp = AppPreference.RewatchNextUp.defaultValue
|
||||
}.build()
|
||||
interfacePreferences =
|
||||
InterfacePreferences
|
||||
.newBuilder()
|
||||
.apply {
|
||||
playThemeSongs = AppPreference.PlayThemeMusic.defaultValue
|
||||
}.build()
|
||||
}.build()
|
||||
|
||||
override suspend fun readFrom(input: InputStream): AppPreferences {
|
||||
|
|
@ -60,3 +66,8 @@ inline fun AppPreferences.updateHomePagePreferences(block: HomePagePreferences.B
|
|||
update {
|
||||
homePagePreferences = homePagePreferences.toBuilder().apply(block).build()
|
||||
}
|
||||
|
||||
inline fun AppPreferences.updateInterfacePreferences(block: InterfacePreferences.Builder.() -> Unit): AppPreferences =
|
||||
update {
|
||||
interfacePreferences = interfacePreferences.toBuilder().apply(block).build()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,6 +15,10 @@ message HomePagePreferences{
|
|||
bool enable_rewatching_next_up = 2;
|
||||
}
|
||||
|
||||
message InterfacePreferences {
|
||||
bool play_theme_songs = 1;
|
||||
}
|
||||
|
||||
message AppPreferences {
|
||||
// The currently signed in server and user IDs, mostly for restoring a session
|
||||
string current_server_id = 1;
|
||||
|
|
@ -22,4 +26,5 @@ message AppPreferences {
|
|||
|
||||
PlaybackPreferences playback_preferences = 3;
|
||||
HomePagePreferences home_page_preferences = 4;
|
||||
InterfacePreferences interface_preferences = 5;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -42,4 +42,5 @@
|
|||
<string name="video">Video</string>
|
||||
<string name="audio">Audio</string>
|
||||
<string name="genres">Genres</string>
|
||||
<string name="play_theme_music">Play theme music</string>
|
||||
</resources>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue