InputHandler // Add support for `%keys_to_directly_commit`.

This commit is contained in:
ShikiSuen 2023-12-21 21:33:29 +08:00
parent 51580ac2fb
commit d8e72674d7
1 changed files with 7 additions and 1 deletions

View File

@ -106,7 +106,7 @@ public extension InputHandler {
// MARK: - Triage by States // MARK: - Triage by States
switch state.type { triageByState: switch state.type {
case .ofDeactivated, .ofAbortion, .ofCommitting: return false case .ofDeactivated, .ofAbortion, .ofCommitting: return false
case .ofAssociates, .ofCandidates, .ofSymbolTable: case .ofAssociates, .ofCandidates, .ofSymbolTable:
let result = handleCandidate(input: input) let result = handleCandidate(input: input)
@ -174,6 +174,12 @@ public extension InputHandler {
// keyCode // keyCode
if let keyCodeTriaged = triageByKeyCode() { return keyCodeTriaged } if let keyCodeTriaged = triageByKeyCode() { return keyCodeTriaged }
// keysToDirectlyCommit
var cinDirectlyCommit = prefs.cassetteEnabled && !currentLM.keysToDirectlyCommit.isEmpty
cinDirectlyCommit = cinDirectlyCommit && [.ofInputting, .ofEmpty].contains(state.type)
cinDirectlyCommit = cinDirectlyCommit && currentLM.keysToDirectlyCommit.contains(input.text)
guard !cinDirectlyCommit else { break triageByState }
// / // /
if handleArabicNumeralInputs(input: input) { return true } if handleArabicNumeralInputs(input: input) { return true }