let the user select caption size

This commit is contained in:
Toni Förster
2024-05-20 15:34:31 +02:00
parent 4fa5a15ad4
commit 96df7fdec5
3 changed files with 26 additions and 0 deletions

View File

@@ -41,6 +41,7 @@ struct PlayerSettings: View {
@Default(.captionsAutoShow) private var captionsAutoShow
@Default(.captionsDefaultLanguageCode) private var captionsDefaultLanguageCode
@Default(.captionsFallbackLanguageCode) private var captionsFallbackLanguageCode
@Default(.captionsFontScaleSize) private var captionsFontScaleSize
@ObservedObject private var accounts = AccountsModel.shared
@@ -106,7 +107,12 @@ struct PlayerSettings: View {
#endif
Section(header: SettingsHeader(text: "Captions".localized())) {
#if os(tvOS)
Text("Size").font(.subheadline)
#endif
captionsFontScaleSizePicker
showCaptionsAutoShowToggle
#if !os(tvOS)
captionDefaultLanguagePicker
captionFallbackLanguagePicker
@@ -331,6 +337,20 @@ struct PlayerSettings: View {
Toggle("Always show captions", isOn: $captionsAutoShow)
}
private var captionsFontScaleSizePicker: some View {
Picker("Size", selection: $captionsFontScaleSize) {
Text("Small").tag(Float(0.5))
Text("Medium").tag(Float(1.0))
Text("Large").tag(Float(2.0))
}
.onChange(of: captionsFontScaleSize) { _ in
PlayerModel.shared.mpvBackend.client.setSubFontSize()
}
#if os(macOS)
.labelsHidden()
#endif
}
#if !os(tvOS)
private var captionDefaultLanguagePicker: some View {
Picker("Default language", selection: $captionsDefaultLanguageCode) {