Pref // Adding preferences for handling alphanumerical input mode.

This commit is contained in:
ShikiSuen 2022-03-01 17:35:32 +08:00
parent f637b200a1
commit afe8fa23eb
1 changed files with 17 additions and 0 deletions

View File

@ -20,6 +20,7 @@ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR TH
import Cocoa
private let kIsDebugModeEnabled = "_DebugMode"
private let kIsAlphanumericalModeEnabled = "IsAlphanumericalModeEnabled"
private let kCheckUpdateAutomatically = "CheckUpdateAutomatically"
private let kKeyboardLayoutPreference = "KeyboardLayout"
private let kBasisKeyboardLayoutPreference = "BasisKeyboardLayout"
@ -214,6 +215,7 @@ struct ComposingBufferSize {
@objc public class Preferences: NSObject {
static var allKeys:[String] {
[kIsDebugModeEnabled,
kIsAlphanumericalModeEnabled,
kKeyboardLayoutPreference,
kBasisKeyboardLayoutPreference,
kFunctionKeyKeyboardLayoutPreference,
@ -253,6 +255,11 @@ struct ComposingBufferSize {
UserDefaults.standard.set(Preferences.isDebugModeEnabled, forKey: kIsDebugModeEnabled)
}
//
if UserDefaults.standard.object(forKey: kIsAlphanumericalModeEnabled) == nil {
UserDefaults.standard.set(Preferences.isAlphanumericalModeEnabled, forKey: kIsAlphanumericalModeEnabled)
}
//
if UserDefaults.standard.object(forKey: kCheckUpdateAutomatically) == nil {
UserDefaults.standard.set(false, forKey: kCheckUpdateAutomatically)
@ -339,6 +346,16 @@ struct ComposingBufferSize {
@UserDefault(key: kIsDebugModeEnabled, defaultValue: false)
@objc static var isDebugModeEnabled: Bool
@UserDefault(key: kIsAlphanumericalModeEnabled, defaultValue: false)
@objc static var isAlphanumericalModeEnabled: Bool
@objc @discardableResult static func toggleAlphanumericalModeEnabled() -> Bool {
isAlphanumericalModeEnabled = !isAlphanumericalModeEnabled
UserDefaults.standard.set(isAlphanumericalModeEnabled, forKey: kIsAlphanumericalModeEnabled)
NotifierController.notify(message: String(format: "%@%@%@", NSLocalizedString("Alphanumerical Input Mode", comment: ""), "\n", isAlphanumericalModeEnabled ? NSLocalizedString("NotificationSwitchON", comment: "") : NSLocalizedString("NotificationSwitchOFF", comment: "")))
return isAlphanumericalModeEnabled
}
@UserDefault(key: kAppleLanguagesPreferences, defaultValue: [])
@objc static var appleLanguages: Array<String>