summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * Pass -silent to lrelease to avoid cruft in test logs.Edward Welbourne2016-02-022-2/+2
| | | | | | | | | | Change-Id: I7cf2808187f97b6319f7561fe06ddef476fa9aa0 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
| * Don't clutter up the source tree with .qm files generated by testing.Edward Welbourne2016-02-022-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | Generate the qundo*.qm files for tst_QUndo*::commandTextFormat() in the current directory (out of source, for a shadow build) rather than alongside the qundo*.ts from which they're derived (in the source tree); and remove them once loaded, if that succeeds. (On failure, we might even want to look at them.) Task-number: QTBUG-49081 Change-Id: I666985fa3ceb8c25c917b617d6d39141eddebb76 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
| * dbusmenu: Add support for shortcutsDmitry Shachnev2016-02-024-12/+60
| | | | | | | | | | | | | | | | | | | | To do that, split out and export a QKeySequencePrivate::keyName() function that returns the key text representation without the modifiers. The implementation is compatible with libdbusmenu-qt. Change-Id: Ibc3190a3949813a1610728cf89574027e5d2778d Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
| * Clean up tst_qwidgetwindowBłażej Szczygieł2016-02-021-25/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | Rename TestWidget to PaintTestWidget, because this class tests only whether paint event occurs. Remove unused variables. Remove reset() method, because there is no need to reset only one variable in class method. Change-Id: I8f442c73598e3431baf2b0433fefc157d3f10ea6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* | moc: replace inefficient QLists with QVectorsMarc Mutz2016-02-105-31/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These types are larger than a void*, so holding them in QLists is needlessly inefficient. Worse, the code could come to depend on the fragile property of (inefficient) QLists that references to elements therein never are invalidated. Fix by marking them movable, and holding them in a QVector instead. Change-Id: I42f494ed87854eadc33d78db4479203ff5e0370f Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Milian Wolff <milian.wolff@kdab.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Mark QHash/QMap as relocatable and movable-come-Qt 6Marc Mutz2016-02-091-0/+26
| | | | | | | | | | | | | | | | | | | | They were forgotten from the movable containers for Qt 5.0. Make sure we don't forget for 6.0, either. Until then, mark with new Q_RELOCATABLE_TYPE. Change-Id: I279a96c02a718a1432040303bb0d001739f59a17 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | dbusmenu: Use proper toggle-type for items that are part of groupDmitry Shachnev2016-02-097-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | To achieve that, add a new virtual setHasExclusiveGroup() method to QPlatformMenuItem class (optional because we don't want to break existing platform themes), call it when converting QActions into platform menu items, and use it when exporting the menu items over D-Bus. Also, send ActionChanged event for actions when their group is changed, so that the platform menus are updated too. Change-Id: I8d951ace8c4097decec2a0154163e3672214effb Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* | QKeySequence: replace an inefficient QList with QVectorMarc Mutz2016-02-081-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | QShortcutEntry is larger than a void*, so holding it in QLists is needlessly inefficient. Worse, the code could come to depend on the fragile property of (inefficient) QLists that references to elements therein never are invalidated. Fix by marking it movable, and holding it in a QVector instead. Change-Id: I4ab3399a8036827631b7fbdfdc60b4206305e1c9 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Optimize QSslSocketPrivate::isMatchingHostname()Marc Mutz2016-02-081-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | - Lowercase 'peerName' only once instead of each time though the loop - Use C++11 range-for instead of Q_FOREACH - Use QMap::equal_range instead of values(Key), saving the creation of a QList. Change-Id: I1229f62d706d1478960b08bb63ee9fb894364f87 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Richard J. Moore <rich@kde.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Replace some QList<int> with QVector<int>Marc Mutz2016-02-085-15/+15
| | | | | | | | | | | | | | | | | | On 64-bit platforms, QVector<int> uses only 50% of QList<int> per-element memory. Change-Id: I3057781e7fb58007ea2619cc91965a626d01473b Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QGraphicsItemAnimationPrivate::linearValueForStep(): pass vector by const-&Marc Mutz2016-02-081-21/+21
| | | | | | | | | | | | | | | | | | It's only read from. Avoids detach attempts in the many uses of front()/back(). Change-Id: I0fd5df77a6d3a9a37872e0ce28f5a2354aa8f957 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QToolBarAreaLayout: replace inefficient QLists with QVectorMarc Mutz2016-02-081-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | QToolBarAreaLayout{Item,Line} are larger than a void*, so holding them in QLists is needlessly inefficient. Worse, the code could come to depend on the fragile property of (inefficient) QLists that references to elements therein never are invalidated. Fix by marking the types primitive and movable, resp., and holding them in QVector instead. Change-Id: I4e68d4bee41040bf84302b8ce8295a11debded70 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | qmake: de-duplicate QString::number() calls with same argAnton Kudryavtsev2016-02-081-2/+3
| | | | | | | | | | Change-Id: I6e05b9ad3350bd0da5b8a6dc1389ae05315a33df Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | QNonContiguousByteDevice: mark atEnd(), size(), pos() methods as const.Anton Kudryavtsev2016-02-083-28/+28
| | | | | | | | | | | | | | These methods do not modify the object. Change-Id: I9ab9a17fa24f5a608943ec263913df14218214a8 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Drop most "#ifndef QT_NO_LIBRARY"Ulf Hermann2016-02-0817-106/+33
| | | | | | | | | | | | | | | | | | As we can load plugins without QLibrary now, we don't have to #ifdef out the code that does so anymore. Change-Id: I1dc20216830a882dbd5a1b431183407e6b19c837 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Add setFlag method to QFlagsAndre Somers2016-02-083-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | This makes implementing class methods that enable or disable a feature stored in a QFlags<> member easier. [ChangeLog][QtCore][QFlags] Added setFlag method to set or unset a flag Task-number: QTBUG-27100 Change-Id: Ic602abbbf3100df78f21b7918573744d1bbd18c1 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | QEasingCurve: add some strategic std::move()Marc Mutz2016-02-081-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Move instead of copy the bezierCurves and tcbPoints containers when updating 'config' in setType_helper(). In Qt 5, we still have the unsharable container issue which causes code for deep copies to be emitted for most copy operations. A move is always just re-seating a pointer. Change-Id: Icff7415dd0ce44df0602273ff42370b26d831b85 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | QStandardItemModel: avoid premature pessimizationMarc Mutz2016-02-081-6/+4
| | | | | | | | | | | | | | | | | | | | - don't re-evaluate QMap::end() all the time - don't copy QVariant more than needed - pass temporary to QVector::append (enabling moves) - swap instead of copy-assign a vector into place Change-Id: I7549812dfbb2dbc9a919fa9565397d50141fc2ca Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | uic: eradicate all Q_FOREACH loops [non-generated code]Marc Mutz2016-02-082-10/+10
| | | | | | | | | | | | | | | | ... by replacing them with C++11 range-for loops, or, in one case, qDeleteAll(). Change-Id: If6980f6c12ac1d359a1f0e062dcc2a86e9685d1e Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | QWindowsTheme: Provide SHGetStockIconInfo()-related constants on CEFrank Richter2016-02-071-0/+27
| | | | | | | | | | | | Change-Id: I3d0cb8bff811ffbdb8e787b02896717316a4a405 Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* | QList: don't lose reserved capacity in op+= with empty LHSMarc Mutz2016-02-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It is very rare that operator+= is used as operator=. Most of the time, one op+= is followed by more op+=s. The old code checked whether *this was empty, and simply shallow-copied the RHS into the LHS in that case. This has one severe drawback: a reserve() on the LHS is lost. Fix by not checking for isEmpty() but for d == &shared_null. Change-Id: Iff28e496cf24cc93f248449d74012c4f3a87253e Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Doc: Fix grammar in QOpenGLContext::openGLModuleType() docsAndy Maloney2016-02-061-1/+1
| | | | | | | | | | Change-Id: I4eb0361940bad8b0b0726fc3a584062d297f3164 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* | Fix shared library framework builds of Qt with a platform suffix.Jake Petroules2016-02-062-1/+11
| | | | | | | | | | | | | | | | | | This is necessary for combined device and simulator builds on Apple platforms (iOS, tvOS, watchOS) to link properly. Change-Id: I21e70806643b10f429945d3020995dc94fa5c612 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Get rid of the QRegExp dependency in qxmlutils.Lars Knoll2016-02-051-9/+14
| | | | | | | | | | | | | | | | | | This makes the XML parser 100% independent of having regexp support enabled. Change-Id: I73004b0fb71e8086618995c71a985a86c292df3d Reviewed-by: Robin Burchell <robin.burchell@viroteck.net> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QTabBar: remove dead codeGiuseppe D'Angelo2016-02-051-3/+0
| | | | | | | | | | Change-Id: Iaad0ef8fe66e925f9dcbc94693d078612a92969f Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | QProcess: Remove dead codeLouai Al-Khanji2016-02-054-22/+0
| | | | | | | | | | | | | | | | These functions appear to have been dead code always - even in the earliest Qt4 releases! Change-Id: Ie2a458092b45113782284cf8ed3aa11a018b60d4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Remove qt_safe_select and qt_select_msecsLouai Al-Khanji2016-02-052-58/+0
| | | | | | | | | | Change-Id: If46228dc750554b65acd23e48410ec541fc33714 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QLocalSocket: Use poll instead of select on UnixLouai Al-Khanji2016-02-041-23/+12
| | | | | | | | | | Change-Id: I5399623d284ccd804bd1638da143ccdb973af9e2 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QFusionStyle: Fix subtle groove paintingLouai Al-Khanji2016-02-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | While investigating an unrelated rendering bug I noticed that the call to drawRect here is essentially dead code. However, the original intent seems to have been to draw a very subtle shadow within the scrollbar groove, so let's re-enable it. Subjectively, it does add a nice touch, especially with higher dpi screens. Change-Id: Iebffe69ecf9c26be617f7e85bd95f85ed7b0fafe Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> Reviewed-by: Jens Bache-Wiig <jensbw@gmail.com>
* | Clean up new poll code slightlyLouai Al-Khanji2016-02-046-52/+27
| | | | | | | | | | Change-Id: I046126ff69a77a50e79efb1b6ebb0fffef67ac8e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | tst_qeventloop: replace select with pollLouai Al-Khanji2016-02-041-5/+2
| | | | | | | | | | Change-Id: Ib2b71696e24249b0b13bb925a7bb627ef09f2dff Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Android: Add runOnAndroidThreadSyncBogDan Vatra2016-02-042-0/+12
| | | | | | | | | | | | | | This is a convenient function which waits (timoutMS) for the runnable to be executed. Change-Id: I2c0f262d3795c29961e8182b7ffc35a2c6f8a1f6 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | Android: Fix crash, don't add null visible menus to pendingContextMenusBogDan Vatra2016-02-041-1/+2
| | | | | | | | | | | | | | Regression introduced in e3689949ba5b23decb0ea85741a3f4829696788e Change-Id: I9d3e37733d933e037f04d3a6efaf05607e16d9c5 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* | qmake: optimize container usage in the json handling.Anton Kudryavtsev2016-02-041-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Iterate only once over QJsonObject, create key list by existing loop instead of create by QJsonObject::keys(), which contains internal loop. In common case if loop's statement is lightweight, then effect of optimization is significant, and vice versa. Also make addJsonArray() and addJsonObject() functions more homogeneous. Use reserve to optimize memory allocation. Change-Id: Id122cd1becfd34bb06640876b1c79e1d396d2a6b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Add qstrntod as qstrtod overload, which takes a len parameterTobias Koenig2016-02-032-2/+13
| | | | | | | | | | | | | | | | | | | | Add qstrntod as an overload for qstrtod, which takes a len parameter, so one can pass character arrays which are not null-terminated. Change-Id: I8c1c6c3627043c1d6ec6eb712efa3abc9e5e9e00 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Milian Wolff <milian.wolff@kdab.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* | Simplify QAbstractSocket::readData()Alex Trotsenko2016-02-031-22/+8
| | | | | | | | | | | | | | | | It needed refactoring after prior changes (bf6897edb0, 1ce203d05a, 48a4a67e8d). Change-Id: I06ee3f4f70db2a71acfc8e9c1da5b4ad7524179d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Don't use Q_GLOBAL_STATIC for trivial type QLocaleDataSérgio Martins2016-02-031-2/+2
| | | | | | | | | | Change-Id: I9435295a753d7dabea202fde876786d876a295fa Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | QProcess: Use poll instead of select on Unix platformsLouai Al-Khanji2016-02-033-89/+87
| | | | | | | | | | Change-Id: I3386ef228ce95209f6f221e18293d991b24a7b2e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Unix platforms: Use qt_safe_poll in QLocalServerLouai Al-Khanji2016-02-031-13/+28
| | | | | | | | | | Change-Id: If9f0c1a0089b16729c20c0e05feca58a514d3e25 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Unix platforms: Use poll in native socket engine instead of selectLouai Al-Khanji2016-02-031-29/+29
| | | | | | | | | | Change-Id: I10fde9f446ee17c921ce9cf356a27daac396321d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/5.6' into devLiang Qi2016-02-02119-1083/+1837
|\| | | | | | | | | | | | | | | | | Conflicts: config.tests/unix/compile.test src/plugins/platforms/cocoa/qcocoahelpers.mm src/tools/qlalr/cppgenerator.cpp Change-Id: I0103ca076a9aca7118b2fd99f0fdaf81055998c3
| * Remove warning about being unable to instantiate accessibility interfaceFrederik Gladhorn2016-02-021-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | This warning was a good idea when the plugins were needed to give a hint where to start debugging. Now the a11y plugins were merged into qtwidgets/qtquick, so there is no more need for this warning which may pop up on custom widgets e.g. inheriting QWindow. Task-number: QTBUG-50215 Change-Id: Ic5efbb3dfbd07a7139884126a2604b54c99005e4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
| * QDockWidget: Restore using setGeometry since the geometry is used for the stateAndy Shaw2016-02-022-6/+28
| | | | | | | | | | | | | | | | | | | | This solves an instance where restoreState() was used when the dockwidget was already floating and the saved state was also for a floating dockwidget. Change-Id: I1fe764ae2a6b0351ae26e33ffec682ad37c944d7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * Stop Q_AUTOTEST_EXPORTing QKeyBinding and QKeySequencePrivateDmitry Shachnev2016-02-022-3/+2
| | | | | | | | | | | | | | | | | | | | The QKeySequence test no longer uses private members (since commit 725bdc3fd2f88c7f49f59a151579fd128cf543dc), so that is no longer needed. Also, remove the unused include from the test. Change-Id: I4d252bb3efd7282f74c44e48444c23ab51d48ea5 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * Revert "QWindow::destroy(): only reset QGuiApp::focus_window and friends as ↵Tor Arne Vestbø2016-02-025-61/+12
| | | | | | | | | | | | | | | | | | | | | | | | a last resort" This reverts commit 4c71db756741d35ccb32dc4c32aa1823264c85df. It's too risky for 5.6, we should let it cook in dev for a while and backport when ready. Change-Id: I91e677e65d967f29c84a254cd3dffc8bb847b263 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
| * xcb: Ignore Mouse Enter:ungrab, Leave:grab events.Gatis Paeglis2016-02-011-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are "special" XCB_NOTIFY_MODE_(UN)GRAB Enter/Leave events and we do not have handlers for them in Qt, so lets just ignore events with this mode. Patch fixes Qt+ArchLinux+Awesome WM issues, where Qt applications were receiving Enter/Leave events for mouse clicks in the application window. This patch does not affect "normal" XCB_NOTIFY_MODE_NORMAL Enter/Leave event handling. Task-number: QTBUG-45818 Change-Id: Ib70fdd9ed9200364a9753904f8e63d1ed9e2072f Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
| * Fix memory leak if QMetaType::create is called for an unknown typeJędrzej Nowacki2016-02-011-2/+3
| | | | | | | | | | | | | | | | The memory should be allocated only if we operates on a valid type, It is a regression introduced by 3d575d4845926bd141ff0c14e57427bba79644d0 Change-Id: Ia31bccd5b41fe090c29df1aeaa69efb706cd25bb Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * dbusmenu: Make D-Bus menus and menu items enabled by defaultDmitry Shachnev2016-01-311-2/+2
| | | | | | | | | | | | | | | | | | There is no reason why they should be disabled, and also the current behavior breaks the D-Bus platform menu bar implementation. Change-Id: I8a8b5b6a66e40f1f1a25394dc87ac2178c7907fa Reviewed-by: Martin Klapetek <mklapetek@kde.org> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
| * Fix flickering status tips in submenus.Michal Policht2016-01-301-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | Changed setCurrentAction() function so that it reselects parent menu action only if mouse is over a menu and parent menu is not already selected. Task-number: QTBUG-47987 Change-Id: Id077d6ce1de1335ba2709180c8480af5d1720de0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Michal Policht <michpolicht@gmail.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
| * Fix GCC 6 valid warnings about misleading indendationsThiago Macieira2016-01-306-40/+40
| | | | | | | | | | | | | | | | | | | | | | It's currently producing a lot of false positives, but a few are actually valid. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69029, https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69122 and some others. Change-Id: I24a735698d3c4a719fc9ffff1425f29d7b5a3458 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>