summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/qnx
Commit message (Collapse)AuthorAgeFilesLines
* qpa: Make screen geometry updates (full and available geometry) atomicTor Arne Vestbø2014-09-101-2/+2
| | | | | | | | | | | | | | | | | Updating the geometry and available geometry in two steps means that QScreen will be in an inconsistent state when emitting the geometry change signal, as the available geometry has not been updated yet. Piggy-backing changes to the availableGeometry based on the virtual geometry changing does not make sense, so we now tie geometry and availableGeometry (and their size variants) to their own separate geometryChanged and availableGeometryChanged signals. Change-Id: Iee0ced642cbb91c470cb54bc507d2c0512482c13 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Make the expose region local on all platformsLaszlo Agocs2014-08-121-3/+3
| | | | | | | | | | | | | | | | | | | | | 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>
* QNX: Override QPlatformScreen::grabWindowBernd Weimer2014-07-072-2/+101
| | | | | | | | | | The grabWindow API basically should return a screenshot at the window location. On QNX only the SCREEN_DISPLAY_MANAGER_CONTEXT can read from the screen which will require root privileges. At least this will fix some QWidget auto tests that rely on this API. Change-Id: I350233173d3aecd376f48af9f650606a5cce6205 Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* QNX: Override QPlatformScreen::topLevelAtBernd Weimer2014-07-022-15/+14
| | | | | | | | | | Implemented QQnxScreen::topLevelAt method, as base implementation returned wrong results. This fixes "tst_qwidget widgetAt" for instance. Removed related method, that is not used at all. Change-Id: I25c4f474cb0d661e5e5cdcdd0ab13d670fd4dc37 Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* QNX: fix race condition when clearing transparent bufferRafael Roquetto2014-06-031-2/+2
| | | | | | | | | | Block flush until all bits have been flushed. This prevents Qt from trying to draw over the buffer while it is still being cleared. Change-Id: I49b90a7653ec3768411a1a94837bb31fec4d44e8 Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
* QNX: Fix compilation when OpenGL is not availableRafael Roquetto2014-06-022-0/+11
| | | | | | Change-Id: I67a1d095fc3efd58e9520c9cb3fad13e04a4d64f Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
* QNX: Fix clearing transparent bufferRafael Roquetto2014-06-021-1/+1
| | | | | | | | | | | Testing whether alphaBufferSize() != 0 does not work, because when no alpha channel is present, alphaBufferSize() can return '-1', which will cause non-transparent windows to be wrongly cleared and an artifact will appear. Change-Id: Id9e985f105c0bb302cc6f53960a5dbae2acdb921 Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Wolfgang Bremer <wbremer@blackberry.com> Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
* QNX: Silence startup warningsBernd Weimer2014-05-133-25/+10
| | | | | | | | | | Missing PPS objects for navigator, virtual keyboard and buttons can be expected on QNX and should not lead to warnings. Virtual keyboard info message does not contain locale object any more. Change-Id: I447d439ffbf4ea6e03f6a8bca4422a9a121d85f4 Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* QNX: Don't build QNX-only parts on BlackBerryBernd Weimer2014-05-122-10/+14
| | | | | | | | | | Only really required source files will be included when building for BlackBerry. Change-Id: Ic66b09221c48672358bba7601bc18663ad7fa07a Reviewed-by: Wolfgang Bremer <wbremer@blackberry.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* [QNX]Clear transparent regionsAndreas Holzammer2014-05-121-0/+21
| | | | | | | | | | If a region gets painted the buffer beneath needs to be cleared, as it could be that there are leftovers from the last blit. Change-Id: I51f19aa010015059e9a6d9d5e5e4f25fb9532d4e Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2014-05-011-0/+1
|\ | | | | | | | | | | This merge adds the opengl rename. Change-Id: I84ea0b6abee9780ebb2cf3f64ab9e3fdf2acab3e
| * deprecate import_qpa_plugin and qpa_minimal_pluginOswald Buddenhagen2014-04-241-0/+1
| | | | | | | | | | | | | | | | they have been fully superseded by 4255ba40ab073afcf2a095b135883612859af4c2. Change-Id: If7ac14c8b7d3cf00fb0cb916036b62eb86c9cee0 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Fix build error when targeting Blackberry PlaybookThomas Perl2014-04-251-0/+2
| | | | | | | | | | | | | | | | | | The emitSignals() slot is only implemented/used in the file qqnxfiledialoghelper_bb10.cpp, not in <...>_playbook.cpp. Change-Id: I068e843be74ec9639d889b87caa016c8506ec905 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QNX: Do not crash if physical screen size is not setFabian Bumberger2014-04-251-5/+5
| | | | | | | | | | | | | | | | | | | | If the QQNX_PHYSICAL_SCREEN_SIZE is not set or set incorrectly the application exits with a qFatal. This patch replaces the qFatal with a qWarning and sets the physical screen size to 15cm x 9cm. Change-Id: I9e1a36414289c9e9676ef550eac5c1d7be974553 Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QNX: Don't create a platform window for a desktop widgetFabian Bumberger2014-04-253-6/+16
| | | | | | | | | | | | | | | | | | | | As I understand it the QDesktopWidget does only serve the purpose of returning the screen size and number. It does not need a real platform window. This removes some overhead, because a desktop widget is always created. Change-Id: I8c0d86bbb46b1f32094fda1592df795af6bb423f Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QNX: Fix geometry change handlingBernd Weimer2014-04-251-7/+3
|/ | | | | | | | QWindowSystemInterface::handleGeometryChange has to be called with proper geometry whenever it changes. Change-Id: I691b85467a815ed21bce2bb64b33fa297c16f809 Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* QNX: Destroy window buffers when resizedBernd Weimer2014-04-083-37/+31
| | | | | | | | | QNX version of screen doesn't reallocate window buffers dynamically. The buffers have to be destroyed and recreated when a window is resized. As the overhead is minimal this will be done on BlackBerry, as well. Change-Id: I488942879822c64a6ab1871ebf5d6da9aec144d6 Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* QNX: use QStringList::join(QChar) overloadMarc Mutz2014-03-311-2/+2
| | | | | | | Doesn't construct a temporary QString. Change-Id: I368c5f997f74c1ce6b2930ac4df292c7a6d5c87c Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* QNX: don't copy a QStringList twice every loop iterationMarc Mutz2014-03-291-2/+2
| | | | | | | | | Apparently, the function before returned const-&, but now returns by-value. Use the member data variable directly, the function is const anyway. Change-Id: I324bc675fd7c9b5bfb28c475eba0c0275379132c Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* QNX: Fix geometry changed event for non FS windowsFabian Bumberger2014-03-271-4/+4
| | | | | | | | For non full screen windows the geometry change event was not sent. Change-Id: I982621d87fe248bbe13640dd3e17b31fb9f30120 Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
* QNX: Retrieve name of the displayFabian Bumberger2014-03-272-0/+8
| | | | | | | | Task-number: QTBUG-34545 Change-Id: I51d36c7352351b0770a1a076bdcc738677d7fcb6 Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
* QNX: Fix sending of expose eventsFabian Bumberger2014-03-231-1/+2
| | | | | | | | | When the window geometry is changed an expose event should only be sent if the window is visible. Change-Id: I540ea7e7e07d896495547f3f8bf81738fad3ddee Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
* QNX: Remove sending synchronous window system eventsFabian Bumberger2014-03-191-6/+0
| | | | | | | | | This makes some OpenGL autotests fail. Apparently we are sending a expose event before the window is properly exposed. Change-Id: I1710ec51605088ce594fc4676214db2d822d1cc5 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* QNX: Fix touch positionFabian Bumberger2014-03-141-1/+1
| | | | | | Change-Id: I8e4f83f58fbb31f7cffdf74b0ce431a6fd46f13b Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* BlackBerry: Add button color to dark paletteBernd Weimer2014-03-141-2/+4
| | | | | Change-Id: I35191841e4d606042375ab8af442a339d6a701dd Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* Complete support for no-fullscreen parameterJames McDonnell2014-03-143-5/+11
| | | | | | | | | | | Change the code so that it doesn't force application windows to full screen when the no-fullscreen parameter is used in the QT_QPA_PLATFORM environment variable. Task-number: QTBUG-37456 Change-Id: If9612cc2ca69f829d45e7fd4b83338c3a41cf986 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* QNX: Fix screen event handlingBernd Weimer2014-03-141-3/+3
| | | | | | | Return code was misinterpreted. Change-Id: I917db0879384a4997ff154ab25e56fbada55c0e4 Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* QNX: Change the way one requests child windowsBernd Weimer2014-03-102-2/+105
| | | | | | | | | | | | | | | | | | | | | | | | The use of Qt::Dialog as a way to signal that a parentless window be created as a child proved problematic as some applications use dialogs as their sole window. Instead, rely on the existence of a dynamic property called 'qnxWindowGroup'. If found, the window will be created as a child window and that window group will be joined. Also added the ability to set the id string window property via another dynamic property 'qnxWindowId'. While strictly related to the original issue, one typically needs the ability to set the window id if one is joining a group. Added extensive documentation on the mysterious rules of the QNX QPA as regards windows, at least covering the areas affected by this patch. This patch was originally implemented by Roger McLean. Change-Id: I0ef88d654b794ddcb54d4c4d9804bef750da5a33 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* QNX: Do not create default platform themeFabian Bumberger2014-03-081-1/+1
| | | | | | | | | | If the theme name is not recognized we should not create a QPlatformTheme, but rather return 0. If no platform theme can be created on creation of the QGuiApplication,a default QPlatformTheme will be created automatically. Change-Id: I685fa352c87d74c225c7f91c10cb84fb5128a3f6 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* BlackBerry: Choose the appropriate file dialog typeFabian Bumberger2014-03-082-1/+36
| | | | | | | | This chooses the appropriate file dialog type based on the nameFilters that were set. Change-Id: I0c674eacbaebf862ce4359e744271c0d6382c216 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* BlackBerry: Repair the file pickerFabian Bumberger2014-03-081-2/+8
| | | | | | | | | The interface for invoking the file dialog has been changed. Instead of a Json object we now passing a pps object to the invoke target. Change-Id: I3c5bc8f0e1af1a84d4afb6bc1923f23db2b43d5e Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* Blackberry: Change name from QQnxTheme to QBlackberryThemeFabian Bumberger2014-03-074-19/+19
| | | | | | Change-Id: Ia30a18c988986f8c20bc4e4475c5e24b06493035 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* BlackBerry: Implement the dark paletteFabian Bumberger2014-03-072-0/+31
| | | | | | | | This patch only implements the dark palette and returns it by default. Change-Id: Ieab39c2d5c8f35b9479719b78843b13355c5f123 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* QNX: Report if GL context is sharedBernd Weimer2014-02-282-8/+11
| | | | | | | | | This fixes the tst_qopengl sharedResourceCleanup auto test Change-Id: I0ac6f45797f656b637254f01c2cb8073436b45b2 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* QNX: Prevent desktop windows from becoming root windowv5.3.0-alpha1Rafael Roquetto2014-02-251-2/+4
| | | | | | | | | | | | | | If a QDesktopWidget is created before any other window, its underlying QPlatformWindow will be granted the root window role. Windows created afterwards will become children of the root window, preventing the app from being rendered, since the Qt::Desktop windows never get posted and therefore flushed. This patch prevents a Qt::Desktop window (related to QDesktopWidget) from becoming the root window. This does not affect QDesktopWidget functionality. Change-Id: I02c9946a3979b2227afbd2e5d485ba80efa1b997 Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* [QNX] Don't deactivate windows focusFabian Bumberger2014-02-162-6/+24
| | | | | | | | | | | When the focus changes, screen sends a focus deactivated change for the focus window. Depending on the order, this might deactivate the window focus completely. This for example leads to problems with QComboBox. Change-Id: Ia57f061a765c1f971d86d941b17f573ce9221ae1 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* Refactor the handling of the navigator swipe down eventFabian Bumberger2014-02-166-9/+37
| | | | | | | | | The navigator swipe down event is not mapped to a platform panel event any more. Instead the NavigatorEventHandler is exposed through the QPlatformNativeInterface. Change-Id: I6d29bba011849da5210f6f4d595e3c2e0c021449 Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* QNX: Add support for lgmonBernd Weimer2014-02-148-10/+156
| | | | | | | | | | | | | | Added configure test, whether lgmon (liquid graphics performance monitor) is available. The test is supposed to be positive only for internal BlackBerry NDKs currently. Added calls to initialize lgmon and to indicate when an app is ready for user input. Change-Id: I5cbc29fb38a86585dcebd14d462436deaa1998aa Reviewed-by: Wolfgang Bremer <wbremer@blackberry.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-02-073-1/+14
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qguiapplication.cpp src/plugins/platforms/android/androidjnimain.cpp src/plugins/platforms/android/qandroidplatformintegration.cpp src/plugins/platforms/android/qandroidplatformintegration.h src/plugins/platforms/android/qandroidplatformopenglcontext.cpp src/plugins/platforms/cocoa/qcocoawindow.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/sql/doc/src/sql-driver.qdoc src/widgets/widgets/qtoolbararealayout.cpp Change-Id: Ifd7e58760c3cb6bd8a7d1dd32ef83b7ec190d41e
| * QNX: fix wrong coding styleRafael Roquetto2014-02-051-1/+1
| | | | | | | | | | Change-Id: I84b166ee528b7d586f1901e6bfda999ef698c3fd Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| * [QNX] Set Window usageAndreas Holzammer2014-01-162-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set Window usage prior to use the framebuffer. For OpenGL windows set OpenGL usage and for normal painting set it to native usage. Some QNX libscreen implementations don't set usage automatically, so we must set this explicitly. Task-number: QTBUG-35912 Change-Id: I5154c0bcf9c65ef6d47af6a1cf8f17765ccf51dd Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Vladimir Minenko <vminenko@rim.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | [QNX] Handle the case when an egl surface can not be createdFabian Bumberger2014-02-022-3/+5
| | | | | | | | | | | | | | | | | | | | If an egl surface can not be created (e.g. when out of memory) the application should not crash. In this case we will not be able to make the egl surface current and have to return false in the makeCurrent call in QQnxGlContext. Change-Id: If9b5a82a0f64dc0a42bee687d351bea43fb05d51 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | [QNX} Remove adjustBufferSize from the egl windowFabian Bumberger2014-02-026-12/+8
| | | | | | | | | | | | | | | | | | | | setGeometry will adjust the buffer for an egl window when a egl surface is created. Adjusting the buffer somewhere else can be potentially harmful. Another reason is that every egl window has a buffer on its own (unlike raster windows) so we do not have to check if we have to create a buffer after reparanting. Change-Id: I01406867a0dab598dac7d86e1f1e28ca9736a299 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | [QNX] Fix crash when creating eglSurfaceFabian Bumberger2014-02-021-2/+2
| | | | | | | | | | Change-Id: I9cf9d56003a5f237dcf00b621fddf74e8d0ca190 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | [QNX] Implement the requestActivate functionFabian Bumberger2014-01-292-3/+52
| | | | | | | | | | | | | | | | This allows manually transferring focus from one window to another, if the application has focus. Change-Id: If73ddca6ffbb735eaf4ee9fd322d978f9366fb4c Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QNX: Cleanup some issues in QPABernd Weimer2014-01-294-5/+9
| | | | | | | | | | | | | | | | | | | | | | * Avoided crash, if root window is reparented * Corrected video window name * Made parent window member private again Change-Id: Icef9fad5495413e0de87c4366f25dad6c4fd5775 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* | QNX: Create the egl context according to the version in QSurfaceFormatFabian Bumberger2014-01-282-4/+4
| | | | | | | | | | | | | | | | Change-Id: Iee556d51ad1d7db2593e3996da4d90d938d13e17 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | [QNX] Introduce proper screen error handlingFabian Bumberger2014-01-2811-261/+332
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a new function which does the error handling for libscreen calls. The patch introduces following changes: - Libscreen errors will not crash (qFatal)the application any more but rather post a warning message. -With the "flush-screen-context" option the screen_context is always flushed when a screen function is called. This enables better correlation between the time an error happens and the time it is logged. Change-Id: Ie2456e5b746dcf917d786f3b832847d2ebbe5f1e Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Roger Maclean <rmaclean@qnx.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QNX: Fixed window opacityBernd Weimer2014-01-221-2/+3
| | | | | | | | | | | | | | | | | | Opacity was not set initially and not committed to libscreen when changed. Change-Id: Icf24be833de28bd72275cf93a3ab2fb344726023 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* | QNX: Allow creation of parentless child windowsRoger Maclean2014-01-181-3/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no reason why a parentless window from a Qt perspective needs to be a screen application window. There are some cases, such as the BB10 dialog service whose windows are always parented by a window in another process. Ideally one would have a means to indicate a child window was wanted that had no other side effect (i.e. the rest of Qt would ignore). The use of Qt::Dialog is not ideal as some code does pay attention to this type given the number of bits available for window type, it is not reasonable to add a new one. The use of Qt::Dialog seems safe since it is hard to conceive of a window of type Qt::Dialog wanting to be a top level window. If in future it is required to have a parentless, child window that is not of type Qt::Dialog one can simply define some additional way of signalling this. Change-Id: Ie7035980ac2efd5bc722a8371c834f21ea7755f4 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>