ctlIME // Guard-let the event parameter in handle().

This commit is contained in:
ShikiSuen 2022-08-24 10:54:16 +08:00
parent 56581c0f8b
commit 50a5a83dbf
4 changed files with 8 additions and 5 deletions

View File

@ -15,7 +15,7 @@ extension ctlInputMethod {
/// handle()
/// - Parameter event: IMK
/// - Returns: `true` IMK`false`
func commonEventHandler(_ event: NSEvent!) -> Bool {
func commonEventHandler(_ event: NSEvent) -> Bool {
// Shift macOS 10.15 macOS
let shouldUseHandle =
(IME.arrClientShiftHandlingExceptionList.contains(clientBundleIdentifier)

View File

@ -197,18 +197,21 @@ class ctlInputMethod: IMKInputController {
/// NSEvent
/// - Parameters:
/// - event:
/// - event: nil
/// - sender: 使
/// - Returns: `true` IMK`false`
@objc(handleEvent:client:) override func handle(_ event: NSEvent!, client sender: Any!) -> Bool {
_ = sender //
// NSEvent nilApple InputMethodKit
guard let event = event else { return false }
// IMK IMK
// interpretKeyEvents()
// - super.interpretKeyEvents()
// - delegate ctlInputMethod KeyHandler
if let ctlCandidateCurrent = ctlInputMethod.ctlCandidateCurrent as? ctlCandidateIMK, ctlCandidateCurrent.visible {
let event: NSEvent! = ctlCandidateIMK.replaceNumPadKeyCodes(target: event) ?? event
let event: NSEvent = ctlCandidateIMK.replaceNumPadKeyCodes(target: event) ?? event
let input = InputSignal(event: event)
// Shift+Enter delegate keyHandler
// Shift Flags

View File

@ -62,7 +62,7 @@ extension ctlInputMethod: ctlCandidateDelegate {
/// IMK commonEventHandler()
/// - Parameter event: IMK
/// - Returns: `true` IMK`false`
@discardableResult func sharedEventHandler(_ event: NSEvent!) -> Bool {
@discardableResult func sharedEventHandler(_ event: NSEvent) -> Bool {
commonEventHandler(event)
}

View File

@ -28,7 +28,7 @@ public class CandidateKeyLabel: NSObject {
public protocol ctlCandidateDelegate: AnyObject {
var isAssociatedPhrasesState: Bool { get }
func sharedEventHandler(_ event: NSEvent!) -> Bool
func sharedEventHandler(_ event: NSEvent) -> Bool
func candidateCountForController(_ controller: ctlCandidateProtocol) -> Int
func candidatesForController(_ controller: ctlCandidateProtocol) -> [(String, String)]
func ctlCandidate(_ controller: ctlCandidateProtocol, candidateAtIndex index: Int)