Add setting for controls center buttons

This commit is contained in:
Arkadiusz Fal
2022-07-11 18:10:51 +02:00
parent 06d71a9bf0
commit b6c65f2325
4 changed files with 115 additions and 55 deletions

View File

@@ -23,6 +23,9 @@ struct PlayerSettings: View {
#endif
@Default(.enableReturnYouTubeDislike) private var enableReturnYouTubeDislike
@Default(.systemControlsCommands) private var systemControlsCommands
@EnvironmentObject<PlayerModel> private var player
#if os(iOS)
private var idiom: UIUserInterfaceIdiom {
@@ -60,6 +63,7 @@ struct PlayerSettings: View {
pauseOnEnteringBackgroundToogle
#endif
closeLastItemOnPlaybackEndToggle
systemControlsCommandsPicker
}
Section(header: SettingsHeader(text: "Interface")) {
@@ -113,6 +117,22 @@ struct PlayerSettings: View {
#endif
}
private var systemControlsCommandsPicker: some View {
Picker("System controls buttons", selection: $systemControlsCommands) {
Text("10 seconds forwards/backwards").tag(SystemControlsCommands.seek)
Text("Restart/Play next").tag(SystemControlsCommands.restartAndAdvanceToNext)
}
.onChange(of: systemControlsCommands) { _ in
player.updateRemoteCommandCenter()
}
.labelsHidden()
#if os(iOS)
.pickerStyle(.automatic)
#elseif os(tvOS)
.pickerStyle(.inline)
#endif
}
private var qualityPicker: some View {
Picker("Quality", selection: $quality) {
ForEach(ResolutionSetting.allCases, id: \.self) { resolution in