summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* bcm97425: Enable the egl mode directfb QPA platform pluginHolger Hans Peter Freyther2012-05-221-1/+1
| | | | | | | | | | | The directfb_egl mode of the directfb QPA platform plugin was never enabled. Modify directfb.pro to check for directfb_egl inside the QT_CONFIG variable. This issue was introduced when moving the config from the CONFIG variable to QT_CONFIG. Change-Id: Ia86ec48475ac037d05282e69ee6324969054e186 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* qpa api: replace QPA headers with something more benignGirish Ramakrishnan2012-05-221-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current 'we mean it' headers are considered too aggressive for QPA. Replaced using the following script. for file in `find -type f -name "qplatform*.h" -and -not -name "*_p.h"`; do LINE_NO_1=`grep -n -m 1 "W A R N I N G" $file | awk -F ':' '{print $1}'` LINE_NO_2=`grep -n -m 1 "We mean it." $file | awk -F ':' '{print $1}'` if [ -z "$LINE_NO_1" ]; then LINE_NO_1=`grep -n -m 1 "#define " $file | awk -F ':' '{print $1}'` LINE_NO_2=$((1+$LINE_NO_1)) else LINE_NO_1=$(($LINE_NO_1-2)) LINE_NO_2=$(($LINE_NO_2+2)) fi head -n $LINE_NO_1 $file > $file.new cat >> $file.new <<EOF // // W A R N I N G // ------------- // // This file is part of the QPA API and is not meant to be used // in applications. Usage of this API may make your code // source and binary incompatible with future versions of Qt. // EOF tail -n +$LINE_NO_2 $file >> $file.new mv $file.new $file done Change-Id: I8a974c9bf8942647b7ad950afb372c1f738aa725 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Replace (un)checkAction with toggleAction (3/3)Jan-Arve Saether2012-05-221-15/+6
| | | | | | | | Remove all references to (un)checkAction. This commit finalizes the intended change. Change-Id: I79d3b30b5c3d9fbe276c2c94fed5971bb21d6c02 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* directfb: Handle focus, close and geometry change eventsHolger Hans Peter Freyther2012-05-222-0/+32
| | | | | | | Report the focus, close and geometry to Qt. Change-Id: I059fef5aba5f0e5c0654ba11b0615bc0f5ac50aa Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* directfb: Expose the window when it becomes visibleHolger Hans Peter Freyther2012-05-221-2/+4
| | | | | | | | This change is required to make DirectFB windows appear on the screen again. Change-Id: Ib00d3fa597bc23879b5646bddd6cbb5c627b0edf Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Clean up Raspberry Pi specDonald Carr2012-05-221-0/+1
| | | | | | | Introduce platform libs hook to handle/allow device specific initialization and the associated symbol resolution Change-Id: I098b07dcb581390d369d9165c6cedc7ace1e088a Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Windows/MinGW: Fix warnings about missing enumeration values.Friedemann Kleint2012-05-211-0/+1
| | | | | Change-Id: I8fa6456e517d670a4d463fdc589cb32e4f79843c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* QNX: Take orientation into account when reporting physical sizeSean Harmer2012-05-211-3/+8
| | | | | | | | | Previously landscape orientation was assumed in the QQnxScreen ctor. We now calculate the initial physical dimensions correctly. Change-Id: I6c434eaba1f931c769f343671fb80052287b51e5 Reviewed-by: Kevin Ottens <kevin.ottens.qnx@kdab.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* QNX: Implement the QPlatformScreen::orientation() functionSean Harmer2012-05-212-2/+19
| | | | | | | | Also removed some invalid TODO comments. Change-Id: I470a9a6538ce10a3a14df14faa641d7be7f18a74 Reviewed-by: Kevin Ottens <kevin.ottens.qnx@kdab.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* input: Synchronize multiple mice handled through evdevmouse pluginJohannes Zellner2012-05-214-32/+54
| | | | | | | | | | | EvdevMouseManager now receives relative pointer coordinates from each connected mouse and is then responsible for clamping and forwarding them to the QWindowSystemInterface. This avoids jumping cursors when multiple pointer devices are connected. This does not change behavior together with devices handled through the evdevtouch plugin. Change-Id: I7feb358f68c3b3ebd138116224b4747c88c6761f Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* QWindowsBackingStore: Implement scroll.Friedemann Kleint2012-05-212-0/+15
| | | | | | | | | | Similar to XCB. Task-number: QTBUG-24299 Task-number: QTBUG-24296 (partially fixed) Change-Id: I4c9d813d9645f957f2caad0c4e395ce0d3d222cc Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Cocoa: Fix memory leak in the accessibility code.Morten Johan Sorvig2012-05-211-0/+1
| | | | | | | | QCocoaAccessibleElement takes ownership of the QAccessibleinterface pointer. Delete it in dealloc(). Change-Id: I45a5540b9cf564c639bfa119ff4882008d63fd96 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Input: evdevmouse plugin cleanupJohannes Zellner2012-05-212-22/+13
| | | | | | | Remove unused code and variables from the evdevmouse plugin. Change-Id: Id7881bc726b5ffb2fa452e4d4dd082fe70f7ed28 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Cocoa implementation of QPA menu interface.James Turner2012-05-1920-256/+1217
| | | | | | | | | | | Implement the QPA platform menu interface for Cocoa, including native menubar support and merging with the predefined menus created from the bundled .nib. Cleanup code previously used to maintain the menus, and add a manual test of the menus code. Change-Id: Ia99267ddb6485e18e05c540eb32c5aee6cbb85db Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* QPA menu abstraction, originally based on Morten's workJames Turner2012-05-195-23/+8
| | | | | | | | | | Create a QPA abstraction for native menus, derived from the Cocoa support in 4.8, but with the expectation to support other platforms too. Update the QtWidget QMenu and QMenuBar code to maintain their QPA equivalents if they exist. Change-Id: Id605de3da8811dc832bf48b35f9107778ad320ff Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Adding QPlatformTheme support for Blackberry devices.Sean Harmer2012-05-197-2/+306
| | | | | | | | Starting off simple with fonts that follow the Playbook guidelines. Change-Id: If772f9a20c5e7566543be6bba47b49cdf3bf1524 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* QNX: Special case z-ordering of the QDesktopWidget windowSean Harmer2012-05-191-1/+11
| | | | | | | | | | | | | | | | | The assumption that window creation order implies correct initial z-ordering is broken when dealing with certain window types. In this commit we special case the QDesktopWidget's window which maybe created after normal application windows yet still need to be layered below them. Without this fix we may accidentaly activate the Desktop window when the blackberry navigator service sends an event to activate the window group. That results in broken focus handling. Change-Id: I42dfde2efb4a0011e37e7bd2e7c5442590606a24 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Kevin Ottens <kevin.ottens.qnx@kdab.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* eglfs: hooks can never be nullGirish Ramakrishnan2012-05-181-8/+4
| | | | | | | | | | e60ca0de6015a8ee16c7be54d0d430252ef525c1 reworked the hooks design. hooks is initialized with a stub pointer if we don't have a platform hook. Change-Id: Ia60facfebd9e4d9c08d237c6d49793efb598130f Reviewed-by: Donald Carr <donald.carr@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* eglfs: Add support for cursor hotspotsGirish Ramakrishnan2012-05-184-14/+69
| | | | | | | | | Cursor information is now loaded from cursor.json. Done-with: Johannes Zellner Change-Id: I093cf8e944d495269973e777d0b444ae4ececee1 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* eglfs: Allow cursor atlas to be specified using an env variableGirish Ramakrishnan2012-05-171-1/+4
| | | | | | | | The atlas it assumed to have 8 cursors per row. All cursors have to be square. Change-Id: I7ffbad4662be450b146f84032bb26187894d528f Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* eglfs: delete cursor textures in the destructorGirish Ramakrishnan2012-05-171-1/+7
| | | | | Change-Id: I7e86313134c428bacda41f5e5401ebc392ceecd8 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* eglfs: remove multiple references to qeglfshooks.h in HEADERSGirish Ramakrishnan2012-05-171-1/+0
| | | | | | | ce2b46daea5815df1070463b6bc379e1b4573dae introduced the mistake. Change-Id: Ifbd276dc24138dfb771d0cb14cb5d18dfa7beb2d Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Handle EglDisplay and EglContext in the native interface of eglfs.Samuel Rødal2012-05-163-1/+39
| | | | | Change-Id: I793176204f12eea9d915fb7fe489bd3450a283cd Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Add eglfs cursor supportGirish Ramakrishnan2012-05-169-1/+381
| | | | | | | | cursor-atlas.png was generated from existing cursor images (qttools/src/shared/qtpropertybrowser/images/) Change-Id: Ic4b396590eaec93e14a4b0915b15f735f5b1a5f5 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* input: Use UDev or specific device pathsJohannes Zellner2012-05-153-19/+23
| | | | | | | | | Keyboard,mouse and touch plugins using evdev now either use udev for device discovery or the plugin arguments for fixed device paths. Change-Id: I72606ad48c15c55a49724a82f7bc285dd3984c43 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Windows: Trim filter specification of the native file dialog.Friedemann Kleint2012-05-151-1/+2
| | | | | | | | In the event customer code (namely Qt Creator) does not pass a clean specification (corresponding to 4.8 behaviour). Change-Id: I8271e3a45bea4bea912fcdf0b7c0aae6c022c6a8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Do not limit mingw mkspec to "win32-g++" only.kb2012-05-151-1/+1
| | | | | | | | | | | | The Qt configure script and various qmake project files interpret mkspecs with a win32-g++ prefix as needing special mingw treatment. This patch corrects one instance of the too-specific "win32-g++" qmake platform scope and broadens it to "win32-g++*" -- bringing it in line with the rest of the Qt project files -- thus re-enabling custom mkspecs for crosscompilation. Change-Id: I8c5107053ce9e0c499002b1990b492bda0eec52b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Fix font printing on Windows using the native engine.Friedemann Kleint2012-05-153-6/+25
| | | | | | | | | | | - Add HFONT, LOGFONT, trueType as properties of the Windows font engine, make it a real Q_OBJECT. - Query properties in the Windows print engine and use the HFONT, LOGFONT there. Change-Id: I5c35275b32ef6580d7fa15ed83c6e79e33dc3334 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Fix include path to fb_base.priGirish Ramakrishnan2012-05-151-1/+1
| | | | | | | Also fixes a typo in fb_base.pri. Change-Id: I4fae156640325a7a2894ea0d1fbe96936f190bdb Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Remove capitalization when specifying include-libraries.kb2012-05-143-4/+4
| | | | | | | | | | | | | MinGW installations on case-sensitive filesystems expect lowercase names of include-libraries and (usually) include files. When crosscompiling on Debian 6 (targeting MS Windows) linking fails because mingw is looking for non-existent include-libraries. Using lowercase names solves this. Change-Id: Id3454f4ed8ba42b6ea93d65d9c0ce567db6712df Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Do not override CO_E_NOT_SUPPORTEDkb2012-05-141-0/+2
| | | | | Change-Id: Id0cb9e1dca67400a2e3a02da663d810b06bdb6ec Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Windows: Query mouse double click interval from system.Friedemann Kleint2012-05-141-1/+4
| | | | | | Change-Id: I6bfd19a76bf3fde1344760d7f216a2dffa4b9018 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Add missing include library to prevent link failurekb2012-05-141-0/+1
| | | | | | | | When cross-compiling the uuid library needs to be included explicitly so the linker has access to _IID_IUnknown et al. Change-Id: I713af426357603c08eef55857be20105e5aa6eba Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* QGuiApplication::activeWindow() is deprecatedThiago Macieira2012-05-111-1/+1
| | | | | Change-Id: Id66740eb42fdaa86807222fbebc148de9434fa6e Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
* Make QFileOpenEvents delivered again.Christoph Schleifenbaum2012-05-111-4/+5
| | | | | | | | Create a FileOpenEvent within QWindowSystemInterfacePrivate and handle it in QWindowSystemSystemInterface and QGuiApplication Change-Id: Ie777c923958d83d56e8648c9bfb1f9dcb985654d Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Windows: Compress Window Activation events.Friedemann Kleint2012-05-112-4/+30
| | | | | | | | | | | | | If the next active window is already known at the time a focus out is received, pass it to QWindowSystemInterface. Fixes a test and Qt Creator's locator bar. Task-number: QTBUG-24186 Task-number: QTCREATORBUG-1 Change-Id: I0aed4c386c08ed182555c95640e1637c5b67f5ce Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Doc: Fix \sa usageMarius Storm-Olsen2012-05-111-2/+2
| | | | | | | | | Ensure comma between elements (757 missing), single space and curly- braces around title elements, etc. Change-Id: Id16c3fda7fc47a12a0682f8720214f4990609a97 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Fix for windows platform plugin to work with WINCE.Bjoern Breitmeyer2012-05-1024-110/+802
| | | | | | | | | | | Made opengl optional. Made Clipboard and Accessability optional. Moved internal mime data into its on source file, was implemented in the clipboard source which is just strange. Change-Id: I6ddf0c656533bd45e22e24492fc2254d15b7822f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Fix warnings in evdevkeyboard-plugin.Friedemann Kleint2012-05-103-8/+9
| | | | | | | | - Fix warning about set-but-unused variable in case QT_NO_LIBUDEV. - Compile with QT_NO_CAST_FROM_ASCII, string usages. Change-Id: Ie98f1b4283919be878f8bbfc6e7378ad655152f8 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
* XShaping drag and drop fixesAlbert Astals Cid2012-05-102-9/+13
| | | | | | | | No shaping rectangles means no interaction with the window The shaping rectangles are based on the window coords, so need to substract the window coords when checking for the point Change-Id: Ic9004a8ec0f447cddcd1b4324d9fd60a94787cb9 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* qpa: Remove QPlatformDialogHelper::deleteNativeDialog()Bradley T. Hughes2012-05-108-40/+24
| | | | | | | | | | | | | | | | This function isn't really needed. The QDialogPrivate destructor deletes the platform helper, so the QDialog destructor does not need to do it. Subclasses of QPlatformDialogHelper are now responsible for deleting any native resources they create. The one place in QFileDialog that needs to recreate the native dialog can simply recreate the helper. QDialogPrivate::deleteNativeDialog() now becomes QDialogPrivate::deletePlatformHelper(), which resets all state to allow the platform helper to be recreated. Change-Id: I58adfe8801e02e63b3cb4a9a3a0b8cb5b3c7b161 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* qpa: Clean up QPlatformDialogHelper APIBradley T. Hughes2012-05-108-74/+74
| | | | | | | | | | Remove the _sys suffix from all members of QPlatformDialogHelper and its subclasses. The QPlatform* class prefix already implies that these methods are system specific, we don't need the method suffix as well. Change-Id: I5ad1f928fab3a989992951acc244915e7fa48d32 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Compile fix for kms plugin.Samuel Rødal2012-05-091-1/+0
| | | | | | Change-Id: I0ad9716273a7beb643fab5fafc7fcf4884c8a364 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Enable float coords in evdevtouchLaszlo Agocs2012-05-091-4/+4
| | | | | | | | There is no reason to truncate the touch position. Change-Id: I2bdcd43d3bb06a664e909d92704a701ece603847 Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Windows: Disable Non-modal native file dialogs.Friedemann Kleint2012-05-091-0/+8
| | | | | | | | Disable dialogs, add explanatory comment. This is now equivalent to Qt 4. Change-Id: Ib6f4853d6f7ef1812bd5887d3ced8d7c8d1db5c8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* QPA: Cleanup native dialog modal executionBradley T. Hughes2012-05-098-122/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the _q_platformRunNativeAppModalPanel() function, together with the launchNativeAppModalPanel() signal and emitLaunchNativeAppModalPanel() slot, which were previously used to run the modal loop inside the QDialog::exec() loop. This trick isn't necessary anymore, so remove the mechanism and code related to it. Rename QPlatformDialogHelper::platformNativeDialogModalHelp() to exec_sys(). This function is now responsible for both showing the native dialog and running the modal loop. QDialog:exec() now calls this function if a native dialog is in use (it does not call QEventLoop::exec() anymore). The dialogResultCode_sys() function was unused, so it has also been removed. This commit also removes some unused private slots that were left over from the port to QPA. Note that the comments in the Cocoa plugin are still valid and relevant, but this commit does not fix the scenarios mentioned. This will be done in a future commit. The Windows plugin needs minor changes. The QueuedConnections to accept() and reject() cause the deliver to come too late, resulting in crashes, hence the change to AutoConnection (which ends up being a DirectConnection). Change-Id: Ifc90325c945ca78737e60bf331929f03ecc52e0a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Improve widget geometry.Friedemann Kleint2012-05-095-21/+80
| | | | | | | | | | | | | | | | | | | | | | | | - Rename posFromMove to posIncludesFrame in Widgets and make the handling more fine-grained; try to clean it up as soon as the frame margins are known in QWidgetPrivate::fixPosIncludesFrame(). - Implement QWidgetPrivate::updateFrameStrut(). - Windows: Handle posIncludesFrame in window creation, notify changed geometry after setting window flags. - XCB: Do not change the window gravity in propagateSizeHint() as this causes the window to jump around. Determine the gravity in window creation, leave it constant and fix the geometry when setting instead. - Store the normal geometry when maximize/fullscreen state change events are received. - Remove xfails from fixed tests Task-number: QTBUG-25331 Task-number: QTBUG-24905 Task-number: QTBUG-24294 Change-Id: I89c7229d86aaf88f02247d63915da7905e4a27ea Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* QPA: Add a themeHint for the animations.Friedemann Kleint2012-05-091-0/+18
| | | | | | | | | | | Introduce a flag matching the Qt::UI_Effect enumeration and return it as hint. Replace the separate boolean flags in QApplication by a single integer using the flags. Change-Id: I29e33d4d23d13723ddb1b3f62fe781b9c0747572 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Don't leak native dialog resourcesBradley T. Hughes2012-05-092-6/+2
| | | | | | | | | | | | Have QDialog::~QDialog() call deleteNativeDialog_sys() on the helpers, so that we don't risk leaking any resources allocated in the helper. QFileDialog does this now, but not QColorDialog or QFontDialog. The Cocoa plugin worked around this problem by calling deleteNativeDialog_sys() itself, but the Windows plugin does not do this, resulting in leaks. Change-Id: I380d87c95686c8f3cb260f9242299be27329280d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Added QScreen::refreshRate() to get the vertical refresh rate.Samuel Rødal2012-05-088-4/+96
| | | | | | | | | | | | To give applications that want it the option to use a fixed timestep for animations, and to avoid having values of 60 hard-coded (we have a couple of those in qtdeclarative/src/quick already), we need to know the refresh rates of the screens we are rendering to. Change-Id: Ife49162e830440ad7eab563a27e8aebbbafc5fc5 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>