summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* tst_qglobal.cpp: fix compilation with an actual C++14 compilerMarc Mutz2016-03-051-2/+2
| | | | | Change-Id: I66819f3708f0489006f997f43f1051b81f7b647e Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Fix test tst_QIcon::fromThemeCache().Friedemann Kleint2016-03-021-3/+24
| | | | | | | | | | | | | | Verify that the temporary directory could be created. Check whether the gtk-update-icon-cache binary exists before running and skip cleanly. Check successful execution. Fixes Windows warnings: SKIP : tst_QIcon::fromThemeCache() gtk-update-icon-cache not run .\tst_qicon.cpp(707) : failure location QWARN : tst_QIcon::fromThemeCache() QTemporaryDir: Unable to remove "D:\\temp\\tst_qicon-DSSn9G" most likely due to the presence of read-only files. Change-Id: Ibc8f883121e62b30d71586bc64b42eb6c480925f Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Avoid qMin in format conversions when possibleAllan Sandfeld Jensen2016-03-011-0/+11
| | | | | | | | Calling qMin often prevents effective vectorization, and it is only necessary when converting from formats with mixed color-channel widths. Change-Id: I2a0f3f3fb528d45be1fd025758f9d915ee1736c0 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Integrate network sockets into the multichannel infrastructureAlex Trotsenko2016-03-011-0/+16
| | | | | | | Change-Id: I96974a7460c29b46cae8a28aadb3e50cdcdb7beb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> Reviewed-by: Markus Goetz (Woboq GmbH) <markus@woboq.com>
* SSSE3 optimized store of 24-bit formatsAllan Sandfeld Jensen2016-02-291-12/+32
| | | | | | | | Using shuffle and align storing our quint24 format can be done much faster. This in particular improves conversions to RGB888. Change-Id: I179748706a33a43fd6f60f5c40287317418c8867 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
* Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-02-297-38/+67
|\ | | | | | | | | | | | | Conflicts: tests/auto/corelib/io/qprocess/tst_qprocess.cpp Change-Id: Ib6955eb874b516b185b45d6c38cec646fbaa95f4
| * tst_QDialog::snapToDefaultButton(): Do not check on exact cursor position ↵Friedemann Kleint2016-02-261-12/+14
| | | | | | | | | | | | | | | | | | | | | | | | unless hint is set. Given the flakyness of cursor positioning, loosen the check to only verify that the cursor is outside the window. The hint is only active on Windows depending on a system setting. Task-number: QTBUG-51516 Change-Id: I474d251cc41e68f182baf8dba84eaf38d914d7ee Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * Remove a mis-placed QSKIP().Edward Welbourne2016-02-261-2/+0
| | | | | | | | | | | | | | | | It made us skip the rest of the test, not just the small set of sub-tests that were conditioned by the if () in whose else it sat. Change-Id: I5e914e0aeb9d5ba44b21966d071aaccbc590365d Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
| * tst_qguimetatype::flags(): port to QTypeInfoQueryMarc Mutz2016-02-261-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QTypeInfoQuery was introduced for 5.6 to decouple isStatic and isRelocatable so old code continues to work. But since this test still uses !isStatic to mean trivially-relocatable, it will fail as soon as one of the checked types is marked as Q_RELOCATABLE_TYPE instead of Q_MOVABLE_TYPE. Incidentally, such a change is in the pipeline for Qt 5.7/5.8, so fix the test by porting to QTypeInfoQuery. Do this in 5.6, because that's when QTypeInfoQuery was introduced. Change-Id: I06f815f26ca9b430e124c4a2f8de2a729999762b Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * QScreen::grabWindow(): Scale the coordinates.Friedemann Kleint2016-02-261-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The coordinates need to be scaled before calling QPlatformScreen::grabWindow() On return, set a devicePixelRatio on the pixmap. Adapt the QWidget test to scale the grabbed pixmaps. Fixes pixeltool displaying the wrong part of the screen when High DPI scaling is in effect. Task-number: QTBUG-46615 Change-Id: I12de7df0da669230cf0fae74f4a42d43f061d5ff Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
| * QMacPrintEngine: Really set the printer resolutionKai Pastor2016-02-251-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | As already reported in 2009 (Qt 4.6) QPrinter never actually set the printer resolution. This change adds the necessary call to PMPrinterSetOutputResolution (available since OS X 10.5). [ChangeLog][QtPrintSupport][OS X] QMacPrintEngine now really sets the printer resolution. Task-number: QTBUG-7000 Change-Id: I3e851b62e1a7ed78564a8a6fd576b0a18d7eff63 Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
| * Remove legacy from tst_qprocess.cppJoerg Bornemann2016-02-241-8/+0
| | | | | | | | | | | | | | | | | | The windows.h include is not needed, the enums are properly known to the metaobject system nowadays, and qprocess_p.h already has a QT_NO_PROCESS guard. Change-Id: I6bbdce19f097feb8260c51a29425279049aa0192 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| * tst_QProcess: Transform loop into additional test rowsJoerg Bornemann2016-02-241-9/+18
| | | | | | | | | | | | | | | | | | | | Do not use a loop to execute similar but separate tests in tst_QProcess::softExitInSlots. Use separate test rows with distinguishable data tags instead. This way we can deduce from CI output which part of this test failed. Change-Id: Ic9bc996f2ced11b2bb1c33c1970e64937d860976 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| * QPixmap: check data ptr in isQBitmap()Anton Kudryavtsev2016-02-241-0/+9
| | | | | | | | | | | | | | Task-number: QTBUG-51271 Change-Id: I670e074ced1217d2614fa334eb365e40ef80b8b1 Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | QVector: preserve capacity in clear()Marc Mutz2016-02-291-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is what std::vector implementations usually do, because it minimizes memory fragmentation and useless allocations since no user will call clear() unless she intends to append new data afterwards. Fix calls to resize(0) that show how existing code tried to work around the issue. Adjust test. Port from QVERIFY(==) to QCOMPARE as a drive-by. [ChangeLog][QtCore][QVector] clear() now preserves capacity. To shed capacity, call squeeze() or swap with a default-constructed QVector object, see the documentation for an example. Change-Id: I9cebe611a97e027a89e821e64408a4741b31f1f6 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | Fix warnings about constructor initialization order in tst_QObject.Friedemann Kleint2016-02-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tst_qobject.cpp: In constructor 'DispatcherWatcher::DispatcherWatcher(QEventLoop&, int*, int*)': tst_qobject.cpp:5871:10: warning: 'DispatcherWatcher::m_statusAboutToBlock' will be initialized after [-Wreorder] tst_qobject.cpp:5870:10: warning: 'int* DispatcherWatcher::m_statusAwake' [-Wreorder] tst_qobject.cpp:5815:5: warning: when initialized here [-Wreorder] tst_qobject.cpp:5870:10: warning: 'DispatcherWatcher::m_statusAwake' will be initialized after [-Wreorder] tst_qobject.cpp:5869:17: warning: 'QEventLoop* DispatcherWatcher::m_eventLoop' [-Wreorder] Amends change c5d49725779292a04fed599eb7f508d334ffc5c3. Task-number: QTBUG-18434 Task-number: QTBUG-32859 Task-number: QTBUG-36434 Change-Id: I03a9c872469334741a26b4dc1783a36d48f1556f Reviewed-by: Paolo Angelelli <paolo.angelelli@theqtcompany.com> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-02-248-30/+335
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java src/plugins/platforms/windows/qwindowsfontengine.cpp src/plugins/platforms/windows/qwindowsnativeimage.cpp tests/auto/gui/kernel/qwindow/BLACKLIST tests/auto/gui/kernel/qwindow/tst_qwindow.cpp Change-Id: I649b32b260ce0ed2d6a5089021daa0d6a8db85f7
| * xcb: Deliver mouse enter event to window when closing modal windowBłażej Szczygieł2016-02-242-0/+195
| | | | | | | | | | | | | | | | | | | | | | | | When a modal window is closed and the mouse is not under the modal window - find a proper window and send a fake enter event. Added auto test for checking enter event on window when modal window is closed. Task-number: QTBUG-35109 Change-Id: I370b52d386503820ac9de21e6d05fd019ca456ec Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
| * Blacklist tst_QTreeView::setSortingEnabledChild() on Windows.Friedemann Kleint2016-02-241-0/+2
| | | | | | | | | | | | Task-number: QTBUG-51149 Change-Id: I7887aea5a6046353e235655665e53b5953f0854b Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
| * QtWidgets: Proper delivery of enter/leave event to context menusBłażej Szczygieł2016-02-241-0/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | First-level context menu grabs the mouse, so all mouse events are delivered to it. This menu passes the mouse events to submenus. Any platform delivers mouse enter/leave event differently when window is grabbed. This patch unifies event delivery to context menus - it can block some unwanted events and it emulates fake events if necessary. This patch can reduce duplicated events and can provide proper enter or leave event to additional widgets in the context menu. It can also prevent submenu from unwanted close on Windows and X11. Added autotest. Task-number: QTBUG-45565 Task-number: QTBUG-45893 Task-number: QTBUG-47515 Change-Id: I7dd476d0be23afa34e947e54aef235012d173dcf Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
| * Autotest: Blacklist tst_QFontDialog::setFont()Simo Fält2016-02-231-0/+1
| | | | | | | | | | | | | | | | | | This test fails in distros using GNOME due to most likely bad usage of native dialogs. Task-number: QTBUG-51148 Change-Id: I6e539b429266e298ce413565e0191bffa7fbe6bc Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * Re-enable tst_QTreeView::setSortingEnabled on Windows.Friedemann Kleint2016-02-182-28/+25
| | | | | | | | | | | | | | | | | | | | The test was made insignificant for Windows in change f3939d943ed132eaf3daead797d961c3ffbc31a5. As the failure is not reproduceable locally, re-enable it. Also split apart the test. Task-number: QTBUG-51149 Change-Id: I6a06bdf2369bc3bdbc73dfe4fa416e9d644f8b01 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| * Prospective fix to stabilize tst_QMdiArea::subWindowActivated2()/xcb.Friedemann Kleint2016-02-181-2/+3
| | | | | | | | | | | | | | | | Ensure that the window is active (as otherwise QMdiArea::activeSubWindow() returns 0) and add a QTRY_COMPARE. Change-Id: I7edb01d43fd2635864266614ef9a0e844f76edbf Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
* | Make it possible to preserve the library/plugin path in tst_selftestChristian Strømme2016-02-231-0/+3
| | | | | | | | | | | | | | | | | | If QT_PRESERVE_TESTLIB_PATH is set, then LD_LIBRARY_PATH and QT_PLUGIN_PATH won't be filtered out for the sub-tests started by tst_selftest. Change-Id: Ic43ba9b4d882ee36b2f7495b1c880f26aefd2629 Reviewed-by: aavit <eirik.aavitsland@theqtcompany.com>
* | Add native support for D-Bus global menuDmitry Shachnev2016-02-235-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | The protocol was originally developed by Canonical, currently supported by Unity and Plasma. Adjust some tests to use the non-native menu bar when they require it. [ChangeLog][XCB / X11] QMenuBar uses the unified D-Bus AppMenu menubar when the desktop environment supports it. Change-Id: Iea74b40522573bcc4f70168fe7fa2a49b4f3fc21 Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* | Autotests: if cross-compiling, ignore dbus status on compilation hostEirik Aavitsland2016-02-231-3/+2
| | | | | | | | | | | | | | | | | | | | The auto.pro file would bail out or skip based on the availability of the session bus at qmake time. That does not make sense for cross compilation: the session bus may be available on the target even if it is not on the compilation host. Change-Id: I459a518f3411acb39e8dcdad9d32ded1f9b57029 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QListWidget: setup connections when changing selection model.Samuel Gaist2016-02-211-0/+26
| | | | | | | | | | | | | | | | | | | | | | QListWidget uses a set of slots for its selection model that are connected only at creation time. This patch adds the missing connections cleanup and setup when a user changes the selection model. Task-number: QTBUG-50891 Change-Id: I942bae6c471ea1ae22637d09b96d6fbd422f653f Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-02-1823-42/+168
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This also reverts commit 018e670a26ff5a61b949100ae080f5e654e7bee8. The change was introduced in 5.6. After the refactoring, 14960f52, in 5.7 branch and a merge, it is not needed any more. Conflicts: .qmake.conf src/corelib/io/qstandardpaths_mac.mm src/corelib/tools/qsharedpointer_impl.h tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp Change-Id: If4fdff0ebf2b9b5df9f9db93ea0022d5ee3da2a4
| * QSqlDriver: use table prefix in WHERE clausesVyacheslav Grigoryev2016-02-171-40/+40
| | | | | | | | | | | | | | | | | | | | | | If the WHERE clause is used in a query involving multiple tables, such as generated by QSqlRelationalTableModel, the table prefix may be necessary to disambiguate column references. It is harmless if not needed. Task-number: QTBUG-43320 Change-Id: I39e1ab7359bf748afa8bcd8578220e3abb3ee24a Reviewed-by: Mark Brand <mabrand@mabrand.nl>
| * QListView: fix skipping indexes in selectedIndexes().Anton Kudryavtsev2016-02-171-0/+28
| | | | | | | | | | | | | | | | | | | | Remove spurious increment of i. Task-number: QTBUG-51086 Change-Id: I4307a6728de1e7f25c8afa31fe2066f92373f3fc Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * Update testdataMaurice Kalinowski2016-02-172-2/+2
| | | | | | | | | | | | | | | | Some entries were not updated and tests failed to succeed on platforms which need to deploy content/testdata. Change-Id: Ieb2b44c375b04cbaaecc1fb2303cc2478b86a100 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
| * winrt: Fix usage of testdataMaurice Kalinowski2016-02-171-0/+9
| | | | | | | | | | | | | | | | testdata needs to be deployed to temp and current directory needs to be set to that directory for the test to succeed. Change-Id: I2dd023af9073d90afbb4ad60fcfb50bb1af4e159 Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
| * winrt: Disable tests which connect to localhostMaurice Kalinowski2016-02-162-0/+12
| | | | | | | | | | | | | | | | | | WinRT does not allow do connect to the localhost due to security constraints and sandboxing. Hence we need to disable those currently. Change-Id: Idb8c71397a41e5fa5bad9d618dba1bb389e71b9c Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
| * Merge remote-tracking branch 'origin/5.6.0' into 5.6Liang Qi2016-02-156-1/+50
| |\ | | | | | | | | | Change-Id: I0b190005377a23a91da3563428e223b8a3b18333
| | * Crash fix: reject certain malformed bmp imagesEirik Aavitsland2016-02-052-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A malformed bmp file header could specify a negative color table size. The bmp handler would then return a QImage that claimed to be valid, but actually was invalid, having an empty color table. This would cause crash later, e.g. when attempting to paint it. Change-Id: I7df7c40867557a82dbcee44c7de061226ff232c0 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Richard J. Moore <rich@kde.org>
| | * Merge 5.6 into 5.6.0Oswald Buddenhagen2016-02-0222-16/+428
| | |\ | | | | | | | | | | | | Change-Id: I95962e28b6fc101cbbad41230585e2b61f1f6c0f
| | * \ Merge remote-tracking branch 'origin/5.5' into 5.6.0Liang Qi2016-02-011-0/+9
| | |\ \ | | | | | | | | | | | | | | | Change-Id: Ie58c80cf612efe1aa08a837f112437a87a844276
| | * | | Fix clipRect interpretation in composited backingstoresLaszlo Agocs2016-02-013-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Empty clipRect means "clip away completely", not "no clipping". Task-number: QTBUG-50719 Change-Id: I6a9dd66130716a921fe9fc245582274e3c9718fe Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
| | * | | Fix bounding rect of glyph runs in multi-line QTextLayoutEskil Abrahamsen Blomfeldt2016-01-301-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When getting the glyph runs from a QTextLayout with multiple lines, the glyph runs would be merged if possible, but not their bounding rects. This was an oversight. [ChangeLog][Text][QTextLayout] QTextLayout::glyphRuns() now returns united bounding rects for glyph runs that are merged. Change-Id: Ibbeaa99ecfc4e82e7965342efdae7c3c2b637343 Task-number: QTBUG-50715 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| * | | | Autotest: Enable make check on rhel 7.1Simo Fält2016-02-1111-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Blacklisting all tests, which were failing locally. Task-number: QTQAINFRA-949 Change-Id: I40c25ab0155b8977596d61297ab252a546515f87 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@theqtcompany.com>
* | | | | Merge "Merge dev into 5.7" into refs/staging/5.7Oswald Buddenhagen2016-02-179-2/+435
|\ \ \ \ \
| * | | | | QtConcurrentRun: add unittest for polling for isFinished()David Faure2016-02-151-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I had intermittent failures with this kind of code in my unittests, not sure why yet. This test seems to pass reliably, apart from helgrind saying it triggers the known race in QFuture::isFinished, for which Marc is working on a fix. Change-Id: I4aabe77566dc1af859a016ffe8a4cce19ddf25c8 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * | | | | QIcon::fromTheme(): add support for absolute paths.David Faure2016-02-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows methods that return an icon name, to sometimes also return an icon full path (e.g. because the icon was dynamically generated and stored into a local cache on disk) Change-Id: Ib01c3955f4b64236463846241d9814b2d0686634 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | | | | tst_QTemporaryFile: test value of openMode() after open().David Faure2016-02-151-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I had a doubt about what it would be, turns out it's ReadWrite. Turns out it's documented, too :-) Change-Id: I87c2ffc81aa240ffa88c495fe250b022d7fb3c21 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | | | | Add qOverload to select overloaded functionsPeter Kümmel2016-02-151-0/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QtCore][Global] qOverload added to select overloaded functions. Change-Id: I7c9b1b054e6631eca0b5594db59e1202ef552c33 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | | | | Introduce QHash::equal_range()Sérgio Martins2016-02-141-0/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to QMap::equal_range(). Will allow to easily fix inefficient code such as: foreach (auto value, hash.values(key)) { ... } [ChangeLog][QtCore][QHash] Added QHash::equal_range() Change-Id: I6e19e25de632e897ad83d3141d9d07f0313f7200 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * | | | | QRect(F): add transposed()Marc Mutz2016-02-131-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I didn't add a transpose(), because r = r.transposed() is perfectly capable of filling that role, and just as efficient. Existing API mistakes are no excuse to create more of them. [ChangeLog][QtCore][QRect/QRectF] Added transposed(). Change-Id: Ic38721e9028496fc9b50f4d4cef2e7a60532eed8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| * | | | | QRegion: add move ctorMarc Mutz2016-02-131-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After this change, this was the distribution of calls in QtGui and QtWidgets when the patch was developed for 5.4: QtGui QtWidgets move 23 63 copy 23 36 Change-Id: If3f536e52fc242c585e7fa0662049c0657efcc9c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| * | | | | Fix for deferredDelete() bug when calling the glib loop directlyPaolo Angelelli2016-02-121-0/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes sure that all events posted using Qt on top of the GLib event loop have the loopLevel counter incremented. This is done since Qt depends on the fact that all deleteLater() calls are issued within the scope of some signal handler (in other words, triggered by the chain sendEvent() -> notifyInternal2()). There is a side effect though: in the conditions affected by this patch, that is deleteLater()s issued within a glib event handler for example, manually calling processEvents() or sendPostedEvents() with or without the QEvent::DeferredDelete flag has the same effect, and deferred deleted events are always processed. While this is not a currently working feature which the patch breaks, this side effect seems to be difficult to avoid without separating sendPostedEvents() and processEvents() into a public and a private method, in order to detect when they are manually called. Such change could perhaps be done for Qt6. An autotest for QTBUG-36434 is also included. Autotesting for QTBUG-32859 seems to be more challenging in this respect, due to its dependency on GLib. Task-number: QTBUG-18434 Task-number: QTBUG-32859 Task-number: QTBUG-36434 Change-Id: Ib89175aa27c9e38bca68ae254d182b2cd21cf7e9 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | | | | Fix QFileSelectorPrivate::addStatics()J-P Nurmi2016-02-121-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It must clear the previously cached sharedData->staticSelectors, or else QFileSelectorPrivate::updateSelectors() does nothing and the newly added static selectors end up being ignored. Change-Id: If6997664629199be9f00de64c5dd01de2bf0a044 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>