mgrPrefs // +adjustIMKCandidateWindowLevel, etc.

This commit is contained in:
ShikiSuen 2022-08-19 14:07:08 +08:00
parent 1efbc9e56d
commit 9b85ce4500
1 changed files with 18 additions and 6 deletions

View File

@ -54,6 +54,7 @@ public enum UserDef: String, CaseIterable {
case kUseIMKCandidateWindow = "UseIMKCandidateWindow"
case kHandleDefaultCandidateFontsByLangIdentifier = "HandleDefaultCandidateFontsByLangIdentifier"
case kShouldAlwaysUseShiftKeyAccommodation = "ShouldAlwaysUseShiftKeyAccommodation"
case kAdjustIMKCandidateWindowLevel = "AdjustIMKCandidateWindowLevel"
case kCandidateTextFontName = "CandidateTextFontName"
case kCandidateKeyLabelFontName = "CandidateKeyLabelFontName"
@ -296,6 +297,9 @@ public enum mgrPrefs {
UserDefaults.standard.setDefault(
mgrPrefs.shouldAlwaysUseShiftKeyAccommodation, forKey: UserDef.kShouldAlwaysUseShiftKeyAccommodation.rawValue
)
UserDefaults.standard.setDefault(
mgrPrefs.adjustIMKCandidateWindowLevel, forKey: UserDef.kAdjustIMKCandidateWindowLevel.rawValue
)
// -----
@ -424,6 +428,9 @@ public enum mgrPrefs {
@UserDefault(key: UserDef.kShouldAlwaysUseShiftKeyAccommodation.rawValue, defaultValue: false)
static var shouldAlwaysUseShiftKeyAccommodation: Bool
@UserDefault(key: UserDef.kAdjustIMKCandidateWindowLevel.rawValue, defaultValue: false)
static var adjustIMKCandidateWindowLevel: Bool
// MARK: - Settings (Tier 3)
static var minCandidateLength: Int {
@ -682,13 +689,18 @@ public enum mgrPrefs {
extension mgrPrefs {
static func fixOddPreferences() {
// macOS 10.11 IMK
if #unavailable(macOS 10.14) { mgrPrefs.useIMKCandidateWindow = false }
// macOS 10.11 IMK macOS 10.13 IMK
// IMK macOS 10.09
// macOS 10.14 IMKCandidates
if #unavailable(macOS 10.14) {
mgrPrefs.useIMKCandidateWindow = false
mgrPrefs.adjustIMKCandidateWindowLevel = false
}
if #unavailable(macOS 10.15) {
handleDefaultCandidateFontsByLangIdentifier = false
shouldAlwaysUseShiftKeyAccommodation = false
disableShiftTogglingAlphanumericalMode = false
togglingAlphanumericalModeWithLShift = false
mgrPrefs.handleDefaultCandidateFontsByLangIdentifier = false
mgrPrefs.shouldAlwaysUseShiftKeyAccommodation = false
mgrPrefs.disableShiftTogglingAlphanumericalMode = false
mgrPrefs.togglingAlphanumericalModeWithLShift = false
}
}
}