diff options
Diffstat (limited to 'src/plugins/platforms')
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoainputcontext.mm | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoainputcontext.mm b/src/plugins/platforms/cocoa/qcocoainputcontext.mm index 63d23b0f43..7194da5433 100644 --- a/src/plugins/platforms/cocoa/qcocoainputcontext.mm +++ b/src/plugins/platforms/cocoa/qcocoainputcontext.mm @@ -118,7 +118,15 @@ void QCocoaInputContext::commit() QMacAutoReleasePool pool; [view unmarkText]; + [view.inputContext discardMarkedText]; + if (view.inputContext != NSTextInputContext.currentInputContext) { + // discardMarkedText will activate the TSM document of the given input context, + // which may not match the current input context. To ensure the current input + // context is not left in an inconsistent state with a deactivated document + // we need to manually activate it here. + [NSTextInputContext.currentInputContext activate]; + } } |