KeyHandler // Unifying BPMF input key to Ctrl+CMD+Enter.

- Ctrl+Enter can cause conflicts with some instant-messenger (web)apps (e.g. WeChat, etc.). We leave it.
This commit is contained in:
ShikiSuen 2022-03-23 21:04:18 +08:00
parent eb04526fbb
commit 3d38295422
1 changed files with 5 additions and 7 deletions

View File

@ -525,12 +525,10 @@ static NSString *const kGraphVizOutputfile = @"/tmp/vChewing-visualization.dot";
// MARK: Enter
if ([input isEnter]) {
if ([input isControlHold]) {
if (ctlInputMethod.areWeUsingOurOwnPhraseEditor || [input isCommandHold]) {
return [self _handleCtrlEnterWithState:state stateCallback:stateCallback errorCallback:errorCallback];
}
}
return [self _handleEnterWithState:state stateCallback:stateCallback errorCallback:errorCallback];
return ([input isControlHold] && [input isCommandHold]) ?
[self _handleCtrlCommandEnterWithState:state stateCallback:stateCallback errorCallback:errorCallback]
:
[self _handleEnterWithState:state stateCallback:stateCallback errorCallback:errorCallback];
}
// MARK: Punctuation list
@ -850,7 +848,7 @@ static NSString *const kGraphVizOutputfile = @"/tmp/vChewing-visualization.dot";
return YES;
}
- (BOOL)_handleCtrlEnterWithState:(InputState *)state stateCallback:(void (^)(InputState *))stateCallback errorCallback:(void (^)(void))errorCallback
- (BOOL)_handleCtrlCommandEnterWithState:(InputState *)state stateCallback:(void (^)(InputState *))stateCallback errorCallback:(void (^)(void))errorCallback
{
if (![state isKindOfClass:[InputStateInputting class]]) return NO;