diff options
Diffstat (limited to 'src/plugins/platforms')
-rw-r--r-- | src/plugins/platforms/cocoa/qnsview_complextext.mm | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/plugins/platforms/cocoa/qnsview_complextext.mm b/src/plugins/platforms/cocoa/qnsview_complextext.mm index 7c50ec7ece..cdeb7154fe 100644 --- a/src/plugins/platforms/cocoa/qnsview_complextext.mm +++ b/src/plugins/platforms/cocoa/qnsview_complextext.mm @@ -370,14 +370,16 @@ if (![self tryToPerform:selector with:self]) { m_sendKeyEvent = true; - // The text input system determined that the key event was not - // meant for text insertion, and instead asked us to treat it - // as a (possibly noop) command. This typically happens for key - // events with either ⌘ or ⌃, function keys such as F1-F35, - // arrow keys, etc. We reflect that when sending the key event - // later on, by removing the text from the event, so that the - // event does not result in text insertion on the client side. - m_sendKeyEventWithoutText = true; + if (![NSStringFromSelector(selector) hasPrefix:@"insert"]) { + // The text input system determined that the key event was not + // meant for text insertion, and instead asked us to treat it + // as a (possibly noop) command. This typically happens for key + // events with either ⌘ or ⌃, function keys such as F1-F35, + // arrow keys, etc. We reflect that when sending the key event + // later on, by removing the text from the event, so that the + // event does not result in text insertion on the client side. + m_sendKeyEventWithoutText = true; + } } } |