summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/qnx
Commit message (Collapse)AuthorAgeFilesLines
* QNX: Prevent rendering when app is minimizedBernd Weimer2013-09-123-1/+20
| | | | | | | | | Windows will only be exposed and hence rendered when they are not minimized. This will save useless computations and hence battery. Change-Id: I83166cc6c3d89e878106c998a35890dd7788ed8a Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-273-31/+21
|\ | | | | | | | | | | | | Conflicts: examples/widgets/doc/src/addressbook-fr.qdoc Change-Id: Id1196e8e0c6445f1616c3f29234c974d809f8e48
| * BB10: Do not send deactivate event twiceRafael Roquetto2013-08-221-0/+2
| | | | | | | | | | | | | | | | | | | | On BB10, NAVIGATOR_WINDOW_INACTIVE is called before NAVIGATOR_WINDOW_INVISIBLE, already triggering handleWindowGroupDeactivated() Change-Id: I7d82c0220fe8dc8e87bfa2b31af6085c7d1d6cee Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
| * Playbook: Fix rendering when thumbnailed/minimizedRafael Roquetto2013-08-221-0/+3
| | | | | | | | | | | | | | | | | | | | | | On Playbook, rendering should happen when the application is thumbnailed, therefore we need to send a window activated event to resume rendering once the thumbnail is restored from the minimized state. Change-Id: I0fa5da483dc101e25f718e52859a66edfe5c66c7 Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
| * [QNX]Fix transparenciesAndreas Holzammer2013-08-212-31/+16
| | | | | | | | | | | | | | | | | | | | It is not guaranteed that buffers are cleared when they are allocated. So don't use a buffer for the root window, and clear buffers for the actual content. Change-Id: I42939baec03fa05968c83bbf2739ab8d1d70c8be Reviewed-by: Matt Hoosier <matt.hoosier@garmin.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QNX: Enable rendering on different displays using OpenGLFabian Bumberger2013-08-086-148/+180
| | | | | | | | | | | | Change-Id: Ife9c090cff732aba42a5cbc04640721e8fdde69d Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Sergio Ahumada2013-07-241-1/+1
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-07-231-1/+1
| |\| | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/dbus/qdbusabstractinterface/tst_qdbusabstractinterface.cpp Change-Id: I18a9d83fc14f4a9afdb1e40523ec51e3fa1d7754
| | * QNX: Handle Qt::WindowDoesNotAcceptFocus correctly.Friedemann Kleint2013-07-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Discovered while working on: Task-number: QTBUG-32385 Change-Id: Id1ff31ea6a367983676125810b4f49629233d374 Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | | Bump QPA-API-version.Friedemann Kleint2013-07-231-1/+1
|/ / | | | | | | | | | | | | | | | | | | | | Changes f5dbc876378ae58a7bdfe1e9664fc81caca18dfb (Use QUrl in QFileDialog API) and c96a6ab627100452864eb4d8da973300401c1bfa (Pass argc, argv to platform plugin) introduced changes to the plugin API. Task-number: QTBUG-29396 Change-Id: I46ee22d16f045b69f141dc6c982017586efef662 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: David Faure (KDE) <faure@kde.org>
* | Have QFileDialog use QUrl internallyKevin Ottens2013-07-183-25/+33
| | | | | | | | | | | | | | | | | | | | | | | | When using the native dialog and through the helper, we use QUrl in QFileDialog. It is preparatory work for having QUrl based methods on QFileDialog interface itself. Done-with: sean.harmer@kdab.com Done-with: faure@kde.org Change-Id: I61e99d498252241f38ec05724702a90ba050c4bb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | QNX: Silenced propagateSizeHints warningBernd Weimer2013-07-152-0/+8
| | | | | | | | | | | | | | | | | | On QNX propagateSizeHints is ignored. Default base class implementation is overridden to silence warning. Change-Id: I6c2df5e1943fdc1170c772b9bb4feb091726790f Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | QNX: Fix invalid screen size when attaching a second displayFabian Bumberger2013-07-021-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | When attaching a display several SCREEN_EVENT_DISPLAY events might be received. SCREEN_PROPERTY_SIZE might not be populated in the first event we get, so we wait. Change-Id: I357108bb347eb92cd773d293bfe7cd462fb7e527 Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Petr Nejedlý <pnejedly@blackberry.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-06-204-0/+20
|\| | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm src/plugins/platforms/qnx/qqnxrasterbackingstore.cpp tools/configure/configureapp.cpp Change-Id: I3092bd3276af14304b7ab3ae1e1cc05d11cdede0
| * QNX: Fix screen rotationRafael Roquetto2013-06-192-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The behavior introduced by qtdeclarative's 475d1ed4f6a2 mandates that an expose event follows a geometry change event. The fix for this uncovered a bug on the raster backing store which caused the rotation to break on QtWidgets. The problem was rooted on the assumption that the QQnxRasterBackingStore::flush() method was only called after paints to the backing store surface, which was discovered to be a false assumption. Flushing the backing store can occur in other circunstances, which are out of scope on the context of the QNX plugin. Task-number: QTBUG-31329 Change-Id: Icfc3e85324f5a8745f6b5f189f27f8b763f770c7 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * QNX: Add option to disable screen power save from an envvarSean Harmer2013-06-191-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | Qt itself has no API for disabling screen power save, although this might make an interesting addition at some point. Instead we make the QNX QPA plugin determine if power save should be disabled from the QQNX_DISABLE_POWER_SAVE environment variable. This would typically be set in the application's bar descriptor file. Change-Id: Ie195ecd0496efd533ad9a32b65883283f471c534 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| * BlackBerry: fix delayed root window posting on OpenGLRafael Roquetto2013-06-141-0/+3
| | | | | | | | | | | | | | | | | | | | | | The delayed root window posting introduced by 77a06e7e6c517003 broke the OpenGL support. In that patch, the posting of the root window is trigerred by QQnxRasterRasterBackingStore's call to QQnxWindow::post(), that obviously does not happen when OpenGL is enabled, therefore requiring the OpenGL context to explicitly post() the root window. Change-Id: Ifd302c1dde612a03b79c778ec4586aa70f88260d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | QNX: Replaced physical screen size warningBernd Weimer2013-06-171-4/+11
| | | | | | | | | | | | | | | | | | | | On stock QNX it is quite common that libscreen doesn't provide the physical screen size. The warning about this has been replaced with a debug statement, because it was annoying especially when running auto tests. Change-Id: Iab07f0d4a6293c40678f2ec3e77352e68797c8c7 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-06-122-36/+45
|\| | | | | | | | | | | | | Conflicts: src/plugins/platforms/cocoa/qcocoamenubar.mm Change-Id: I4a699fc8a7f30b2af9de8e496c3d5f027b7495bb
| * QNX: fix QQnxWindowRafael Roquetto2013-06-072-36/+45
| | | | | | | | | | | | | | | | | | | | | | | | To ensure the correct event order, only set the geometry() once the window is actually made visible. We also need to post the expose event even for child windows (i.e., windows which have a parent). Change-Id: Ief80778bc3202352bd194e4b3ba655f619350b1a Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-06-046-20/+135
|\| | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.h src/plugins/platforms/cocoa/qnsview.mm Change-Id: I6fe345df5c417cb7a55a3f91285d9b47a22c04fa
| * Move QBasicDrag and QSimpleDrag to QtGui.Samuel Rødal2013-05-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | These are useful as default implementations of QPlatformIntegration::drag(), instead of having it return 0 which will lead to crashes in Qt Quick 2 and widgets applications that use drag and drop. Task-number: QTBUG-31288 Change-Id: I70efa139306ced5d879def0f74e3a72d3bcd64f7 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
| * QNX: fix buffer creationMatt Hoosier2013-05-241-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | During some coding style cleanup in 02311c07 ("QNX: normalize braces") some braces which were actually necessary got removed. The result was an spurious report of a fatal error when no underlying error condition had occurred. This change restores the braces to preserve the prior behavior. Change-Id: Ic32fbd5961ce59f6c01476fd2cef6fec0bdae93e Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| * QNX: support underlain foreign windowsMatt Hoosier2013-05-232-13/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, any foreign window was treated as an overlay, with its z-order being forcibly set above the native Qt windows. This change adjusts the strategy to treat foreign windows whose initial z-order is less than -1 (the default z-order used by mmrender for its overlay surfaces) as underlays; otherwise the foreign window is treated as an overlay. Change-Id: Ifbcfd3a956965fa1a347076e9845afa50a81edfd Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| * QNX: Support window translucencyMatt Hoosier2013-05-233-5/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A few tactical changes were necessary to do this: * The root window's buffer must be the full size of the window in order for transparency to work. We now transition this buffer to full-size upon first request of some QWindow to be translucent. At the same time the root window is transitioned to being full- screen, we also set its alpha blending mode to Source-Over in order to permit lower z-ordered apps to show through. * Set the root window's buffer position to (0, 0) to avoid a momentary flicker of unpainted pixels on the far right-hand border as a translucent window comes on-screen. * Use Source-Over alpha blending for normal child windows too. The QtGui core logic for setting the backing surface pixel format to something with an alpha channel if Qt::WA_TranslucentBackground is set on the toplevel QWidget already accomplished the remainder of the work. Change-Id: I1c2b31aa6323b4555fa194313f0f5e06ada494fc Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-05-2311-193/+113
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qdatastream.cpp src/corelib/io/qdatastream.h src/corelib/json/qjsonwriter.cpp src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/xcb/qxcbkeyboard.cpp Change-Id: I46fef1455f5a9f2ce1ec394a3c65881093c51b62
| * QNX: normalize bracesRafael Roquetto2013-05-2310-195/+106
| | | | | | | | | | Change-Id: I05f140a0626e543535cc74c6f737be9be1e27a5d Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * QNX: Fixed build of QPA pluginBernd Weimer2013-05-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | Added private core and gui includes to project file. Those were implicitly included in the past, but removed with commit 289302e. Removed redundant module, as well. Change-Id: I878d9acabc5497702dc282e25d6fdd9016ae2ad6 Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| * QNX: Add support for WindowDoesNotAcceptFocus flagAndreas Holzammer2013-05-111-0/+9
| | | | | | | | | | | | | | | | Set SCREEN_PROPERTY_SENSITIVITY to SCREEN_SENSITIVITY_NO_FOCUS of the screen window when the Qt::WindowDoesNotAcceptFocus window flag is set. Change-Id: Iac0764a84186c382dcd3f4bdd31dd24ac15df768 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | QNX: Use 'disabled' child window buffers.Rafael Roquetto2013-05-092-23/+18
| | | | | | | | | | | | | | | | | | | | | | Because there is only one QBackingStore per top-level window, child windows do not need to have their own buffer, since Qt will use the TLW backing store as their drawing surface. Since QNX's libscreen does not support windows without buffer, a 1x1 buffer is used instead. Change-Id: I4b81fdd0f3e6059c46b1d4302d2a754d72dc8a68 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | QNX: Fix screen event thread compilationRafael Roquetto2013-05-072-2/+2
| | | | | | | | | | | | | | | | | | | | Breakage was caused by two typos Change-Id: Ic9ca3a3db8dbf191b3bee8b2ef6e3513f7c9adc4 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-04-221-2/+3
|\| | | | | | | Change-Id: I059725e3b7d7ffd5a16a0931e6c17200917172b5
| * [QNX] Fix build/runtime if QT_NO_OPENGL definedAndreas Holzammer2013-04-161-2/+3
| | | | | | | | | | | | Change-Id: I38d511ac0a53b65abfe47baaa6333629df5b578d Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Frederik Gladhorn2013-04-173-0/+14
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-04-123-0/+14
| |\| | | | | | | | | | Change-Id: Iee73c93067c5822d8dd51a8692e6da9df4ba49f5
| | * QNX: Adjust rotation according to initial orientationRafael Roquetto2013-04-103-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-29201 Change-Id: I37e82904e0f3d8b372b31ee7d1379e61c788c622 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
* | | QNX: Fix filenames returned by the file dialog.Sergio Martins2013-04-171-4/+6
|/ / | | | | | | | | | | | | | | | | | | QUrl prefixes like file:// should be used. QFileDialog will use QFileInfo later on, and that doesn't support QUrl prefixes. Change-Id: I8f6d2fb9a4f502cff030a1cdd43b047b8ed5a120 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | Do not build QQnxScreenEventThread when not neededFabian Bumberger2013-04-113-8/+25
| | | | | | | | | | | | | | Change-Id: I07525ac45a610f56f2bc72731379073f4aa67f7b Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | [QNX]Add an option to not run fullscreenAndreas Holzammer2013-04-043-5/+30
| | | | | | | | | | | | | | | | | | | | Add commandline option to set the default for fullscreen option. Change-Id: Ieaf2be3858082fb0e572c8fbaabfd38a698f14f6 Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
* | BlackBerry: fix compilationRafael Roquetto2013-04-011-1/+0
| | | | | | | | | | | | | | | | Remove a leftover #endif from the merge with stable Change-Id: Idd0509d2ddcc3e8e7914aaa59beabc8036f45fff Reviewed-by: Peter Hartmann <phartmann@blackberry.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | QNX: Added warning when low memory event is receivedBernd Weimer2013-03-281-0/+6
| | | | | | | | | | | | | | | | | | Low memory warning has been added for debug purposes. Change-Id: I3ca4f1e68cec0914ce8d77b5bed4cde210c031fa Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-03-2827-41/+42
|\| | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/qnx/qqnxtheme.cpp src/widgets/dialogs/qfileinfogatherer.cpp src/widgets/dialogs/qfilesystemmodel.cpp Change-Id: Ifa536969c4beafcdfeebbf6beda1674b86750be8
| * QNX: Code cleanup: normalize 'if' macro usageRafael Roquetto2013-03-2627-41/+41
| | | | | | | | | | | | | | | | | | Always use "if defined" instead of "ifdef". The same is valid for "ifndef" macros Change-Id: I8e8f65e36dc636c10b3d656ce9a89ab3a664a80b Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | BlackBerry: Native BB10 QFileDialog supportRafael Roquetto2013-03-279-16/+653
|/ | | | | | | | | Change-Id: I4e83fbc6ba425d237b08056b45f9bcf47751bfce Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Tobias Koenig Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* BlackBerry: implement QWidget::showMinimized()Rafael Roquetto2013-03-193-3/+38
| | | | | | | | Add window minimization capability on the plugin. Change-Id: I4539d29b8ebbef935213edde634f0a85b6a21766 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Make sure that we #include qconfig.h before testing for features.Thiago Macieira2013-03-191-0/+2
| | | | | | | | | | | This is mandatory in public headers (qiodevice.h, qopengl*, etc.), but it's a good idea even in private headers, in case someone includes that header first somewhere. In particular, all platformsupport API is private. Change-Id: If287baa5d9ed14e93c1666efa0e6332c4c1cd9a4 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* QNX: Fix build errorRafael Roquetto2013-03-121-5/+0
| | | | | | | | | This error was caused by a merge Change-Id: I937ab6ac905ba3a729669060285df6d0c3d5be2f Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Tobias Koenig Reviewed-by: Wolfgang Bremer <wbremer@blackberry.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-03-062-2/+15
|\ | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/qnx/qqnxscreen.cpp src/plugins/platforms/windows/qwindowsdialoghelpers.cpp Change-Id: Ib64f21c077b54f2291d19187590bfe869b98477a
| * Delete the reference of the QNX screen in child windows on deletionFabian Bumberger2013-03-052-2/+10
| | | | | | | | | | | | Change-Id: Ic3e5deaeabe282ff44400aba80f8746067473030 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * QNX: QQnxCursor implementation.Rafael Roquetto2013-02-286-3/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implementation of QQnxCursor, a QPlatformCursor subclass. Due to the lack of a proper cursor API from the underlying OS, this class only caches the current cursor position to make sure that the QCursor class works properly. This is a backport of 290ed7f8fafd67197f773454223410bbe57fc4d3. At the time there weren't any known bugs regarding this, so it was committed to "dev" branch as a feature. Now we needed it in "stable", otherwise menus don't work correctly, due to QCursor::pos() being bogus. Change-Id: I5a4217c92a0aaed0b22b45ca3c4e0fad882e810f Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>