NSEvent // Add some bools for identifying JIS keycodes.

This commit is contained in:
ShikiSuen 2023-01-24 13:01:19 +08:00
parent c7cc8cdbbc
commit 03c6d0e40a
2 changed files with 8 additions and 0 deletions

View File

@ -122,6 +122,8 @@ extension NSEvent {
}
/// flags KeyCode
public var isJISAlphanumericalKey: Bool { KeyCode(rawValue: keyCode) == KeyCode.kJISAlphanumericalKey }
public var isJISKanaSwappingKey: Bool { KeyCode(rawValue: keyCode) == KeyCode.kJISKanaSwappingKey }
public var isNumericPadKey: Bool { arrNumpadKeyCodes.contains(keyCode) }
public var isMainAreaNumKey: Bool { arrMainAreaNumKey.contains(keyCode) }
public var isShiftHold: Bool { modifierFlags.contains([.shift]) }
@ -216,14 +218,18 @@ public enum KeyCode: UInt16 {
case kF18 = 79
case kF19 = 80
case kF20 = 90
case kYen = 93
case kSymbolMenuPhysicalKeyJIS = 94 // vChewing Specific (JIS)
case kJISNumPadComma = 95
case kF5 = 96
case kF6 = 97
case kF7 = 98
case kF3 = 99
case kF8 = 100
case kF9 = 101
case kJISAlphanumericalKey = 102
case kF11 = 103
case kJISKanaSwappingKey = 104
case kF13 = 105 // PrtSc
case kF16 = 106
case kF14 = 107

View File

@ -26,6 +26,8 @@ public protocol InputSignalProtocol {
var isInvalid: Bool { get }
var isKeyCodeBlacklisted: Bool { get }
var isReservedKey: Bool { get }
var isJISAlphanumericalKey: Bool { get }
var isJISKanaSwappingKey: Bool { get }
var isNumericPadKey: Bool { get }
var isMainAreaNumKey: Bool { get }
var isShiftHold: Bool { get }