summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui/kernel
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Tests: Remove CONFIG += parallel_test.Friedemann Kleint2015-09-0510-10/+0
| | | | | | | | | | | | | | | | | | | | | The keyword no longer has a meaning for the new CI. Change-Id: Ibcea4c7a82fb7f982cf4569fdff19f82066543d1 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | qtbase tests: Remove QT_DISABLE_DEPRECATED_BEFORE=0 for simple cases.Friedemann Kleint2015-08-312-3/+2
| | | | | | | | | | | | | | | | | | | | | Fix usage of API that is marked deprecated. Change-Id: Ie31b6ee029c5b5f015fe52fb9bcd8e94b22d6cd0 Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
* | | Add QGuiApplication::setDesktopFileName()Pier Luigi Fiorini2015-08-271-0/+16
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This property might be set by applications whose desktop entry file name cannot be determined by heuristics already in place. It is particularly useful for QtWayland as it can be used to determine the app_id simply by stripping the ".desktop" suffix from this property. Without a correct app_id, Wayland compositors won't be able to e.g. show the application icon on task managers. This property is also very interesting for X11 as there are various desktop environments trying to map windows to launchers. It will be possible to export desktopFileName as a xproperty, making such mapping less error prone. Change-Id: I0fef23f28f383639e625379ab46e36aecb338ac4 Reviewed-by: Martin Gräßlin <mgraesslin@kde.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: David Faure <david.faure@kdab.com>
* | tests/auto/gui: Replace Q[TRY]_VERIFY(a == b) by Q[TRY]_COMPARE(a, b).Friedemann Kleint2015-07-316-28/+28
| | | | | | | | | | | | | | | | | | | | | | | | - Replace Q[TRY]_VERIFY(pointer == 0) by Q[TRY]_VERIFY(!pointer). - Replace Q[TRY]_VERIFY(smartPointer == 0) by Q[TRY]_VERIFY(smartPointer.isNull()). - Replace Q[TRY]_VERIFY(a == b) by Q[TRY]_COMPARE(a, b) and add casts where necessary. The values will then be logged should a test fail. Change-Id: I624deb320c378c18a29b3707f48583d53bfd5186 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | high-DPI tweaks for autotestsMorten Johan Sørvig2015-07-302-105/+101
| | | | | | | | | | | | | | Task-number: QTBUG-46615 Change-Id: I724f56fb3bc1a4b671b5d010765ef4e354412e2e Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into HEADSimon Hausmann2015-07-171-3/+10
|\| | | | | | | | | | | | | Conflicts: src/plugins/platforms/windows/qwindowsopengltester.cpp Change-Id: Ia7abeba9395ccf84e2fa81b91a5725a86dedb9fe
| * Stabilize tst_QTouchEvent::touchBeginWithGraphicsWidget().Friedemann Kleint2015-07-161-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test sends touch events to the root item at the top left corner which fails if the views starts to scroll. Make the view sufficiently large to prevent scrolling and align at top left. FAIL! : tst_QTouchEvent::touchBeginWithGraphicsWidget() Compared values are not the same Actual (((root->touchBeginCounter))): 0 Expected (1) : 1 Loc: [/work/build/qt/qtbase/tests/auto/gui/kernel/qtouchevent/tst_qtouchevent.cpp(1471)] Change-Id: I357322ccc809ddb5cb587febf3c75cbe497e59d8 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Run tst_qwindow::positioningDuringMinimized on OSXMorten Johan Sørvig2015-07-071-1/+2
| | | | | | | | | | | | | | The test passes. Change-Id: Ic1a0aa4b861eb6fe18fed3d5b5cd4481b9f5fbad Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-07-012-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.cpp src/corelib/global/qglobal.h src/corelib/global/qsysinfo.h src/corelib/global/qsystemdetection.h src/corelib/kernel/qobjectdefs.h src/plugins/plugins.pro tests/auto/widgets/itemviews/qlistview/qlistview.pro Change-Id: Ib55aa79d707c4c1453fb9d697f6cf92211ed665c
| * Replace MAC OS X with OS XNico Vertriest2015-06-301-1/+1
| | | | | | | | | | | | Task-number: QTBUG-46374 Change-Id: I7bc633ab551740bd328a24b0ccae1d534af47138 Reviewed-by: Martin Smith <martin.smith@digia.com>
| * fix usage of wince scopeOswald Buddenhagen2015-06-051-1/+1
| | | | | | | | | | | | | | Fix style issues along the way. Change-Id: Ic6a6de28e198eb0b14c198b802e78845703909b9 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | Blacklist and skip various tests that are flakeySimon Hausmann2015-06-141-0/+2
|/ | | | | | | | | | They didn't show up in the "old" CI runs because they usually pass the second time they are executed - which the testrunner does. The new CI doesn't do that anymore, instead we now mark those tests explicitly and will track their record of passing and failing in the new metrics database. Change-Id: Id34dd6f792f38995b07b6fec88f833df64de2f8b Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Stabilize tst_qtouchevent.Friedemann Kleint2015-06-012-4/+10
| | | | | | | | | | | - Use QTRY_COMPARE() in touchBeginWithGraphicsWidget. - Change raw event translation tests to wait for the window to become active to avoid WM positioning issues. - Blacklist the raw event translation tests on Linux. Task-number: QTBUG-46266 Change-Id: I73aae375ee279a518a2a083d0ce8919cce474cb3 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Reanimate test gui/kernel/qtouchevent/tst_qtouchevent.Friedemann Kleint2015-05-292-164/+152
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add CONFIG += testcase to the .pro file which was missing. The test thus was never executed by make check and left to rot. Fix up code: - Remove module includes. - Introduce explicit constructors taking parent object for helper classes, removing calls to setParent(). - Ensure test does not leak objects by converting pointers to stack variables or introducing QScopedPointer, verify by checking for an empty window list in cleanup(). - Simplify code by removing unneeded variables. - Split up conditions in QVERIFY(). Fix tests: - Show windows were required when events are sent to QWidget::windowHandle(). - Invert the conditions checking whether touch events are accepted by widgets since widgets no longer accept them by defaults in Qt 5 after e50416066cab4be7df8382bd224d9e4ddd7a903a. - XFAIL multiPointRawEventTranslationOnTouchPad() which started to fail at some point in Qt 5. - Mark as insignificant on OS X due to crash. Task-number: QTBUG-46266 Change-Id: I6676d021afb015411a24d97d9b8f7c327d4d3c3f Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Blacklist tst_qwindow tests that are failing on Ubuntu 14.04Simon Hausmann2015-05-221-0/+6
| | | | | | | This should allow us to make the rest of 14.04 enforcing Change-Id: I37f6751e8b966b047d1bd2e49ba9482e5846acb1 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com>
* Enable checking for whether the system palette was explicitly setHarald Hvaal2015-04-201-0/+17
| | | | | | | | | | In order to obey a palette set globally on QApplication, an application attribute for checking if it's set at all is added. Task-number: QTBUG-39800 Change-Id: I26b965e6e18e0e1ca4df03cf343b3527df3636b2 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* tst_QWindow::initialSize: Use showNormal() instead of show()v5.5.0-alpha1Tor Arne Vestbø2015-03-121-3/+3
| | | | | | | | | | | | | On some platforms show() may result in the window being shown full screen, depending on the defaultWindowState of the platform. If that's the case, the resulting window size does not follow the requested size (though the internal normal geometry should). We need to use showNormal, so that we guarantee that the window state is WindowNoState. Change-Id: Ied080eaca13d759501ea292b5e6b2df4e3b32426 Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
* Prevent static functions of Q[Gui]Application from crashing if there is no ↵Friedemann Kleint2015-02-271-0/+38
| | | | | | | | | | instance. Add tests. Task-number: QTBUG-44499 Change-Id: I160b089ad3f23ab71a87519e50f8a2ef5d2a4a6f Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Fix crash when accessing QStyleHints before QGuiApplication is constructed.Friedemann Kleint2015-02-251-0/+25
| | | | | | | | | | | Make styleHints a static member variable of QGuiApplicationPrivate and fix accessor accordingly. Extend tst_QApplication::settableStyleHints() to run without QApplication instance as well and add a similar test to QGuiApplication. Task-number: QTBUG-44499 Change-Id: I42b92ef38f7dd512d08d70accfa7dd4f09a22f01 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Decide whether to synthesize mouse events on a per device basisAlexander Volkov2015-02-251-4/+30
| | | | | | | | | | | | | | | | | | | | | Currently Qt uses the QPlatformIntegration::StyleHint SynthesizeMouseFromTouchEvents to check whether to synthesize mouse events from touch events. But not only platform plugins can produce touch events, they can be created by e.g. QTest::touchEvent() and in this case we almost definitely need synthesizing regardless of the platform. This commit introduces a QTouchDevice::MouseEmulation capability which replaces use of the QPlatformIntegration::SynthesizeMouseFromTouchEvents. So it's possible to pass QTouchDevice without this capability to QTest::touchEvent() and be sure that mouse events will be synthesized. Notice that touch pads always emulate mouse events. As a result we can activate some tests which were disabled for specific platform configurations by commits 6c1670d8c273819435867c42725c0db0eee597dc and e9760f1559361c39f269fb89f1ebd01f6ee8378d. Change-Id: Idc82fa4007a095fc1cb5934979361b0023d2b793 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Add widget support for requestUpdate() and improve its docs and testsLaszlo Agocs2015-02-161-0/+20
| | | | | | | | | | | We must do something when requestUpdate() is called on a QWidgetWindow. The semantics of UpdateRequest for QWindow and QWidget are unfortunately different: for widgets an UpdateRequest means "sync the backing store". For QWindow it also involves marking as dirty. Change-Id: Idf40b3fc0873652dc081edeb12c96b3007a126ef Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com> Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* Make the QPlatformTheme::keyBindings() search deterministicMorten Johan Sørvig2015-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QPlatformTheme::keyBindings() performs a binary search into an ordered list of StandardKey -> Key Sequence mappings where each StandardKey can have multiple key sequences. Previously the order of the Key Sequences in the returned list would be indeterministic and, except for the designated pri-1 key sequence, would not necessarily correspond to the list order. (The ordering was dependent on where the binary search "hits", which again depends on the size of the list.) This caused trouble when adding mappings, since it would change the order in the returned key sequence list for existing mappings and confusingly cause (apparently) unrelated test failures. Fix this by replacing the manually coded binary search with std::equal_range. One test case needed to be fixed up because it had the result in the wrong order (verified by looking at QPlatformTheme::keyBindings). Change-Id: I555ca2736b1a8e6454dc79645a8246f80119cfc2 Done-with: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Update copyright headersJani Heikkinen2015-02-1124-168/+168
| | | | | | | | | | | | | | | | | | 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>
* Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-12-291-0/+2
|\ | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qbytearray.cpp src/gui/kernel/qplatformsystemtrayicon.cpp src/gui/kernel/qplatformsystemtrayicon.h src/plugins/platforms/xcb/xcb-plugin.pro Change-Id: I00355d3908b678af8a61c38f9e814a63df808c79
| * Prospective stabilization fix for tst_qwindow::positioning(default)Simon Hausmann2014-12-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Our theory for the failure of framePosition() not having the expected value after setFramePosition towards the end of the test is that we try to call setFramePosition() while the getting-back-from-fullscreen-to-normal window animation is still running, at which point the compositor may just choose to ignore our move request. Similarly to when going fullscreen, also wait when coming back from it. Change-Id: Icfc92f277d96dccdfad772c4aac252b2a20c6196 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* | emit lastWindowClosed even if quitOnLastWindowClosed is falseShawn Rutledge2014-12-231-0/+27
| | | | | | | | | | | | | | | | | | | | | | Behavior will agree with the docs. [ChangeLog][QtGui][QWindow] lastWindowClosed will be emitted even if quitOnLastWindowClosed is not set Task-number: QTBUG-32956 Change-Id: I7bb269d53894859fee27e171eea7ad472ea86af0 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into devSimon Hausmann2014-12-181-0/+13
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.h src/platformsupport/platformcompositor/qopenglcompositor.cpp src/platformsupport/platformcompositor/qopenglcompositorbackingstore.cpp tests/auto/gui/kernel/qwindow/tst_qwindow.cpp Change-Id: I5422868500be695584a496dbbbc719d146bc572d
| * Add some debug information to tst_qwindowSimon Hausmann2014-12-181-0/+12
| | | | | | | | | | | | | | | | | | The test still fails sporadically at a new place, so this adds some debug information when it fails to may help us identify what is going wrong. Change-Id: Ife0f171299ef7e800a2d808602e76ca2f3885964 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into devSimon Hausmann2014-12-101-23/+12
|\| | | | | | | | | | | | | | | Conflicts: doc/global/template/style/online.css mkspecs/android-g++/qmake.conf Change-Id: Ib39ea7bd42f5ae12e82a3bc59a66787a16bdfc61
| * Attempt to make the positioning test of QWindow more reliableSimon Hausmann2014-12-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The part of the test that verifies that setFramePosition moves the window successfully appears to be very unreliable in the CI system. The "tested" frame position is calculated to be at (40, 40) relative to the top left of the available screen geometry, which can be non-zero due to task bars and similar system ui elements. However that position appears to be unreliable in the sense that the window manager doesn't seem to always respect that. So instead let's try placing the window (by frame position) in the center of the screen instead. Change-Id: I96fe6c37e748fc18262632b5effe5a9e90dc0028 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
| * Make tst_qwindow::positioning more reliableSimon Hausmann2014-12-041-22/+11
| | | | | | | | | | | | | | | | | | Don't check for absolute counts of resize events but just check if we were resized. Also use QTest::qWaitForWindowExposed instead of QTRY_COMPARE and checking for QEvent::Expose. Change-Id: Ie383493a8ce6d88cad50bd6375d432ad1578449c Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* | Send events when platform surfaces are created/about to be destroyedSean Harmer2014-11-171-1/+75
|/ | | | | | | | | | | | | These synchronously delivered events allow applications to correctly and conveniently handle native platform surfaces being destroyed. This is particularly useful when doing rendering on a non-gui thread as it allows to shutdown rendering before the native surface gets destroyed from under us. Task-number: QTBUG-42476 Task-number: QTBUG-42483 Change-Id: I63f41bbdb32f281d0f3b8ec2537eb2b0361f3bb3 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Fix QOpenGLWindow tests when devicePixelRatio != 1Jørgen Lind2014-10-201-9/+9
| | | | | Change-Id: I83d71de8b9d735cd649a6c514e41a9ff23625005 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Fix memory leak in QClipboard::setMimeData()Eskil Abrahamsen Blomfeldt2014-10-101-6/+12
| | | | | | | | | | | | | | | | | | | The setMimeData() function is documented to take ownership of the object passed in, but in the case where the platform plugin did not support the requested mode, we would simply return without deleting the object nor telling the application, so it would cause a potential memory leak. We need to honor the contract, even when we fail to set the mime data. Test was updated to avoid verifying the leak in cases where the platform does not support all modes. [ChangeLog][QtGui][Clipboard] Fixed a memory leak in setMimeData() when the platform plugin did not support the requested mode. Task-number: QTBUG-41852 Change-Id: I2112da1613199fe1b56724e7ccf097b9e912c117 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Update license headers and add new license filesMatti Paaso2014-09-2424-452/+260
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 - Removed LICENSE.GPL Change-Id: Iec3406e3eb3f133be549092015cefe33d259a3f2 Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
* Add an option to share between TLWsLaszlo Agocs2014-09-101-0/+27
| | | | | | Task-number: QTBUG-41191 Change-Id: I510d1631926ed0d9e371703d22229aed92432aa6 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Fix linking of tst_qwindow with dynamic Open GL.Friedemann Kleint2014-09-081-0/+2
| | | | | | Task-number: QTBUG-40696 Change-Id: If80a5e9b96e2eb7e50e02eefbe6e54d0b028c144 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Windows: Prevent hidden transient children from being re-shown by Windows.Friedemann Kleint2014-08-281-1/+58
| | | | | | | | | Bring back code from Qt 4 to handle WM_SHOWWINDOW / SW_PARENTOPENING correctly. Task-number: QTBUG-40696 Change-Id: If018bf90573f495dbe32d0c46f522ccde0691ebb Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_qtouchevent: Skip tests that fail with qwindow-compositor.Robin Burchell2014-08-231-0/+18
| | | | | Change-Id: I6b37e04b8a25942f36ae09a8b0c6a3e3610eec19 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_qwindow: Skip tests that fail with qwindow-compositor.Robin Burchell2014-08-231-0/+30
| | | | | Change-Id: I95d180cfa30b7398344f5a851e0bf849e7834a7a Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_qinputmethod: Skip tests that fail with qwindow-compositor.Robin Burchell2014-08-231-0/+6
| | | | | Change-Id: I0163bffe49e3fcbb8132c4926ec975e3a6979285 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* tst_qguiapplication: Skip tests that fail with qwindow-compositor.Robin Burchell2014-08-231-0/+7
| | | | | Change-Id: Iac3e9e8d4d857af944de66a95cebc9955bd8beda Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Skip the expose region test on WindowsLaszlo Agocs2014-08-201-0/+2
| | | | | | | | In some CI configurations this fails from time to time. Have to disable it unless we can make it more robust somehow. Change-Id: Iadd8904d7223a6aeff53dafa36b94df3f60e1ad8 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* tst_qmouseevent_modal: Replace some qWait with QTRY_VERIFY.Robin Burchell2014-08-181-8/+4
| | | | | | | Takes the total time for this test from ~1.2 seconds to ~0.42 seconds for me. Change-Id: I426e600a7afe01d7343108b432eda8b83d6f3d85 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Make the expose region local on all platformsLaszlo Agocs2014-08-121-0/+16
| | | | | | | | | | | | | | | | | | | | | QExposeEvent::region() reports a region in a random coordinate system. The behavior is undocumented and the platform plugins do different things. xcb, offscreen and ios are correct. These set the region in local coordinates, which is the most logical interpretation of the expose region. windows is almost correct, except for one occurrence. cocoa and others need changes: passing in geometry() as the exposed region is always wrong. The patch documents the expected behavior both for QExposeEvent and internally in QWindowSystemInterface. The problematic plugins are fixed to use local coordinates. Task-number: QTBUG-40470 Change-Id: I6ded3154d14254fa71d4292d8e1b5e6cf696c81a Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* QPixelFormat: don't inherit itMarc Mutz2014-08-091-11/+11
| | | | | | | | | | | | | | | | | | | | | Instead of abusing inheritance to provide convenience constructors, use simple inline constructor functions. The name got a lower-case q to indicate a free function. The usual fromXYZ() static methods were deemed not fitting in this case in the initial round of review, since they implied some kind of conversion while these functions are simply constructors of formsts, which contain no data. This also solves the problem that some of these ctors could have been called with just one argument and were therefore candidates for hidden QPixelFormat temporary injection. QPixelFormatRgb was renamed to qPixelFormatRgba to explain the third argument at the call site better. There seem to be no users of this class in qt5.git at this time. Change-Id: Ib4fe8ceb2d30744127b116a748724a3406400eb8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add a test for some copy semantics to QPaletteMarc Mutz2014-08-061-0/+22
| | | | | | | It isn't a thorough check of all the mutable methods for detaching, but a start. Change-Id: I523fd30d3459186654e12fd25c384ed990ab7a00 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* QPalette: add move constructorMarc Mutz2014-08-061-0/+8
| | | | | | | | | | As with many other implicitly shared classes, efficient move semantics requires setting the d-pointer to nullptr, which then needs to be checked for in the dtor and the copy assignment operator. Change-Id: I654d181a1dfdd9a16e2f9fb96b57475cdd0b4561 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Introduce QRasterWindowLaszlo Agocs2014-08-053-1/+109
| | | | | | | | | | | | | | | | | A simple convenience class providing a QWindow that has a paintEvent and supports opening a painter on itself. It behaves exactly like QOpenGLWindow in this respect, which is not surprising since they share the same base class (QPaintDeviceWindow). QRasterWindow does not however have any OpenGL dependencies and will be present in -no-opengl builds too. [ChangeLog] Added QRasterWindow, a thin convenience wrapper for a QWindow on which a QPainter can be opened. Done-with: Jorgen Lind <jorgen.lind@digia.com> Change-Id: I37e82720492945d7b85d5f713eea8d5f7556e511 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
* Introduce QOpenGLWindowLaszlo Agocs2014-08-053-0/+311
| | | | | | | | | | | [ChangeLog] Added QOpenGLWindow. This serves as a convenience class for creating windows showing OpenGL content via an API similar to QGLWidget and without any widget dependencies. Done-with: Jorgen Lind <jorgen.lind@digia.com> Task-number: QTBUG-36899 Change-Id: I52e9bc61acb129dbfd3841b3adeffab2dbcf7f05 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>