Go to file
Bradley T. Hughes 2d05d3bd28 Cocoa: don't send input method events for basic text input
When receiving keyDown events on the Mac, we pass them to NSView's
interpretKeyEvents method, which ends up calling our insertText method.
This means we end up sending input method events for most text input
(instead of normal key events). While this is not wrong, it is
unexpected, and different form how Qt 4 works.

Change insertText to do nothing if no preedit string has been set when
handling a key event. For normal text input that does not need input
method handling, we can simply return and let handleKeyEvent send key
events instead.

Our insertText implementation has to take care to not ignore calls from
outside key event processing (such as the user input characters with the
Character Viewer). As a result m_keyEventsAccepted changes to
m_sendKeyEvent to let insertText know whether or not insertText was
called via handleKeyEvent.

Change-Id: Ie8c2eb67f6a8438f08442f9ff48f2027a041ca23
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
2012-05-23 14:18:34 +02:00
bin Fix qpa legacy headers installation 2012-05-09 06:42:25 +02:00
config.tests configure: Remove the -dwarf2 argument for Mac OS X builds 2012-05-11 12:52:21 +02:00
dist Make QCoreApp::translate and related methods use UTF-8 2012-05-18 21:38:35 +02:00
doc Doc: Add a default license footer. 2012-05-11 17:39:13 +02:00
examples Fixed unused paramater warning in download example. 2012-05-22 10:27:54 +02:00
lib Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
mkspecs device: Check CROSS_COMPILE in deviceSanityCheckCompiler 2012-05-23 00:41:35 +02:00
qmake Add Visual Studio 11 mkspec 2012-05-16 13:34:20 +02:00
src Cocoa: don't send input method events for basic text input 2012-05-23 14:18:34 +02:00
tests Removed CONFIG+=parallel_test from suspected parallel-unsafe tests [2] 2012-05-23 03:17:59 +02:00
tools Windows-configure.exe: Do not print licensing info in log. 2012-05-21 16:02:06 +02:00
util QChar: add isSurrogate() and isNonCharacter() to the public API 2012-05-16 04:24:56 +02:00
.gitattributes Added .tag file with Git revision. 2011-05-03 16:23:49 +02:00
.gitignore Add imports directory to ignore list 2012-04-11 01:42:12 +02:00
.tag Added .tag file with Git revision. 2011-05-03 16:23:49 +02:00
configure Allow a space between "-l" and library name when configuring 2012-05-23 01:04:01 +02:00
configure.bat Remove Q_BYTE_ORDER and -*-endian arguments from configures 2012-03-02 14:48:00 +01:00
header.BSD Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
header.FDL Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
header.LGPL Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
header.LGPL-ONLY Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
INSTALL Remove Symbian specific code from qtbase. 2012-01-31 07:08:31 +01:00
LGPL_EXCEPTION.txt Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL Add the LICENSE.GPL file to the module referenced from license headers 2012-05-20 22:41:08 +02:00
LICENSE.LGPL Update contact information in license headers. 2012-01-23 04:04:33 +01:00
LICENSE.PREVIEW.COMMERCIAL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
qtbase.pro device: Add -device and -device-option to configure 2012-03-27 05:35:57 +02:00
sync.profile Expose QPA API under qpa/* 2012-05-07 20:25:24 +02:00