PrefUI // Use different pane widths per each UI language.

This commit is contained in:
ShikiSuen 2022-04-10 14:18:00 +08:00
parent e14e6377fb
commit 0794a6cfdc
4 changed files with 48 additions and 5 deletions

View File

@ -35,7 +35,18 @@ struct suiPrefPaneDictionary: View {
@State private var selEnableCNS11643: Bool = UserDefaults.standard.bool(forKey: UserDef.kCNS11643Enabled) @State private var selEnableCNS11643: Bool = UserDefaults.standard.bool(forKey: UserDef.kCNS11643Enabled)
@State private var selEnableSymbolInputSupport: Bool = UserDefaults.standard.bool( @State private var selEnableSymbolInputSupport: Bool = UserDefaults.standard.bool(
forKey: UserDef.kSymbolInputEnabled) forKey: UserDef.kSymbolInputEnabled)
private let contentWidth: Double = 560.0 private let contentWidth: Double = {
switch mgrPrefs.appleLanguages[0] {
case "ja":
return 520
default:
if mgrPrefs.appleLanguages[0].contains("zh-Han") {
return 480
} else {
return 550
}
}
}()
var body: some View { var body: some View {
Preferences.Container(contentWidth: contentWidth) { Preferences.Container(contentWidth: contentWidth) {

View File

@ -45,7 +45,18 @@ struct suiPrefPaneExperience: View {
@State private var selKeyBehaviorESCForClearingTheBuffer = UserDefaults.standard.bool( @State private var selKeyBehaviorESCForClearingTheBuffer = UserDefaults.standard.bool(
forKey: UserDef.kEscToCleanInputBuffer) forKey: UserDef.kEscToCleanInputBuffer)
@State private var selEnableSCPCTypingMode = UserDefaults.standard.bool(forKey: UserDef.kUseSCPCTypingMode) @State private var selEnableSCPCTypingMode = UserDefaults.standard.bool(forKey: UserDef.kUseSCPCTypingMode)
private let contentWidth: Double = 560.0 private let contentWidth: Double = {
switch mgrPrefs.appleLanguages[0] {
case "ja":
return 520
default:
if mgrPrefs.appleLanguages[0].contains("zh-Han") {
return 480
} else {
return 550
}
}
}()
var body: some View { var body: some View {
Preferences.Container(contentWidth: contentWidth) { Preferences.Container(contentWidth: contentWidth) {

View File

@ -46,8 +46,18 @@ struct suiPrefPaneGeneral: View {
@State private var selEnableFartSuppressor = UserDefaults.standard.bool(forKey: UserDef.kShouldNotFartInLieuOfBeep) @State private var selEnableFartSuppressor = UserDefaults.standard.bool(forKey: UserDef.kShouldNotFartInLieuOfBeep)
@State private var selEnableAutoUpdateCheck = UserDefaults.standard.bool(forKey: UserDef.kCheckUpdateAutomatically) @State private var selEnableAutoUpdateCheck = UserDefaults.standard.bool(forKey: UserDef.kCheckUpdateAutomatically)
@State private var selEnableDebugMode = UserDefaults.standard.bool(forKey: UserDef.kIsDebugModeEnabled) @State private var selEnableDebugMode = UserDefaults.standard.bool(forKey: UserDef.kIsDebugModeEnabled)
private let contentWidth: Double = {
private let contentWidth: Double = 560.0 switch mgrPrefs.appleLanguages[0] {
case "ja":
return 465
default:
if mgrPrefs.appleLanguages[0].contains("zh-Han") {
return 450
} else {
return 550
}
}
}()
var body: some View { var body: some View {
Preferences.Container(contentWidth: contentWidth) { Preferences.Container(contentWidth: contentWidth) {

View File

@ -29,7 +29,18 @@ struct suiPrefPaneKeyboard: View {
@State private var selMandarinParser = UserDefaults.standard.integer(forKey: UserDef.kMandarinParser) @State private var selMandarinParser = UserDefaults.standard.integer(forKey: UserDef.kMandarinParser)
@State private var selBasicKeyboardLayout: String = @State private var selBasicKeyboardLayout: String =
UserDefaults.standard.string(forKey: UserDef.kBasicKeyboardLayout) ?? mgrPrefs.basicKeyboardLayout UserDefaults.standard.string(forKey: UserDef.kBasicKeyboardLayout) ?? mgrPrefs.basicKeyboardLayout
private let contentWidth: Double = 560.0 private let contentWidth: Double = {
switch mgrPrefs.appleLanguages[0] {
case "ja":
return 520
default:
if mgrPrefs.appleLanguages[0].contains("zh-Han") {
return 480
} else {
return 550
}
}
}()
var body: some View { var body: some View {
Preferences.Container(contentWidth: contentWidth) { Preferences.Container(contentWidth: contentWidth) {