Move skip segments settings to their own page (#1306)

## Description
Moves the five skip segment settings to their own page. So there's now a
single "Skip behavior" that you click to bring up the settings for the
five. I doubt many people change these frequently, so moving them to a
new page de-clutters the settings page.

### Related issues
N/A

### Testing
Emulator

## Screenshots

### Advanced settings
<img width="1280" height="720" alt="single_setting Large"
src="https://github.com/user-attachments/assets/673555d5-109c-4c43-9073-f51572bb949d"
/>

### Skip segment specific settings
<img width="1280" height="720" alt="skip_settings Large"
src="https://github.com/user-attachments/assets/dae9d0bd-7340-4731-b561-b7b4e74d9d4f"
/>

## AI or LLM usage
None
This commit is contained in:
Damontecres 2026-04-24 14:50:23 -04:00 • committed by GitHub
parent ab5c884072
commit 8dd396b777
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 30 additions and 37 deletions

View file

@ -36,6 +36,7 @@ enum class PreferenceScreenOption {
EXO_PLAYER,
MPV,
SCREENSAVER,
SKIP_SEGMENTS,
;
companion object {

View file

@ -53,6 +53,7 @@ import com.github.damontecres.wholphin.preferences.ExoPlayerPreferences
import com.github.damontecres.wholphin.preferences.MpvPreferences
import com.github.damontecres.wholphin.preferences.PlayerBackend
import com.github.damontecres.wholphin.preferences.ScreensaverPreference
import com.github.damontecres.wholphin.preferences.SkipSegmentPreferences
import com.github.damontecres.wholphin.preferences.advancedPreferences
import com.github.damontecres.wholphin.preferences.basicPreferences
import com.github.damontecres.wholphin.preferences.screensaverPreferences
@ -142,6 +143,7 @@ fun PreferencesContent(
PreferenceScreenOption.EXO_PLAYER -> ExoPlayerPreferences
PreferenceScreenOption.MPV -> MpvPreferences
PreferenceScreenOption.SCREENSAVER -> screensaverPreferences
PreferenceScreenOption.SKIP_SEGMENTS -> SkipSegmentPreferences
}
val screenTitle =
when (preferenceScreenOption) {
@ -150,6 +152,7 @@ fun PreferencesContent(
PreferenceScreenOption.EXO_PLAYER -> R.string.exoplayer_options
PreferenceScreenOption.MPV -> R.string.mpv_options
PreferenceScreenOption.SCREENSAVER -> R.string.screensaver_settings
PreferenceScreenOption.SKIP_SEGMENTS -> R.string.skip_behavior
}
var visible by remember { mutableStateOf(false) }
@ -707,6 +710,7 @@ fun PreferencesPage(
PreferenceScreenOption.EXO_PLAYER,
PreferenceScreenOption.MPV,
PreferenceScreenOption.SCREENSAVER,
PreferenceScreenOption.SKIP_SEGMENTS,
-> {
PreferencesContent(
initialPreferences,