summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/qnx
Commit message (Collapse)AuthorAgeFilesLines
...
* | QNX: Avoid crashing on exit when have a cover windowRoger Maclean2014-01-171-0/+3
| | | | | | | | | | | | | | | | | | | | | | QQnxScreen destructor was leaving the cover window to a reference to it leading to a crash when the cover window itself was destroyed. Change-Id: Id82097d54fea79b0b9ec1cef439bd704da9ca453 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QNX: Make window groups work reliablyRoger Maclean2014-01-174-13/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Window group related code worked previously only for the 'root' window and other windows that had no parents (which then joined the window group of the root). Introduced a new function joinGroup that makes the group related calls, this can both join and leave groups. Default group joining is performed in setVisible now rather than setScreen. The advantage of setVisible is that one can rely on it getting called at some point but it is also possible to create and interact with a QQnxWindow before it is called. This allows the default group handling to be overridden via the native interface. If the group is set (or explicitly not set) then the default handling is not done. joinGroup is also called from setParent so that if the parent window is changed the window joins the parent group. Change-Id: I03e3801ecb4e4cf901c02e45f00472a87692c2ec Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* | Fix BlackBerry10 build on NDKs prior to 10.2.1Wolfgang Bremer2014-01-171-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds a dependency checking for a recently introduced define. On NDKs 10.2.1 and later it compiles with support for VIRTUALKEYBOARD_LAYOUT_ALPHANUMERIC. NDKs 10.2.0 and earlier do not know this define and therefore it will be ignored. This is necessary because there is no newer NDK publicly available than 10.2.0. Assuming pure QNX SDKs are missing the define completely, we are only including it on recent BB NDKs. Change-Id: I6f814e5c2d77c50edf8534f3567b157f71147555 Reviewed-by: Peter Hartmann <phartmann@blackberry.com> Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
* | QNX: Fixed window positioningBernd Weimer2014-01-172-36/+4
| | | | | | | | | | | | | | | | | | | | Child windows have to keep their relative position when the parent is moved. Change-Id: I7d24d67578c9aaa332136d18ad9b478b120e4696 Reviewed-by: Roger Maclean <rmaclean@qnx.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* | QNX: Fixed some window issuesBernd Weimer2014-01-172-6/+11
| | | | | | | | | | | | | | | | Corrected EGL error code query and cover windows creation in the "no-rootwindow" case. Change-Id: I86aaa4b59283f7153f8ab63c5bf231bc9da7538c Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* | Remove unnecessary call to updateHirarchyFabian Bumberger2014-01-131-2/+0
| | | | | | | | | | | | | | | | updateHierarchy is already called in the lower/raise member function in the QQnxWindow. Change-Id: If3765fa7a7e69273672d47003534b04e3615916c Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QNX: Expand on Virtual Keyboard SupportMike Fenton2014-01-096-175/+169
| | | | | | | | | | | | | | | | | | | | | | | | | | Add additional keyboard type and enter key support to QQnxAbstractVirtualKeyboard and update the subclasses for PPS and BPS to match. Update the PPS handler to be more streamlined by adding a helper function to write the encoder and convert from type to string. Change-Id: I32dbf9d8c44694789b5e24b4f72da8455836ae32 Reviewed-by: Roger Maclean <rmaclean@qnx.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
* | QNX: Add some more properties to a touch pointFabian Bumberger2014-01-071-2/+24
| | | | | | | | | | | | Change-Id: Ic1c889557148f112e357c3ee34199ff6d19b4a6e Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QNX: Add support for BB10 text highlighting and spell checkingRoger Maclean2013-12-244-54/+176
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds the QPA side of the support for text highlighting during text entry and for spell checking. The changes are compatible with existing Qt text controls though require more advanced ones to have any effect. QQnxInputContext has three colors it can now use for highlighting text during composition to represent the active region, auto corrected text and reverted text. If any of these colors is invalid, that form of highlighting is not used. By default, only the active region color has a valid default which corresponds to the highlighting capabilities of classes such as QQuickTextInput. The QNX QPA native interface has been augmented with the ability to get a function pointer that can be used to set any or all of the three colors. The set of colors is reset to the default at any time that focus changes to ensure appropriate behavior if there is a mix of controls. It's worth noting that while the colors can be changed even when used with one of the standard Qt text controls, the auto-correct color will not show up since it is applied immediately before committing the text. Appropriate display of this highlighting requires that the control maintain the highlighting for a period after committing the text. Spell checking is provided via another function accessible through the QNX QPA native interface. This takes a string and a callback function to be called once spell checking is complete. As a slightly unrelated change, toSpannableString now uses toWCharArray to convert the QString to UTF-32 as required by IMF, the previous code was invalid in the case of strings containing UTF-16 surrogate pairs. Removed some extraneous includes. Change-Id: Ifdf3744d1990e0560d1923bca5db30953dea0192 Reviewed-by: Roger Maclean <rmaclean@qnx.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 Gladhorn2013-12-241-11/+20
|\| | | | | | | Change-Id: I2defae1904154283446b069d151c3ef57302ec7b
| * QNX: avoid composition when possibleMatt Hoosier2013-12-161-11/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Window buffers are currently always created with an alpha channel when the underlying display supports them. This is the correct thing to to in order to support translucency. However, the cost is that the composition manager unconditionally performs blending even when the use-case in the GUI doesn't make use of it. That is rather expensive, particularly on hardware which doesn't have extremely efficient dedicated 2D blitting hardware. This patch adds inspection of the user's requested window format and--if no blending is desired--sets an additional Screen window property which permits Screen to skip blending on the window surface. Change-Id: I83c100a351a00ef0e8bea1b1d1fec10b7218d1de Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | QNX: Fix focus handling for secondary screenFabian Bumberger2013-12-124-26/+10
| | | | | | | | | | | | | | | | | | | | | | | | This patch removes the activaton aand deactivation of a window when we get the window group activated event from the navigator. This event is sent to both the primary and secondary screen and does not state if a window should be active from a Qt perspective. A window should only be active if it has screen keyboard focus. Change-Id: Ibbed0dd76a21d86f4b580265f996357a8eef5192 Reviewed-by: Roger Maclean <rmaclean@qnx.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-12-054-9/+18
|\| | | | | | | | | | | | | Conflicts: src/sql/drivers/sqlite/qsql_sqlite.cpp Change-Id: Ia7cffd2c99ae3d5eea6b5740683c06e921336dcd
| * Use case insensitive comparison when checking platform plugin keys.Friedemann Kleint2013-12-031-1/+1
| | | | | | | | | | | | Change-Id: Iff44698dcc941ca244b476f0e6c6a993f2ad75f3 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
| * BlackBerry: properly clean up QFileDialog filesRafael Roquetto2013-12-011-0/+3
| | | | | | | | | | | | | | Task-number: QTBUG-34983 Change-Id: I1af5c6a9c43eba77394b11d31d1d223af8bc221f Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * BlackBerry: remove unused variableRafael Roquetto2013-12-012-3/+2
| | | | | | | | | | | | | | | | | | m_result is not used by qqnxfiledialoghelper_bb10.cpp, only by its playbook counterpart. Change-Id: I4fae924283560703393c5313527c5c9c2005d35b Reviewed-by: Tobias Koenig <tobias.koenig.qnx@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * BlackBerry: Fix QFileDialog show()/hide()Rafael Roquetto2013-12-012-5/+12
| | | | | | | | | | | | | | | | | | QFileDialog::show() no longer worked after the dialog had already been shown and hidden before. Task-number: QTBUG-34983 Change-Id: I7300374b74805308e0966db7b3545e5fd8470465 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-11-291-2/+4
|\| | | | | | | Change-Id: Ibb342cc5fc55ff9a3f4b3ecbd53936b57bc13e63
| * Merge remote-tracking branch 'origin/release' into stableSimon Hausmann2013-11-281-2/+4
| |\ | | | | | | | | | Change-Id: I860404a1ef18c88a968a9eded405bb67967047b9
| | * QNX: Fix retrieving the window group nameFrank Osterfeld2013-11-271-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | The code assumes that there is a root window, and crashed otherwise. Task-number: QTBUG-35121 Change-Id: Idbf0e0bfc03cd427f0aab81db88b34fe94228c81 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-11-2620-525/+505
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the conflicts in msvc_nmake.cpp the ifdefs are extended since we need to support windows phone in the target branch while it is not there in the current stable branch (as of Qt 5.2). Conflicts: configure qmake/generators/win32/msvc_nmake.cpp src/3rdparty/angle/src/libEGL/Surface.cpp src/angle/src/common/common.pri src/corelib/global/qglobal.h src/corelib/io/qstandardpaths.cpp src/plugins/platforms/qnx/qqnxintegration.cpp src/plugins/platforms/qnx/qqnxscreeneventhandler.h src/plugins/platforms/xcb/qglxintegration.h src/widgets/kernel/win.pri tests/auto/corelib/thread/qreadwritelock/tst_qreadwritelock.cpp tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp tools/configure/configureapp.cpp Change-Id: I00b579eefebaf61d26ab9b00046d2b5bd5958812
| * | Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-11-263-12/+16
| |\| | | | | | | | | | Change-Id: I83ff8f4d7dffd7385013a1bd8a1732a89ee20d56
| | * Add PPS configure checkAndreas Holzammer2013-11-231-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Plain QNX 6.5.0 does not have a libpps, the new QNX has a libpps and BlackBerry has it as well. So we need a configure check to not open another mkspec for this platform. This fixes the plain QNX 6.5.0 build. Change-Id: Id4b3876f2385bcb5f3df426945532e7e26133f24 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| | * QNX: Only link libclipboard when building with clipboard supportFrank Osterfeld2013-11-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In QNX 6.6, libclipboard isn't part of the base SDP, and QT_NO_CLIPBOARD is set unconditionally on plain QNX anyway. The clipboard-based implementation isn't compiled when QT_NO_CLIPBOARD is set, so only try to link libclipboard when actually building with clipboard support (BB10). Change-Id: I54eb4fadb6bf239a83884796f5758cb79a5677ef Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
| | * BlackBerry: Fixed root window size, continuedArvid Nilsson2013-11-231-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous patch removed a call to setGeometry, and now only calls setGeometryHelper. This means the screen window will be resized, but Qt won't know about our new window size. The scene graph of a QtQuick2 application would layout and render to the wrong target size. Fixed by adding a call to QWindowSystemInterface::handleGeometryChange if we decide to use a different geometry than suggested by the window. Task-number: QTBUG-34930 Change-Id: Ie91c2edc45c47f5bf1d45aed981b969fcc3f40dd Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| | * BlackBerry: Fixed root window sizeBernd Weimer2013-11-202-10/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On BlackBerry the first window shown is treated as root window and should be displayed full screen. The geometry has to be adjusted properly to achieve this. Task-number: QTBUG-34930 Change-Id: I6c011620116cc463e16dd352521b2b901a9f9f69 Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| * | Merge "Merge remote-tracking branch 'origin/release' into stable" into ↵Frederik Gladhorn2013-11-201-3/+10
| |\| | | | | | | | | | refs/staging/stable
| | * QNX: Fixed touch event positionsBernd Weimer2013-11-151-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | Touch positions reported by libscreen have to be adjusted relative to the window position to be properly interpreted by Qt. Task-number: QTBUG-34812 Change-Id: I68744dc9da95fb1d0d1704d12154fb24c148fe03 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | Add QQnxNativeInterface::nativeResourceForContextArvid Nilsson2013-11-203-0/+13
| |/ | | | | | | | | | | | | | | | | | | | | | | This mechanism is used by QtWebEngine to extract the platform GL context. In the QNX case, the platform context is an EGL context, so the resource you need to ask for is the "eglcontext". Compare to the xcb native interface which has a similar implementation already. Change-Id: I873eaadf96898abb24de347ac624c88cd54254cb Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
| * Refactor QQnxWindowFabian Bumberger2013-11-1113-485/+191
| | | | | | | | | | | | | | | | | | | | | | | | This patch does following things: * Remove the root window: First window which is created will serve as a root window * Allow creation of more than one application window (with every app window having an own window group) on one screen * Fixes a bug when reparanting an EGL window Change-Id: I1afd64a813bc084c0893b958aa191d4a25c32b9d Reviewed-by: Matt Hoosier <matt.hoosier@garmin.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| * QNX: Fixed "normalPosition" of touch eventsBernd Weimer2013-11-071-2/+4
| | | | | | | | | | | | | | | | | | | | | | Pixel positions have to be set in relation to screen size in pixels, not the physical size to calculate the normal position in the range 0..1. Change-Id: I6880fb64b7c3049d657fd081b564b945399b5865 Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * Support native event filters for screen eventsJan Arne Petersen2013-11-051-1/+5
| | | | | | | | | | | | | | | | | | Change-Id: If0af4544191c513e64f582cece4a453c1ab5c8e7 Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * Process screen events in the main threadJan Arne Petersen2013-11-054-9/+98
| | | | | | | | | | | | | | | | | | | | | | Screen events are still read in the screen event thread but are processed in the main thread to make it possible to support QAbstractNativeEventFilter for screen events later. Implementation is similar to the xcb platform plugin. Change-Id: I7bade3e13e51c6d70bb608727a93bbd3aabc5d47 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * enable PPS keyboard implementation also for plain QNXFrank Osterfeld2013-11-041-12/+4
| | | | | | | | | | | | | | | | | | | | Integrating with /pps/services/input is also the way to go for QNX. Change-Id: If2498f2c42ed4e6e0d1cadc787cc62e80940043a Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * Handle keyboard focus changeJan Arne Petersen2013-11-042-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | Call QWindowSystemInterface::handleWindowActivated when a SCREEN_EVENT_PROPERTY event for he SCREEN_PROPERTY_KEYBOARD_FOCUS property is received. Change-Id: Ic2b10c5b793dd4451adac68691296f8265a71160 Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Frank Osterfeld <frank.osterfeld@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
| * QNX: Manage foreign mmrenderer windowsRafael Roquetto2013-10-296-10/+125
| | | | | | | | | | | | | | | | | | Manage and correctly set the z-order of a foreign created mmrenderer window by QtMultimedia Task-number: QTBUG-33816 Change-Id: I46273b945bf10991462fa72eb1ec8d00b0648988 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* | BB10: Clean up IMF session codeRoger Maclean2013-11-191-10/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Be more rigorous about checking if we're in a session before invoking IMF functions. In particular the code would call initEvent if a key was received while no text field had focus leading to a crash. Also closeSession is now always called when a session is terminated rather than just setting sInputSession to 0 and hasSession is always called to check for a valid session. Change-Id: I22ce1c9bcdf8dd130f05ae319c4cc1e01afc4456 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | Add support for BB10 input method frameworkRoger Maclean2013-10-2511-920/+779
|/ | | | | | | | | | | | | | | | | | | | | | | | | Added input method support for the BB10 variant of Qt to the extent possible using standard Qt APIs. This adds support for text predictions and entry of languages such as Chinese. Change in interface to QQnxAbstractVirtualKeyboard was made because it is felt the new one is slightly nicer. It doesn't appear safe to assume the focus object has a particular property and in fact in my tests the code failed to work. In some cases the code uses variable and function naming at odds with normal Qt coding standards. This has been done for functions called and data provided by the BB10 input system as for those of us who need to maintain such things, it makes their meaning considerably clearer. While qqnxinputcontext_imf.cpp was used as an initial base for development one can consider the new version as largely new code. I don't believe the original version was ever complete and in any event would not compile. Change-Id: I09470801ffa237cee67da40c0b3d02ed5c77531e Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* Blackberry: Cannot create shared egl contexts.Nick Ratelle2013-10-171-1/+9
| | | | | | | | | | Currently the share context is always set to EGL_NO_CONTEXT when it should instead query the share handle from the QOpenGlContext and pass that to the eglCreateContext call. Change-Id: Ia7e32574e1427fba0f919003e5367cfc98688d9d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QNX: Removed alternate window propertyBernd Weimer2013-10-142-4/+2
| | | | | | | | | Some older QNX versions don't support SCREEN_PROPERTY_ALTERNATE_WINDOW, so cover windows have generally been disabled on QNX. Change-Id: Ibe4b0abc39eb8497571f88c90876571576708d79 Reviewed-by: Sérgio Martins <sergio.martins@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* QPA: Fix semantics of GUI event dispatcher ownership in platform pluginsTor Arne Vestbø2013-09-302-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The QPlatformIntegration::guiThreadEventDispatcher() function acted as an accessor to event dispatchers created in the constructor of each platform plugin, but the logic and semantics of event-dispatcher handling in Qt itself (QCoreApplication/QGuiApplication) still assumed both ownership and control over the event dispatcher, such as when to create one, which one to create, and when to delete it. This conflicted with the explicit calls in the platform plugins to QGuiApplication::setEventDispatcher(), as well as left a possibility that the event-dispatcher created by the platform plugin would never be deleted, as none of the platform plugins actually took full ownership of the dispatcher and deleted it in its destructor. The integration function has now been renamed back to its old name, createEventDispatcher(), and acts as a factory function, leaving the logic and lifetime of event dispatcher to QtCoreApplication. The only platform left with creating the event-dispatcher in the constructor is QNX, where other parts of the platform relies on having an event-dispatcher before their initialization. We then need to manually take care of the ownership transfer, so that the event-dispatcher is still destroyed at some point. Change-Id: I113db97d2545ebda39ebdefa865e488d2ce9368b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Added support for cover windows on BlackBerry platformBernd Weimer2013-09-2010-29/+256
| | | | | | | | | | | | On the BlackBerry platform when an application is minimized an alternate cover window is shown. This patch allows Qt to render into those windows. A new window type "Qt::CoverWindow" has been introduced. Change-Id: If5e321f5cb00f6d3ed7a5dc0af425655d7a9253a Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* Split QQnxWindow into QQnxEglWindow and QQnxRasterWindowFabian Bumberger2013-09-1811-475/+718
| | | | | | | | Change-Id: I2fb4096ccca54fa6631aa16c9b8d1308b0a6b918 Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
* Don't send posted events from QWindowSystemInterface::sendWindowSystemEventsTor Arne Vestbø2013-09-161-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The responsibility of sendWindowSystemEvents() is to process events from the window system. Historially that logic was part of the QPA/QWS event dispatcher, which naturally also sent posted events. Through refactoring, the code at some point ended up in in the QWindowSystemInterface class, still with the posting of events in place. This resulted in QPA event dispatchers adopting a pattern of just calling sendWindowSystemEvents(), as that would cover both posted and window system events. Other event dispatchers would call sendWindowSystemEvents(), and then use a base-class implementation from QtCore for processing events, resulting in two calls to QCoreApplication::sendPostedEvents() per iteration of processEvents(). This breaks the contract that processEvents will only process posted events that has been queued up until then. We fix this entanglement by removing the sendPostedEvents() call from QWindowSystemInterface::sendWindowSystemEvents() and move it to the respective event dispatchers. For some EDs it means an explicit call to sendPostedEvents, while others were already doing sendPostedEvents though a separate source (GLib), or using a base-class (UNIX/BB), and did not need an extra call. We still keep the ordering of the original sendWindowSystemEvents() function of first sending posted events, and then processing any window system events. Task-number: QTBUG-33485 Change-Id: I8b069e76cea1f37875e72a034c11d09bf3fe166a Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* remove unnecessary beginPaint and endPaint overridesShawn Rutledge2013-09-162-3/+2
| | | | | | | | | | | | | QPlatformBackingStore::endPaint does not take a QRegion parameter. 6ce6b8a378b0d97ba950240ffb048a4b7e485235 set the API, but the platform implementations were not all synced up since then. There was anyway no point in overriding beginPaint and endPaint on platforms which don't need to do anything there. This fixes clang warnings of the form QXcbBackingStore::endPaint hides overloaded virtual function Change-Id: Id6cd0fc2c831a34576ac2c73eeb0d5741d26e622 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Merge branch 'stable' into devSergio Ahumada2013-09-134-1/+17
|\ | | | | | | | | | | | | | | Conflicts: src/concurrent/qtconcurrentmedian.h src/corelib/itemmodels/qabstractitemmodel.cpp Change-Id: Iac46a90bbb2958cef7670031a4b59c3becd8538a
| * QNX: new signals for foreign windows creation/closingMyoungSeok Song2013-09-132-1/+8
| | | | | | | | | | | | | | | | | | Implement the foreignWindowCreated and foreignWindow closed signals, emitted when foreign windows are created and closed, respectively. Change-Id: I72dd5380e6061f191eb8362fda5dd8fb8e9ed06b 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: add nativeResourceForScreenMyoungSeok Song2013-09-122-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | Implemented nativeResourceForScreen api to return QObject* which can be used to connect foreignWindowCreated, foreignWindowClosed signal in QQnxScreen. Usecase is to connect signal in custom QML component as below QObject * obs = interface->nativeResourceForScreen("QObject*", screen); connect(obs, SIGNAL(foreignWindowCreated(void*)), d, SLOT(newForeignWindowCreated(void*))); Change-Id: I512c3b6d188a2e90ef7b8e89c413ca420a29dd9b 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 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