SessionCtl // Revise the handling of Shift Alphanumerical toggle.

This commit is contained in:
ShikiSuen 2023-01-24 17:26:21 +08:00
parent 03c6d0e40a
commit bb2533a2aa
1 changed files with 15 additions and 10 deletions

View File

@ -60,6 +60,15 @@ extension SessionCtl {
} }
} }
func toggleAlphanumericalMode() {
let status = "NotificationSwitchASCII".localized
Notifier.notify(
message: isASCIIMode.toggled()
? "Alphanumerical Input Mode".localized + "\n" + status
: "Chinese Input Mode".localized + "\n" + status
)
}
// Shift macOS 10.15 macOS // Shift macOS 10.15 macOS
let shouldUseShiftToggleHandle: Bool = { let shouldUseShiftToggleHandle: Bool = {
switch PrefMgr.shared.shiftKeyAccommodationBehavior { switch PrefMgr.shared.shiftKeyAccommodationBehavior {
@ -73,18 +82,14 @@ extension SessionCtl {
/// event event var Shift /// event event var Shift
if #available(macOS 10.15, *) { if #available(macOS 10.15, *) {
if Self.theShiftKeyDetector.check(event), !PrefMgr.shared.disableShiftTogglingAlphanumericalMode { if Self.theShiftKeyDetector.check(event), !PrefMgr.shared.disableShiftTogglingAlphanumericalMode {
if !shouldUseShiftToggleHandle || (!rencentKeyHandledByInputHandlerEtc && shouldUseShiftToggleHandle) {
let status = NSLocalizedString("NotificationSwitchASCII", comment: "")
Notifier.notify(
message: isASCIIMode.toggled()
? NSLocalizedString("Alphanumerical Input Mode", comment: "") + "\n" + status
: NSLocalizedString("Chinese Input Mode", comment: "") + "\n" + status
)
}
if shouldUseShiftToggleHandle { if shouldUseShiftToggleHandle {
rencentKeyHandledByInputHandlerEtc = false if !rencentKeyHandledByInputHandlerEtc {
toggleAlphanumericalMode()
} else {
rencentKeyHandledByInputHandlerEtc = false
}
} }
return false return true
} }
} }