summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui/kernel
Commit message (Collapse)AuthorAgeFilesLines
* Android: Blacklist some cases in tst_qwindowMårten Nordheim2018-06-281-0/+23
| | | | | | | | | | | | | | Task-number: QTBUG-69154 Task-number: QTBUG-69155 Task-number: QTBUG-69156 Task-number: QTBUG-69157 Task-number: QTBUG-69159 Task-number: QTBUG-69160 Task-number: QTBUG-69161 Task-number: QTBUG-69162 Task-number: QTBUG-69163 Change-Id: Ie44de7fd3f4871bebcaadcc4a8735bf47692ea49 Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
* Make tests compile for AndroidLiang Qi2018-06-252-2/+2
| | | | | | | | | | | | | | | | | | This only enables compilation, it doesn't fix any test. Qt on Android supports process, but not TEST_HELPER_INSTALLS. See also acdd57cb for winrt. android-ndk-r10e is used to compile, see http://doc-snapshots.qt.io/qt5-5.11/androidgs.html . corelib/io/{qdir,qresourceengine} need to be fixed later. Done-with: Frederik Gladhorn <frederik.gladhorn@qt.io> Done-with: Mårten Nordheim <marten.nordheim@qt.io> Change-Id: I34b924c8ae5d46d6835b8f0a6606450920f4423b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* Android: Blacklist tst_qkeyeventMårten Nordheim2018-06-211-0/+6
| | | | | | Task-number: QTBUG-68974 Change-Id: I9178f91b44bc27a055a4bb743374a8bd1dfa5599 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* tests: unblacklist tst_qwindow.cpp::modalWindowPosition()Gatis Paeglis2018-05-031-2/+0
| | | | | | | For details see QTBUG-67757. Change-Id: I82559cb667a8622f29f7e6a6f24bc2b1e59917d6 Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io>
* Skip flaky tst_QWindow::childWindowPositioning on WaylandJohan Klokkhammer Helsing2018-04-251-0/+3
| | | | | | | | | | Sometimes causes protocol errors (i.e. termination) on Wayland with xdg-shell v6. Task-number: QTBUG-67648 Change-Id: I6c855affb145590f47a425d233c5fd6b7e1e8914 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Blacklist tst_QWindow::isActive on UbuntuKari Oikarinen2018-04-181-0/+3
| | | | | | Task-number: QTBUG-67768 Change-Id: Ie1e0b406c152c854ef3629fa4d469dd73452f128 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
* Fix crash if QPixmap::defaultDepth() is called when no QGuiApplicationEirik Aavitsland2018-04-121-0/+2
| | | | | | | | | | This static method can be called before QGuiApplication is created. At that point there is yet no primary screen, so the implementation needs to guard against dereferencing a nullptr. Task-number: QTBUG-67309 Change-Id: I6b7b9e97b1c3c79bf2f9c6d6247c3b10f39f7a55 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* tests/auto/gui/kernel: Use QTRY_VERIFY instead of manual wait loopsKari Oikarinen2018-04-112-12/+3
| | | | | | | | This reduces the timeout from 10 seconds to the default 5, but the tested events (resize events, painting) seem like something that should happen in 5 seconds. Change-Id: I1d12372f37264bf7be64096e43813cd03f567102 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* tst_QClipboard: Skip on Wayland, as it requires real input eventsJohan Klokkhammer Helsing2018-04-091-12/+7
| | | | | | | | On Wayland, manipulating the clipboard requires an input event serial, which is not possible to get unless the compositor sends us input events. Change-Id: If5231a5db85f8d6ad988ea93f240cee0c3466f9f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* tst_QTouchEvent: Wait for window exposed instead of activeJohan Klokkhammer Helsing2018-04-091-4/+4
| | | | | | | | | | | This makes the tests pass on Wayland compositors that don't automatically give focus to newly created windows. Such as a headless Weston, which is very useful for testing. Task-number: QTBUG-66846 Change-Id: I502504b333499c89be193a3ebc19d41264a13580 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* tst_QCursor::equality(): Silence warningsFriedemann Kleint2018-04-051-0/+3
| | | | | | | | | | Silence numerous warnings: QCursor: Cannot create bitmap cursor; invalid bitmap(s) Amends 6445aa4b064931cda36243aafc1600915fac093e. Change-Id: I7b467cdeeaa7a854c2878cf1ed2a6113d8c96059 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* tst_QOpenGLWindow: Move resizing to separate testJohan Klokkhammer Helsing2018-03-191-2/+23
| | | | | | | | | | Resizing is broken on Wayland EGL on Intel Mesa. Move resizing into a separate test and skip it on Wayland it until it's fixed in Mesa. Task-number: QTBUG-66848 Change-Id: I9450a5a588b0f5d8f0bd0210aae2dc72aa48d622 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Revert "Blacklist tst_QWindow::testInputEvents on Windows"Liang Qi2018-03-151-2/+0
| | | | | | | | | | | | | This reverts commit fdddb3a4814f588e3ee87a6c1a0a6791f6ef0298. After b85b272c26810e54a4ceb0707cf4569f87517b67, Windows 10 (msvc2017-x86) is tested on Windows 10 (msvc2017-x86_64). The failure is gone. Task-number: QTBUG-66798 Task-number: QTBUG-66216 Change-Id: Iba353b18b0be1346007fde674a9f768c4b9bf384 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Revert "Blacklist tst_QWindow::modalWindowEnterEventOnHide_QTBUG35109 on ↵Liang Qi2018-03-151-1/+0
| | | | | | | | | | | | | | windows ci" This reverts commit a0db55040d21d17b1bba2ab406cb51c0f3a671aa. After b85b272c26810e54a4ceb0707cf4569f87517b67, Windows 10 (msvc2017-x86) is tested on Windows 10 (msvc2017-x86_64). The failure is gone. Task-number: QTBUG-66756 Change-Id: I4a8e8c62b4a021d144d570c38c4f4c10e8b1317c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Don't skip tests in tst_QTouchEvent on WaylandJohan Klokkhammer Helsing2018-03-131-21/+0
| | | | | | | | They seem to be running just fine Task-number: QTBUG-66849 Change-Id: Ia48d47c0fff173eb1d6eba38bdba752a91bd2b56 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* tst_QInputMethod check WindowActivation capability instead of platformJohan Klokkhammer Helsing2018-03-121-4/+4
| | | | | | Task-number: QTBUG-66849 Change-Id: I72a8751f1fc0df7ff5a371c854cb975b3cee8fd2 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* tst_QGuiApplication check WindowActivate capability instead of platformJohan Klokkhammer Helsing2018-03-121-4/+7
| | | | | | Task-number: QTBUG-66849 Change-Id: I31dfe6d38435b043eb21d2de02d44551649444c9 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Blacklist tst_QWindow::modalWithChildWindow on openSUSEKari Oikarinen2018-03-071-0/+2
| | | | | | | Task-number: QTBUG-66851 Task-number: QTBUG-66216 Change-Id: Iea3d7823ccef718b52d097298250efddc981f3bb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Check for WindowActivation capability instead of platformJohan Klokkhammer Helsing2018-03-061-12/+12
| | | | | | | | | | | Before running tests that depend on QWindow::requestActivate Gets rid of several Wayland platform checks in tst_QWindow. Change-Id: I7a5e029044a968dfcf87ecbb5105c01d52852d35 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io>
* Make platform checks for Wayland more readableJohan Klokkhammer Helsing2018-03-061-5/+10
| | | | | | | | And make it easier to fix if platformName == wayland-egl etc. Change-Id: Ia2d62ba003796e08f3e8a5bbfd0c3fd9d185e4e0 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Skip failing tests in tst_QWindow on WaylandJohan Klokkhammer Helsing2018-03-061-0/+6
| | | | | | Task-number: QTBUG-66824 Change-Id: I33b826c2a373b264cc9b66444c52070eac1cdd5c Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Make tst_QWindow::generatedMouseMove pass on WaylandJohan Klokkhammer Helsing2018-03-051-1/+1
| | | | | | | | By using qWaitForWindowExposed instead of qWaitForWindowActivated. Task-number: QTBUG-66824 Change-Id: Idf604157070731d9c92ccf64d8349c8571960b7c Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Don't skip tst_QWindow::windowModality_QTBUG27039 on WaylandJohan Klokkhammer Helsing2018-03-051-3/+0
| | | | | | | | The test actually passes, so there's no need to skip it. Task-number: QTBUG-66824 Change-Id: Id091776ff7ca7637fdcf0e0ced833982b5788d92 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Blacklist tst_QWindow::modalWindowEnterEventOnHide_QTBUG35109 on windows ciLiang Qi2018-03-051-0/+1
| | | | | | | Task-number: QTBUG-66756 Change-Id: I5a00625b73085a9ac2471b03bcc21db4b9a98962 Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Blacklist tst_QWindow::testInputEvents on WindowsKari Oikarinen2018-03-021-0/+2
| | | | | | | | | | Multiple recent failures on Windows 10. Task-number: QTBUG-66798 Task-number: QTBUG-66216 Change-Id: I9d23d0381dbe62eb5469863f14e1a05548ce7dfa Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* qtestlib: fix support for pressing multiple mouse buttonsGatis Paeglis2018-03-011-20/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After a37785ec7638e7485112b87dd7e767881fecc114 went in, it become apparent that multi mouse button state handling in qtestlib is non-existent, for details see QTBUG-64030 and QTBUG-63786. What happened behind the scenes often was not what one would expect based on the provided QTest::mouse* input sequence - events went missing, incorrect events were generated, each subsequent test function started with a state set from the function that run earlier. It is easy to see how a minor change in one test could easily affect outcome of other tests. With a37785ec7638e7485112b87dd7e767881fecc114, Qt platform plugins are now responsible for sending explicit mouse button type and state information; qtestlib should take full responsibility now as well. But using the new API from a37785ec7 alone in qtestlib is not sufficient. We need to reset mouse state between each new test function run (we do this at function scope as that fits with the current qtestlib API user expectations). This patch implements the necessary reseting logic. Updated tst_qwindow.cpp::generatedMouseMove() to use QTest::mouse* APIs. That test requires pressing multiple buttons, it was not possible with QTest::mouse* APIs before this patch. Added an auto test for multiple mouse button pressing/release in tests/auto/testlib/selftests/mouse/. And few other tests which are currently QSKIP-ed, but should be considered when re-designing qtestlib APIs. Task-number: QTBUG-64030 Change-Id: I39fdcbc73a467a7463ce2aed622bf22484095635 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Merge remote-tracking branch 'origin/5.9' into 5.11Liang Qi2018-02-141-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/corelib/animation/qvariantanimation.cpp src/corelib/global/qglobal.cpp src/corelib/global/qlogging.cpp src/corelib/io/qprocess_win.cpp src/corelib/json/qjsonarray.cpp src/corelib/tools/qsimd_p.h src/corelib/tools/qtimezoneprivate_p.h src/corelib/xml/qxmlstream_p.h src/gui/kernel/qsimpledrag.cpp src/gui/kernel/qsimpledrag_p.h src/plugins/generic/generic.pro src/plugins/platforms/cocoa/qcocoamenu.mm src/widgets/styles/qmacstyle_mac.mm tests/auto/concurrent/qtconcurrentmap/BLACKLIST tests/auto/corelib/io/qfileinfo/tst_qfileinfo.cpp tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp tests/auto/gui/kernel/qwindow/BLACKLIST tests/auto/widgets/dialogs/qmessagebox/BLACKLIST Change-Id: I508d686cf20f7f8cc6a7119b9bc7c3bbb505c58e
| * Blacklist the positioning test on all linuxes, it fails on opensuse tooVille Voutilainen2018-02-131-2/+1
| | | | | | | | | | | | Task-Id: QTQAINFRA-1332 Change-Id: I38a36c42f88671430452cdde8098961b67854ae7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | qtbase: cleanup BLACKLIST filesChristian Ehrlicher2018-02-131-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cleanup BLACKLIST files which contain entries for CI-systems which are no longer active: - opensuse-13.1 - opensuse-42.1 - osx-10.8 - osx-10.9 - osx-10.10 - rhel-7.1 - rhel-7.2 - rhel-7.3 - ubuntu-14.04 - windows msvc-2010 Change-Id: I25590b0807a4454f9dc92aa4ea61300f7c9af56b Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2018-01-202-3/+1
|\ \ | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/widgets/itemviews/qtreeview/tst_qtreeview.cpp Change-Id: If089d5010d15c33b3c1f13912d4386207456c1a9
| * | Merge remote-tracking branch 'origin/5.9' into 5.10Tor Arne Vestbø2018-01-162-3/+1
| |\| | | | | | | | | | Change-Id: I896b0cf54f317c4336cc3d3db319a0b89e421728
| | * macOS: Blacklist modalWindowEnterEventOnHide_QTBUG35109 instead of skippingTor Arne Vestbø2018-01-092-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | We have the ability to blacklist tests for CI runs now. Task-number: QTBUG-35109 Change-Id: I8590e83faba764dce2d52e8c62e2e2c63f7bf219 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * tests: make exposeEventOnShrink_QTBUG54040 not flakey on xcbGatis Paeglis2017-10-171-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From: https://tronche.com/gui/x/xlib/events/exposure/expose.html "The circumstances in which the X server generates Expose events are not as definite as those for other events." On windows with XCB_GRAVITY_NORTH_WEST flag set we should not get expose events according to e2665600c09358854bb0b29389cc873a2684f77b, but as stated earlier this might not always be true. Nevertheless, sometimes we get expose event from X server when shrinking window, but most of the time we don't. Make the test not flakey by checking that we get at least 1 expose event, instead of exactly 1. Now running test 500 times in a loop does not fail. Task-number: QTBUG-63424 Change-Id: I8004e622020cc09e11b7d592faf6d9ee1b9cfee2 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit 542e11ab2bd4a607fda8f559cc7efc32371b4e0e) Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io>
* | | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2018-01-111-0/+31
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/3rdparty/harfbuzz-ng/src/hb-private.hh src/sql/doc/snippets/code/doc_src_sql-driver.cpp src/sql/doc/src/sql-driver.qdoc Change-Id: I38f0e82fcd37926cbf3c1915e009a731040d4598
| * | Make QPalette::setBrush() check before detachingGabriel de Dietrich2018-01-041-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Setting the same brush on the same group and role should not detach nor alter the result of QPalette::isCopyOf(). Task-number: QTBUG-56743 Change-Id: Ic2d0dd757d703b01e8c5d835a8c124b3317653f4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | | QGuiApplication: Add fontChanged signalKai Uwe Broulik2018-01-111-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes the need to install an event filter on qApp just for this. A similar thing was done with setPalette to reduce the number of event filters in e.g. SystemPalette and Quick Controls. [ChangeLog][QtGui][QGuiApplication] Added fontChanged signal Change-Id: Ifa843aa42b91ac63ab17c3b064ac0e764aac77d3 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | Make tst_QOpenGLWindow pass on platforms where the default FBO != 0Johan Klokkhammer Helsing2017-12-131-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test would fail on Wayland with window decorations enabled because there window content is drawn to an FBO before it's blended with the window decorations (also drawn by the client). Task-number: QTBUG-51741 Change-Id: I7c74ad235c6a2d50231a9f863da1810675dd4eae Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Merge "Merge remote-tracking branch 'origin/5.10' into dev" into ↵Liang Qi2017-11-061-1/+1
|\ \ \ | | | | | | | | | | | | refs/staging/dev
| * | | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2017-11-051-1/+1
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/minimum-linux.S src/network/access/qhttpthreaddelegate.cpp src/widgets/kernel/qwidgetwindow.cpp Change-Id: Id2e817e85f85c68f5482c9a12912d35590f9d5f8
| | * | tests: Fix warnings about inconsistent overrideFriedemann Kleint2017-10-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tst_noqteventloop.cpp 'event' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtreeview.cpp 'canFetchMore' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtreeview.cpp 'fetchMore' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtreeview.cpp 'hasChildren' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtreeview.cpp 'rowCount' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtreeview.cpp 'columnCount' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtreeview.cpp 'index' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtreeview.cpp 'parent' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtreeview.cpp 'data' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtextedit.cpp 'begin' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtextedit.cpp 'end' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtextedit.cpp 'updateState' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtextedit.cpp 'drawPixmap' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] tst_qtextedit.cpp 'type' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] Change-Id: I2a0c5da15994619383c1f90fee311927e58d7af0 Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
* | | | mouse handling: fix issue when mixing QTest::mouse* APIsGatis Paeglis2017-11-051-0/+53
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... that become apparent after switching qtestlib to use enhanced mouse event (a37785ec7638e7485112b87dd7e767881fecc114). With the old code path, where QGuiApplication was deducing event type it would deduce mouse release event even when there wasn't one. The new code path doesn't do that, which revealed an obscure problem when mixing QTest::mouse* APIs (where QWindow overload goes through QWindowSystemInterface API and QWidget overload goes through QApplication::notify() and sets mouse_buttons from there). What happened in this specific test case "./tst_qtreeview selection statusTip" was: // tst_QTreeView::selection sets mouse_buttons = Qt::LeftButton from QApplication::notify QTest::mousePress(widget, Qt::LeftButton, ..) // tst_QTreeView::statusTip QTest::mouseMove(window, ) The old code path sees that position and state has changed, creates a fake mouse event, which gets deduced as mouse release even if there wasn't one. And by luck this happened to set mouse_buttons=Qt::NoButton. So when we use mouse_buttons later to create QMouseEvent everything works as expected. With the enhanced mouse we don't clear the pressed button from mouse_buttons (set in tst_QTreeView::selection) as this is done only from press/release events, then pass it to QMouseEvent and later because of that QApplicationPrivate:: pickMouseReceiver() returns nullptr. The fix here is to use e->buttons when constructing QMouseEvent, instead of relying on mouse_buttons which gets changed from various places and has other issues that can not be solved without invalidating the current documentation of QGuiApplication::mouseButtons() (e.g QTBUG-33161). Tests and any Qt code in general should avoid using the fragile QGuiApplication::mouseButtons() API. This patch does not affect the old code path (it continues working as before) and fixes the issue described above for the enhanced mouse API. The enhanced mouse API actually is better in a way that it does not get affected by button state from test functions that run earlier, as opposed to the old code path where every subsequent test function uses mouse_buttons in whatever state it was left by the test functions that run earlier. Not relying on mouse_buttons when creating QMouseEvent helped also to discover other logic error. This caused an in incorrect button state for a mouse move event that is generated for a release event that simultaneously changes a mouse position. Task-number: QTBUG-64043 Change-Id: I6ad8e49d8437ab0858180c2d0d45694f3b3c2d60 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Merge remote-tracking branch 'origin/5.10' into devLiang Qi2017-10-176-17/+23
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/network/fortuneclient/client.cpp examples/network/fortuneserver/server.cpp src/platformsupport/platformcompositor/qopenglcompositorbackingstore_p.h src/plugins/platforms/cocoa/qcocoabackingstore.h src/plugins/platforms/cocoa/qcocoaintegration.h src/plugins/platforms/cocoa/qcocoascreen.h src/plugins/platforms/ios/qiosbackingstore.h src/plugins/sqldrivers/oci/qsql_oci.cpp src/widgets/kernel/qwidgetwindow.cpp Change-Id: Ia6dd2c52d4a691b671cf9a2ffca70deccece8f10
| * | Ensure result of all QTest::qWaitFor are verifiedTor Arne Vestbø2017-10-054-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | The qWaitFor functions themselves can not trigger a test failure, as that will not result in the test function exiting early, so every single call to qWaitFor needs to be wrapped in a QVERIFY. Change-Id: Id15a1549f31d06cdbf788e1d84ea431c28636ec8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-10-041-0/+2
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qconfig-bootstrapped.h src/corelib/global/qglobal.h src/corelib/tools/qcryptographichash.cpp src/corelib/tools/qcryptographichash.h src/corelib/tools/qmessageauthenticationcode.cpp src/plugins/platforms/windows/qwindowswindow.h tests/auto/gui/kernel/qwindow/BLACKLIST tests/auto/widgets/itemviews/qitemdelegate/BLACKLIST Change-Id: Ib68112de985a3d714c2071f47c10e907e4f0229a
| | * Blacklist tst_QWindow:testInputEvents on RHEL 7.4Tony Sarajärvi2017-09-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Swapping from RHEL 7.2 to 7.4 produces new autotest failures. Task-number: QTBUG-63433 Change-Id: I3e59aa73b5874cfec06e166f521e06b0c7829743 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| * | Clean up OS version checks for Apple platformsJake Petroules2017-09-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Convert QSysInfo/QOperatingSystemVersion to __builtin_available where required or possible, or to QOperatingSystemVersion where __builtin_available cannot be used and is not needed (such as negated conditions, which are not supported by that construct). Change-Id: I83c0e7e777605b99ff4d24598bfcccf22126fdda Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | tests: make exposeEventOnShrink_QTBUG54040 not flakey on xcbGatis Paeglis2017-09-261-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From: https://tronche.com/gui/x/xlib/events/exposure/expose.html "The circumstances in which the X server generates Expose events are not as definite as those for other events." On windows with XCB_GRAVITY_NORTH_WEST flag set we should not get expose events according to e2665600c09358854bb0b29389cc873a2684f77b, but as stated earlier this might not always be true. Nevertheless, sometimes we get expose event from X server when shrinking window, but most of the time we don't. Make the test not flakey by checking that we get at least 1 expose event, instead of exactly 1. Now running test 500 times in a loop does not fail. Task-number: QTBUG-63424 Change-Id: I8004e622020cc09e11b7d592faf6d9ee1b9cfee2 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | Replace Q_NULLPTR with nullptr where possibleKevin Funk2017-09-192-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remaining uses of Q_NULLPTR are in: src/corelib/global/qcompilerdetection.h (definition and documentation of Q_NULLPTR) tests/manual/qcursor/qcursorhighdpi/main.cpp (a test executable compilable both under Qt4 and Qt5) Change-Id: If6b074d91486e9b784138f4514f5c6d072acda9a Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | | Replace Q_DECL_OVERRIDE with override where possibleKevin Funk2017-09-194-15/+15
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remaining uses of Q_DECL_OVERRIDE are in: src/corelib/global/qcompilerdetection.h src/corelib/global/qglobal.cpp doc/global/qt-cpp-defines.qdocconf (definition and documentation of Q_DECL_OVERRIDE) tests/manual/qcursor/qcursorhighdpi/main.cpp (a test executable compilable both under Qt4 and Qt5) Change-Id: Ib9b05d829add69e98a86238274b6a1fcb19b49ba Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Merge remote-tracking branch 'origin/5.9' into devLiang Qi2017-08-311-0/+42
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/examples.pro qmake/library/qmakebuiltins.cpp src/corelib/global/qglobal.cpp Re-apply b525ec2 to qrandom.cpp(code movement in 030782e) src/corelib/global/qnamespace.qdoc src/corelib/global/qrandom.cpp src/gui/kernel/qwindow.cpp Re-apply a3d59c7 to QWindowPrivate::setVisible() (code movement in d7a9e08) src/network/ssl/qsslkey_openssl.cpp src/plugins/platforms/android/androidjniinput.cpp src/plugins/platforms/xcb/qxcbconnection.cpp src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/widgets/widgets/qmenu.cpp tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp Change-Id: If7ab427804408877a93cbe02079fca58e568bfd3