KeyHandler // Remove errorCallback from certain handles.
This commit is contained in:
parent
d4d9295482
commit
3d9af406cb
|
@ -303,7 +303,7 @@ extension KeyHandler {
|
||||||
|
|
||||||
// MARK: Esc
|
// MARK: Esc
|
||||||
|
|
||||||
if input.isEsc { return handleEsc(state: state, stateCallback: stateCallback, errorCallback: errorCallback) }
|
if input.isEsc { return handleEsc(state: state, stateCallback: stateCallback) }
|
||||||
|
|
||||||
// MARK: Tab
|
// MARK: Tab
|
||||||
|
|
||||||
|
@ -379,9 +379,9 @@ extension KeyHandler {
|
||||||
if input.isEnter {
|
if input.isEnter {
|
||||||
return (input.isCommandHold && input.isControlHold)
|
return (input.isCommandHold && input.isControlHold)
|
||||||
? (input.isOptionHold
|
? (input.isOptionHold
|
||||||
? handleCtrlOptionCommandEnter(state: state, stateCallback: stateCallback, errorCallback: errorCallback)
|
? handleCtrlOptionCommandEnter(state: state, stateCallback: stateCallback)
|
||||||
: handleCtrlCommandEnter(state: state, stateCallback: stateCallback, errorCallback: errorCallback))
|
: handleCtrlCommandEnter(state: state, stateCallback: stateCallback))
|
||||||
: handleEnter(state: state, stateCallback: stateCallback, errorCallback: errorCallback)
|
: handleEnter(state: state, stateCallback: stateCallback)
|
||||||
}
|
}
|
||||||
|
|
||||||
// MARK: -
|
// MARK: -
|
||||||
|
@ -408,7 +408,7 @@ extension KeyHandler {
|
||||||
// 得在這裡先 commit buffer,不然會導致「在摁 ESC 離開符號選單時會重複輸入上一次的組字區的內容」的不當行為。
|
// 得在這裡先 commit buffer,不然會導致「在摁 ESC 離開符號選單時會重複輸入上一次的組字區的內容」的不當行為。
|
||||||
// 於是這裡用「模擬一次 Enter 鍵的操作」使其代為執行這個 commit buffer 的動作。
|
// 於是這裡用「模擬一次 Enter 鍵的操作」使其代為執行這個 commit buffer 的動作。
|
||||||
// 這裡不需要該函式所傳回的 bool 結果,所以用「_ =」解消掉。
|
// 這裡不需要該函式所傳回的 bool 結果,所以用「_ =」解消掉。
|
||||||
_ = handleEnter(state: state, stateCallback: stateCallback, errorCallback: errorCallback)
|
_ = handleEnter(state: state, stateCallback: stateCallback)
|
||||||
stateCallback(InputState.SymbolTable(node: SymbolNode.root, isTypingVertical: input.isTypingVertical))
|
stateCallback(InputState.SymbolTable(node: SymbolNode.root, isTypingVertical: input.isTypingVertical))
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
|
@ -339,8 +339,7 @@ extension KeyHandler {
|
||||||
/// - Returns: 將按鍵行為「是否有處理掉」藉由 ctlInputMethod 回報給 IMK。
|
/// - Returns: 將按鍵行為「是否有處理掉」藉由 ctlInputMethod 回報給 IMK。
|
||||||
func handleEnter(
|
func handleEnter(
|
||||||
state: InputStateProtocol,
|
state: InputStateProtocol,
|
||||||
stateCallback: @escaping (InputStateProtocol) -> Void,
|
stateCallback: @escaping (InputStateProtocol) -> Void
|
||||||
errorCallback _: @escaping () -> Void
|
|
||||||
) -> Bool {
|
) -> Bool {
|
||||||
guard let currentState = state as? InputState.Inputting else { return false }
|
guard let currentState = state as? InputState.Inputting else { return false }
|
||||||
|
|
||||||
|
@ -359,8 +358,7 @@ extension KeyHandler {
|
||||||
/// - Returns: 將按鍵行為「是否有處理掉」藉由 ctlInputMethod 回報給 IMK。
|
/// - Returns: 將按鍵行為「是否有處理掉」藉由 ctlInputMethod 回報給 IMK。
|
||||||
func handleCtrlCommandEnter(
|
func handleCtrlCommandEnter(
|
||||||
state: InputStateProtocol,
|
state: InputStateProtocol,
|
||||||
stateCallback: @escaping (InputStateProtocol) -> Void,
|
stateCallback: @escaping (InputStateProtocol) -> Void
|
||||||
errorCallback _: @escaping () -> Void
|
|
||||||
) -> Bool {
|
) -> Bool {
|
||||||
guard state is InputState.Inputting else { return false }
|
guard state is InputState.Inputting else { return false }
|
||||||
|
|
||||||
|
@ -390,8 +388,7 @@ extension KeyHandler {
|
||||||
/// - Returns: 將按鍵行為「是否有處理掉」藉由 ctlInputMethod 回報給 IMK。
|
/// - Returns: 將按鍵行為「是否有處理掉」藉由 ctlInputMethod 回報給 IMK。
|
||||||
func handleCtrlOptionCommandEnter(
|
func handleCtrlOptionCommandEnter(
|
||||||
state: InputStateProtocol,
|
state: InputStateProtocol,
|
||||||
stateCallback: @escaping (InputStateProtocol) -> Void,
|
stateCallback: @escaping (InputStateProtocol) -> Void
|
||||||
errorCallback _: @escaping () -> Void
|
|
||||||
) -> Bool {
|
) -> Bool {
|
||||||
guard state is InputState.Inputting else { return false }
|
guard state is InputState.Inputting else { return false }
|
||||||
|
|
||||||
|
@ -594,8 +591,7 @@ extension KeyHandler {
|
||||||
/// - Returns: 將按鍵行為「是否有處理掉」藉由 ctlInputMethod 回報給 IMK。
|
/// - Returns: 將按鍵行為「是否有處理掉」藉由 ctlInputMethod 回報給 IMK。
|
||||||
func handleEsc(
|
func handleEsc(
|
||||||
state: InputStateProtocol,
|
state: InputStateProtocol,
|
||||||
stateCallback: @escaping (InputStateProtocol) -> Void,
|
stateCallback: @escaping (InputStateProtocol) -> Void
|
||||||
errorCallback _: @escaping () -> Void
|
|
||||||
) -> Bool {
|
) -> Bool {
|
||||||
guard state is InputState.Inputting else { return false }
|
guard state is InputState.Inputting else { return false }
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue