summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforminputcontexts
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Use qtConfig throughout in qtbaseLars Knoll2016-08-192-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the new qtConfig macro in all pro/pri files. This required adding some feature entries, and adding {private,public}Feature to every referenced already existing entry. Change-Id: I164214dad1154df6ad84e86d99ed14994ef97cf4 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | | Clean up xkbcommon.priLars Knoll2016-08-191-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't set a variable in QT_CONFIG to build the right things. Instead have an xkbcommon-x11.pri in addition to xkbcommon.pri that also builds the x11 specific things. Change-Id: I16a5f0bcb39b7f4039583a676b6c14b0e073a37f Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | | employ QMAKE_USE: LIBS += $$QMAKE_LIBS_FOOOswald Buddenhagen2016-08-191-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | this migrates the cases where the build system already made (some) use of variables (possibly) set by configure. Change-Id: I43a08caed481d5f887a3a40821e71a4797760e7e Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Remove last uses of Java-style (non-mutable) iterators from QtBaseMarc Mutz2016-08-131-4/+1
| | | | | | | | | | | | | | | Change-Id: I7531ffd4f2d5b2193bb6231c743ff0a074618b99 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into devEdward Welbourne2016-07-191-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/library/qmakebuiltins.cpp qmake/library/qmakeevaluator.cpp qmake/library/qmakeevaluator.h qmake/project.h QMakeEvaluator: * evaluateConditional(): one side changed return type, the other changed a parameter type. * split_value_list(): one side changed a parameter adjacent to where ... * expandVariableReferences(): ... the other killed one overload and changed the survivor src/corelib/io/qlockfile_unix.cpp One side changed a #if condition, the other moved NETBSD's part of what it controlled. src/corelib/tools/qdatetime.cpp One side fixed a reachable Q_UNREACHABLE in toMSecsSinceEpoch(), the other moved it from the private class to the public one, in the midst of the "short date-time" optimization, which confused diff entirely. One side changed a QStringLiteral to QLatin1String, the other rewrote adjoining code. src/network/kernel/qauthenticator.cpp Both rewrote a line, equivalently; kept the dev version. src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h One side changed #if-ery that the other removed. tools/configure/configureapp.cpp One side added a check to -target parsing; the other killed -target. tests/auto/testlib/selftests/expected_cmptest.lightxml tests/auto/testlib/selftests/expected_cmptest.teamcity tests/auto/testlib/selftests/expected_cmptest.txt tests/auto/testlib/selftests/expected_cmptest.xml tests/auto/testlib/selftests/expected_cmptest.xunitxml Regenerated using generate_expected_output.py I note that quite a few other expected_* come out changed, now. There was no git-conflict in src/widgets/kernel/qformlayout.cpp but it didn't compile; one side removed some unused methods; the other found uses for one of them. Put FixedColumnMatrix<>::removeRow(int) back for its new user. Change-Id: I8cc2a71add48c0a848e13cfc47b5a7754e8ca584
| * | Use QStringLiteral more judiciouslyAnton Kudryavtsev2016-07-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace it with QL1S in QStringBuilder expressions and in overloaded functions. Replace patterns 'QString::number() + QStringLiteral' and 'QStringLiteral + QString::number()' with QString::asprintf. Saves some text size. Change-Id: Ib39b2332264dfc3df04e77f2c101b47a1030cef4 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-03-226-171/+146
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/common/wince/qplatformdefs.h src/plugins/platforms/directfb/qdirectfbbackingstore.cpp src/plugins/platforms/xcb/qxcbbackingstore.cpp Change-Id: Ied4d31264a9afca9514b51a7eb1494c28712793c
| * | Merge "Merge remote-tracking branch 'origin/5.6' into 5.7" into refs/staging/5.7Liang Qi2016-03-132-10/+10
| |\ \
| | * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-03-112-10/+10
| | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change partially reverts 1bfc7f68 about QT_HAS_BUILTIN define and undef in src/corelib/tools/qsimd_p.h. This change is also squashed with "Fall back to c++11 standard compiler flag for host builds" which is done by Peter Seiderer. Conflicts: mkspecs/features/default_post.prf src/3rdparty/sqlite/0001-Fixing-the-SQLite3-build-for-WEC2013-again.patch src/3rdparty/sqlite/sqlite3.c src/corelib/tools/qsimd_p.h src/gui/kernel/qevent.cpp src/gui/kernel/qwindowsysteminterface.cpp src/gui/kernel/qwindowsysteminterface_p.h src/plugins/bearer/blackberry/blackberry.pro src/plugins/platforms/cocoa/qcocoasystemsettings.mm src/plugins/platformthemes/gtk2/gtk2.pro src/plugins/styles/bb10style/bb10style.pro src/sql/drivers/sqlite2/qsql_sqlite2.cpp tools/configure/configureapp.cpp Task-number: QTBUG-51644 Done-with: Peter Seiderer <ps.report@gmx.net> Change-Id: I6100d6ace31b2e8d41a95f0b5d5ebf8f1fd88b44
| | | * consistently put {qt,qml}_{module,plugin} at the end of project filesOswald Buddenhagen2016-03-072-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this fixes static builds by ensuring that all dependencies are exported. Task-number: QTBUG-51071 Change-Id: Icbce502dcbcb4d4b4d922c42679f44e2cc930bf3 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| * | | QtBase (remainder): use printf-style qWarning/qDebug where possible (I)Marc Mutz2016-03-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The printf-style version of QDebug expands to a lot less code than the std::ostream-style version. Of course, you pay in type safety (but compilers warn about it these days), you cannot stream complex Qt types and streaming QStrings is awkward, but in many cases you actually improve on readability. But the main reason is that something that's not supposed to be executed under normal operation has no business bloating executable code size. This is not an attempt at converting all qWarnings() to printf-style, only the low-hanging fruit. In this first part, replace qWarning() << "" with qWarning("..."). Had to fix broken qImDebug() definition. Instead of defining it as a nullary macro in the QT_NO_DEBUG case and as a variadic macro in the other, define it in both cases, as is customary, as a non-function macro so that overload selection works without requiring variadic macro support of the compiler. Saves e.g. ~250b in text size in QtPrintSupport on optimized GCC 5.3 AMD64 builds. Change-Id: Ie30fe2f7942115d5dbf99fff1750ae0d477c379f Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
| * | | ibus: remove some unneeded member init'ingMarc Mutz2016-03-111-17/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I was surprised this compiled at all, since I thought QT_NO_CAST_FROM_ASCII was in effect in Qt, but apparently it isn't. Change-Id: Id77743a2ca1b7f865960dc78d169584741f18d43 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| * | | QIBusEngineDesc: initialize all members when deserializing from older versionsMarc Mutz2016-03-101-17/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | De-duplicated code using, as suggested in previous review, strategic gotos. Change-Id: I4550dd8eff99789a41d8bb0b015bc4f51e3969fe Reviewed-by: Takao Fujiwara <takao.fujiwara1@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| * | | ibus: mark some types as movableMarc Mutz2016-03-102-26/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These types are held in QVariant, and QIBusAttribute is also held in QVector. Now that they are no longer polymorphic, they can be marked as movable. Remove user-defined dtors to unlock the implicit move special member functions, which I enforce in my local tree for all Q_MOVABLE_TYPEs. Add std::move() when appending QIBusAttribute. QVector has rvalue-push_back(). Change-Id: Ibb359939d5c11b5ef1f8ceced9a051cdde452dd5 Reviewed-by: Takao Fujiwara <takao.fujiwara1@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| * | | ibus: de-virtualize QIBusSerializable hierarchyMarc Mutz2016-03-103-106/+114
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These types don't inherit to be reused, they inherit to reuse. Consequently, change the inheritance to private, remove the virtual ~QIBusSerializable and rewrite the streaming operators as member functions. Remove the now-unused QIBusSerializable streaming operators and meta-type registration. Change-Id: Icf7a89174592ba62b39f73f0f016c8296cab5993 Reviewed-by: Takao Fujiwara <takao.fujiwara1@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* / / QInputMethodEvent::Attribute: add ctor that doesn't take a QVariantMarc Mutz2016-02-201-1/+1
|/ / | | | | | | | | | | | | | | | | | | | | Many callers passed QVariant() as the last ctor argument. Micro-optimize by providing an overload that default- constructs the variant in-place. Change-Id: I9aab40c6e5a025c9a502c706e4cc7b10879ac418 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Takao Fujiwara <takao.fujiwara1@gmail.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Merge remote-tracking branch 'origin/5.6' into devLiang Qi2016-02-021-3/+3
|\| | | | | | | | | | | | | | | | | Conflicts: config.tests/unix/compile.test src/plugins/platforms/cocoa/qcocoahelpers.mm src/tools/qlalr/cppgenerator.cpp Change-Id: I0103ca076a9aca7118b2fd99f0fdaf81055998c3
| * Use QFile::exists(f) instead of QFile(f).exists().Anton Kudryavtsev2016-01-271-3/+3
| | | | | | | | | | | | | | It's faster. Change-Id: Ie57619b4e0c53975aa955c83c833c34e1446e4c8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Updated license headersJani Heikkinen2016-01-1510-140/+200
| | | | | | | | | | | | | | | | | | | | | | From Qt 5.7 -> LGPL v2.1 isn't an option anymore, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new LGPL header instead of LGPL21 one (in those files which will be under LGPL v3) Change-Id: I046ec3e47b1876cd7b4b0353a576b352e3a946d9 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QComposeInputContext: reduce composeBuffer to QT_KEYSEQUENCE_MAX_LENAnton Kudryavtsev2016-01-092-2/+2
| | | | | | | | | | | | | | | | | | | | The extra length has been used for a sentinel null value. By checking the index before indexing into the array, that extra element can be dropped. Change-Id: I0b309420d8d89f75e2381a8065c8e68a1a33427c Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Use qEnvironmentVariableIntValue() instead of qgetenv().toInt().Sérgio Martins2015-12-181-1/+1
| | | | | | | | | | | | | | It's much faster. Change-Id: I55e0a23f9086fe2e7872e81dc0f5e10105ed124a Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Merge remote-tracking branch 'origin/5.6' into devLiang Qi2015-12-181-3/+3
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/painting/painting.pri src/plugins/platforms/xcb/qxcbconnection.cpp tests/auto/corelib/thread/qthreadstorage/qthreadstorage.pro tests/auto/corelib/tools/qlocale/test/test.pro tests/auto/gui/kernel/qwindow/tst_qwindow.cpp tools/configure/environment.cpp Change-Id: I9c40f458b89b2c206de2d2c24e90b5f679c93495
| * Check for any existing file in XCOMPOSEFILE.Giuseppe D'Angelo2015-12-091-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this change, it was checked if the path ends with "Compose", which was an invalid assumption as the file can have any name (see [1]) This replaces the check with a check for any existing file (which wasn't checked before). [1] http://www.x.org/releases/X11R7.7/doc/man/man5/Compose.5.xhtml Done-with: Florian Bruhin <git@the-compiler.org> Task-number: QTBUG-41557 Change-Id: If4fb58d4c1ed695f2d611236abfe97964b548678 Reviewed-by: Gatis Paeglis <gatis.paeglis@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.6' into devLiang Qi2015-11-046-7/+227
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: config.tests/unix/ptrsize.test configure src/corelib/global/qnamespace.h src/network/socket/qabstractsocket.cpp tests/auto/other/networkselftest/networkselftest.pro Change-Id: Ic78abb4a34f9068567cea876861d4220f5a07672
| * IBus: Implement QPlatformInputContext::locale()Takao Fujiwara2015-11-026-7/+227
| | | | | | | | | | | | | | | | Listen to "GlobalEngineChanged" dbus signal. Task-number: QTBUG-48772 Change-Id: Ia186a66c75fb3ce2fdf5ef9e358c1807f674594b Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.6' into devLiang Qi2015-10-142-17/+97
|\| | | | | | | | | | | | | | | | | Conflicts: tests/auto/corelib/io/qfile/tst_qfile.cpp tests/auto/corelib/io/qprocess/tst_qprocess.cpp tests/auto/corelib/tools/qversionnumber/qversionnumber.pro Change-Id: Ia93ce500349d96a2fbf0b4a37b73f088cc505c6e
| * Qt IBus plugin connects to IBus Bus again if ibus-daemon does not runTakao Fujiwara2015-09-252-17/+97
| | | | | | | | | | | | | | | | | | | | | | | | Qt5 applications do not enable IBus when the applications are saved in the session and launched automatically in the next login. This patch checks the IBus socket path and connect to the bus when it's available. Task-number QTBUG-47657 Change-Id: I0883eaa2438fd27455da93f78f392ea3c1abe6b8 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.6' into devLiang Qi2015-09-254-20/+38
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/io.pri src/corelib/io/qdatastream.cpp src/corelib/io/qdatastream.h src/network/socket/qabstractsocket.cpp src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp src/plugins/platforms/cocoa/qcocoaaccessibilityelement.h src/widgets/styles/qgtkstyle.cpp tests/auto/corelib/mimetypes/qmimedatabase/qmimedatabase-cache/qmimedatabase-cache.pro tests/auto/corelib/mimetypes/qmimedatabase/qmimedatabase-xml/qmimedatabase-xml.pro tests/auto/dbus/qdbusconnection/qdbusconnection.pro tests/auto/dbus/qdbuspendingcall/tst_qdbuspendingcall.cpp tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp Change-Id: I347549a024eb5bfa986699e0a11f96cc55c797a7
| * Pretend the X11 "compose" platform input context plugin to be "xim" tooThiago Macieira2015-09-212-2/+3
| | | | | | | | | | | | | | | | This is for compatibility with old Qt versions that had this. Task-number: QTBUG-48360 Change-Id: I42e7ef1a481840699a8dffff1405c0a348e32e27 Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
| * ibus: Return correct scan code to windowsTakao Fujiwara2015-08-252-18/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ibus keycode is qt scancode - 8 and needs to be returned to app windows as the right value. Use QWindowSystemInterface::handleExtendedKeyEvent() instead of QCoreApplication::sendEvent() in qtbase 5.6 to follow QXcbKeyboard::handleKeyEvent(). Also qApp->focusObject() returns QMdiChild which is a QWidget and that is not a QWindow. Task-number: QTBUG-47833 Change-Id: Ie634a86d7790d8093cfca2dc8666f726844ae654 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* | Fixed build breaks that result after disabling "contextmenu" featureShrikant Dhumal2015-09-091-0/+2
|/ | | | | Change-Id: I261f927ee720e0c65abd18417e1ac48dbee820df Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
* Use ibus ProcessKeyEvent asynchronously.Takao Fujiwara2015-07-252-10/+133
| | | | | | | | | | | ibus-hangul sends "CommitText" dbus asynchronous API during "ProcessKeyEvent" dbus API is called. If "ProcessKeyEvent" is synchronous, "ProcessKeyEvent" finishes before "CommitText" finishes and the order of Hangul characters and space is not correct. Task-number: QTBUG-40541 Change-Id: Ia526bc11833853082205ef1c3d64cf7943e2274f Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Use QList::reserve(), reduces reallocationsSérgio Martins2015-06-271-2/+4
| | | | | Change-Id: I9f218bdd65a97ad9c867b695f3ba27ab64a54d2a Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Merge remote-tracking branch 'origin/5.5' into devSimon Hausmann2015-06-032-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qnamespace.qdoc src/corelib/io/qwindowspipereader.cpp src/corelib/io/qwindowspipereader_p.h src/corelib/statemachine/qstatemachine.cpp src/corelib/statemachine/qstatemachine_p.h src/plugins/platforms/xcb/qxcbconnection.h tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp tests/auto/tools/qmake/tst_qmake.cpp tests/manual/touch/main.cpp Change-Id: I917d694890e79ee3da7d65134b5b085e23e0dd62
| * QPA plugins: Use _iid macros instead of strings in Q_PLUGIN_METADATA.Friedemann Kleint2015-05-132-2/+2
| | | | | | | | | | | | | | | | | | This makes it easier to change the version numbers by changing the macros in QtGui. Task-number: QTBUG-46009 Change-Id: I94c9591ec6f7c9173a698df9e1fe8fd6a904caf4 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* | Fix crashes when accessing environment variables concurrentlySimon Hausmann2015-04-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We've seen crashes with QThreadPrivate::start using qgetenv during the creation of the event dispatcher, while another thread (for example the gui thread) called qputenv. This is inherently thread-unsafe and there are many places where we make the assumption that using the environment is safe. However access to the environment is inherently unsafe in the C runtime and the best that we can do is add a mutex around the Qt environment access functions, to at least protect ourselves and our users. Change-Id: Ie9a718d9f7ce63c423c645f0be3e3f4933e1cb08 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-223-15/+24
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/statemachine/qstatemachine.cpp src/corelib/statemachine/qstatemachine_p.h src/gui/painting/qdrawhelper.cpp src/plugins/platforms/xcb/qxcbnativeinterface.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/plugins/platforms/xcb/qxcbwindow.h src/testlib/qtestblacklist.cpp src/tools/qdoc/node.cpp src/tools/qdoc/node.h tests/auto/gui/painting/qcolor/tst_qcolor.cpp Change-Id: I6c78b7b162001712d5774293f501b06b4ff32684
| * Fix regression in compose table parsingGatis Paeglis2015-04-161-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Performance optimization from 1aab68648 revealed that "composeValueEnd" needs adjustment for compose sequences that result in a quotation mark, for example: <dead_diaeresis> <space> : "\"" quotedbl # REVERSE SOLIDUS Change-Id: I66bf83fbe62727f1ee245aae90f8d0eb53dea6d4 Task-number: QTBUG-45538 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * Speed up application startup on X11Simon Hausmann2015-04-102-14/+19
| | | | | | | | | | | | | | | | Avoid parsing the composition tables on application startup. Instead let's do that on-demand the first time a composition key is pressed. Change-Id: I52feb36246a091b9a84d46e479ba2ad1f5cd1556 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * Speed up compose file parsing in the X11 composition input method pluginSimon Hausmann2015-04-101-1/+1
| | | | | | | | | | | | | | | | There's no need to decode the string until the end of the line, it's sufficient to stop at the end of the quotes. Change-Id: Ie617d2538511e91d0e0146f98b7e5ea3213b8db2 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Optimize QApplication startup time by caching the Compose fileUrsache Vladimir2015-04-083-35/+206
|/ | | | | | | Please find the explanation at the top of qtablegenerator.cpp. Change-Id: Ib1a5ee49d382034520ed0871bb524b7931cf330a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* ibus: Get display number when screen number is omitted.Takao Fujiwara2015-03-271-0/+2
| | | | | | | | | QIBusPlatformInputContextPrivate::createConnection() parses DISPLAY variable and it does not get the display number when the screen number is omitted. E.g. DISPLAY=":1". Change-Id: I9f81d8114d4e0f654a27ada67c5dc110eb34cd64 Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
* QPA plugins: Fix const correctness in old style castsThiago Macieira2015-03-091-1/+1
| | | | | | | | Found with GCC's -Wcast-qual. Change-Id: Ia0aac2f09e9245339951ffff13c946899b4ba15b Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* compose: Rename main.cpp to qcomposeplatforminputcontextmain.cpphjk2015-02-172-2/+2
| | | | | | | | Files with same base name cause extra trouble for debuggers. Similarly to 26cf0f0d5a8, it can be avoided here. Change-Id: Ide47170f417d636aa031b0d84a1951df8bf32316 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Pass params of shareable type by const-ref rather than by valueKonstantin Ritt2015-02-132-2/+2
| | | | | | | | ...where passing them by value was not intentional. Change-Id: Ifd5036d57b41fddeeacfbd3f5890881605b80647 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Simplify QTableGenerator::printComposeTable()Marc Mutz2015-02-121-15/+9
| | | | | | | | | | | | | | | Instead of filling a QString with lots of temporaries in-between, simply stream everything into QDebug directly. Requires the use of #ifndef QT_NO_DEBUG_STREAM because of the explicit mentioning of QDebug. Further simplified it by removing the complicated trailing-comma handling. The struct-like output can tolerate a trailing comma which has been allowed in C/C++ since its inception. Change-Id: I0393a37cd21a50e902c8cb9f8b752ebb946d1669 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Update copyright headersJani Heikkinen2015-02-1114-74/+74
| | | | | | | | | | | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Outdated header.LGPL removed (use header.LGPL21 instead) Old header.LGPL3 renamed to header.LGPL3-COMM to match actual licensing combination. New header.LGPL-COMM taken in the use file which were using old header.LGPL3 (src/plugins/platforms/android/extract.cpp) Added new header.LGPL3 containing Commercial + LGPLv3 + GPLv2 license combination Change-Id: I6f49b819a8a20cc4f88b794a8f6726d975e8ffbe Reviewed-by: Matti Paaso <matti.paaso@theqtcompany.com>
* Add Q_DECL_OVERRIDE in the src subdirectoryOlivier Goffart2014-12-034-13/+13
| | | | | | | | | | Done automatically with clang-modernize on linux (But does not add Q_DECL_OVERRIDE to the function that are marked as inline because it a compilation error with MSVC2010) Change-Id: I2196ee26e3e6fe20816834ecea5ea389eeab3171 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Merge TextFormat attributes for identical ranges in QInputMethodEventsEike Hein2014-11-062-4/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IBus can hand us multiple attributes for different formatting properties of the same text range for events. The IBus input method plugin used to convert these straight into multiple QInputMethodEvent::Attributes, each with their own QTextCharFormat instance. According to the QInputMethodEvent documentation, behavior with multiple TextFormat attributes for the same text range is undefined. In at least one known user, KDE's Kate text editor, it causes invisible text for pre-edit text events as the QTextCharFormats are applied in turn with partially default-constructed foreground/background brushes: https://bugs.kde.org/show_bug.cgi?id=339467 This patch makes an effort to merge formatting information for identical text ranges into a single QTextCharFomat, while otherwise preserving existing behavior (attribute order is unchanged and attributes deseria- lized from D-Bus as having invalid QTextFormats remain untouched). No attempt is made to cope with overlapping text ranges. Segmenting into smaller ranges and merging for the overlaps would be conceivable, but until a case of an input method creating events with overlapping ranges is known seems not worth the effort. It's worth noting that the IBus input method plugin for Qt 4 also attempts to merge formatting information into a single QTextCharFormat, but with a distinct implementation from this one. Change-Id: Ie3dc38b353724ffb7b5f2d7f316393027373baf2 Task-number: 41640 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* QTableGenerator: replace a call to a member function with direct element accessMarc Mutz2014-10-131-1/+1
| | | | | | | | Saves one copy of a vector. Change-Id: I3a14c46e306c3d44a64c6e0d8cd2f120b2c208d7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>