summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
...
* QPlatformScreen::grabWindow() support on MacTasuku Suzuki2012-07-063-1/+64
| | | | | | | | Added QCocoaScreen::grabWindow() and copied Qt 4 implimentation. examples/desktop/screenshot works but WId window is not handled yet. Change-Id: If228bb59d98a5166788ab38293d7e6a6300d1f85 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Fix positioning when embedding native widgets such as QGLWidgetMiikka Heikkinen2012-07-061-0/+1
| | | | | | | | | | | Embedding native widgets creates window before ActiveQt has a chance to set the _q_embedded_native_parent_handle property on the window, so embedded flag doesn't get set during window creation. Update embedded flag also when setting window flags. Task-number: QTBUG-26438 Change-Id: Id29d7123de81d6542dfd6471d6dba3d31bbfe2df Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Implement nativeResourceFunctionForContext for xcbJorgen Lind2012-07-062-2/+12
| | | | | Change-Id: Icf6c39fb456b39fec58ac2f74c569b9d01993589 Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* fixed cursor handling on winceBjoern Breitmeyer2012-07-064-1/+68
| | | | | Change-Id: Iea91dde458b0e41a55ba6cb3e157756a1473f653 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* eglfs: Allow setting screen size through environment variables.Robin Burchell2012-07-061-0/+16
| | | | | | | | | | | | This adds: - QT_QPA_EGLFS_WIDTH - QT_QPA_EGLFS_HEIGHT If both are set, fb0 detection is completely bypassed, otherwise, the environment variables act as an override for the fb0 values. Change-Id: Iaf38c8b0d40ce0a921bb6c5dbf31af788802d3fa Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Disable dedicated screen event thread by default.Rafael Roquetto2012-07-051-3/+3
| | | | | | | | Screen events should come through QEventDispatcherBlackberry by default. Change-Id: I64d17b99e9dd8edf23f68e1186e9318849f1a398 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
* Sync QWindow properties on NSWindow creation.Morten Johan Sorvig2012-07-051-0/+6
| | | | | | | Synchronize size hints, window title, flags and state. Change-Id: Ibc2358d8d4d0625aaddfbcad159e3682e3e79d3c Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Native drag implementation on MacJames Turner2012-07-044-1/+169
| | | | | | | | | | | | | | | | Create a native implementation of QCocoaDrag, using the 10.6 (and earlier) Cocoa dragging API. This matches the implementation in Qt4 closely for the moment. In the future it may be desirable to create an alternative implementation using the new (non-blocking) drag API introduced in 10.7, but that will require deeper changes to the mime-data handling. This changes makes one more method on QPlatformDrag virtual, since the Cocoa behaviour diverges from the base version: ::defaultAction is customised. Change-Id: I1843293a62b2b4973a07b5e75ea3c312dc064018 Reviewed-by: Christoph Schleifenbaum <christoph.schleifenbaum@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Cocoa: Fix size hint and resize increment setting.Morten Johan Sorvig2012-07-041-4/+16
| | | | | | | | Call the corresponding NSWindow size functions. Add special cases where Qt returns null or empty sizes. Change-Id: I880c50c04e92271dc342ad587191c8cb2c006dba Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Make QGenericPlugin and QGenericPluginFactory public APIGirish Ramakrishnan2012-07-046-6/+6
| | | | | | | | | | These classes are not specific to QPA. Discussed in QtCS 2012. Change-Id: I32bc5fad4f0fa5e7095af86d61966fdf4d9e4ad7 Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com> Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Platform-plugin support for QSystemTrayIcon.Christoph Schleifenbaum2012-07-037-0/+643
| | | | | | | | | | | | | | | | | | | | | Implement QPlatformSystemTrayIcon providing QPA-plugin-support for system tray icons. Make QSystemTrayIcon use this as new backend. Ported over qsystemtrayicon_mac.mm to qcocoasystemtrayicon.mm to provide Cocoa support for the new interface. It had to be changed to match the interface, especially for icon and menu handling. This interface is made to not use QStyle or QMenu which are related classes of QSystemTrayIcon. It's therefore not introducing QtWidget dependency into the platform plugin. Task-number: QTBUG-20978 Change-Id: I0d0a73835698b3b4f97219d4f5bbcfa2af57dbe2 Reviewed-by: Christoph Schleifenbaum <christoph.schleifenbaum@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Fix focus handling when the application has QAxWidgets.Miikka Heikkinen2012-07-032-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | Removed old defunct platform specific code from QWidget::isActiveWindow() and added call to QPlatformWindow::isActive() instead. This is done because the embedded native windows inside QAxWidgets can have focus but are not part of the parent application's Qt window hierarchy, so native methods are required to determine if they are part of the active window or not. QWidgetPrivate::setFocus_sys() was implemented to activate the window of the focused widget if the focus was elsewhere. This is required because embedded native windows can steal the focus from the main application window. Focus event handling in Windows platform adaptation plugin was fixed to correctly identify the active window in cases where the are embedded native widgets that can have focus. Also fixed three test cases that were affected by these changes. Task-number: QTBUG-25852 Task-number: QTBUG-23699 Change-Id: I817e0ce4317e88955bb49b034eacd630a876ccf0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Compile when -directwrite is passed to configureEskil Abrahamsen Blomfeldt2012-07-032-8/+7
| | | | | | | | | | | The signature for alphaRGBMapForGlyph() was updated in the header but not the implementation. The include with QT_BUILD_GUI_LIB defined would re-export several symbols in QtGui from the plugin which would make the link against QtGui fail. Change-Id: I23c67f97ca68f984b7a1603059c6f177fef60cca Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
* Suppress QWindowSystemInterface inclusion warnings.Girish Ramakrishnan2012-07-0335-35/+35
| | | | | | | | | | | | | Since QWindowSystemInterface is now part of QPA API. The correct inclusion is: #include <qpa/qwindowsysteminterface.h> #include <qpa/qwindowsysteminterface_p.h> Bulk of the work was done by: find . -type f | xargs sed -i -e 's,#include <\(QtGui/\)\?QWindowSystemInterface>,#include <qpa/qwindowsysteminterface.h>,g' Change-Id: If75fc32611e72ef1cf58505794def375b1acf74a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* fixed compile for mouse button handling on winceBjoern Breitmeyer2012-07-031-0/+4
| | | | | | | | | WinCE does not support SM_SWAPBUTTON, so the define will let ce fail the function call and correctly assume normal mouse button handling Change-Id: Id603b3b6a995e22d8800e19a5566a56df95c8962 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Optimize QWindowsFontEngineDirectWrite::initFontInfo() a bitKonstantin Ritt2012-07-031-17/+17
| | | | | | | | by using QVarLengthArray instead of allocating memory on a heap and by skipping a subsequent checks & calls in some cases. Change-Id: I300d8eaf02ef718ce50833b7c2ca7ebe8cfd0224 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* DirectWrite font engine: don't leak the font table bufferKonstantin Ritt2012-07-031-13/+11
| | | | | | | | | | | Ideally, each TryGetFontTable() call sequence should be followed by the call to ReleaseFontTable() with the context value taken from the first TryGetFontTable() call, otherwise we'll leak the buffer allocated for the font table. Change-Id: I627bf0133b7f61798e82929723ccfb780ce9ee69 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* QNX: Enable threaded OpenGL rendering on QNXSean Harmer2012-07-035-29/+68
| | | | | | | | | | | | | | The only complicated aspect to this was deferring EGLsurface re-creation as a result of window geometry changes (e.g. when we receive an orientation change event). To allow this to be done in a controlled way we defer the surface manipulation until the next call to QQnxGLContext::makeCurrent(). Change-Id: I8062d3e4d19220a822fbc3b8ca563bb1e3be09d0 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Fix MinGW-w64 compilationJonathan Liu2012-07-021-3/+3
| | | | | | Task-number: QTBUG-24699 Change-Id: If6210315926f0266045766bb5d3b00a6d0bdf703 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Add framestrut mouse events.Friedemann Kleint2012-06-295-8/+50
| | | | | | | | | | | | | - Add infrastructure to QWindowSystemInterface. - Add a setter for enabling framestrut events to QPlatformWindow. - Add Windows implementation, pass keyboard modifiers. QDockWidget relies on it for docking. Task-number: QTBUG-26296 Change-Id: I9d84b356e9a5eb341f57b6f51f34b6b494ff7f87 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* QQnxWindow: properly scope a local variableMarc Mutz2012-06-291-4/+1
| | | | | | Change-Id: I71f1052f614f4e926acf2c2b76963770f7b35c96 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QNX: Don't detach when iterating over child windowsThomas McGuire2012-06-281-19/+10
| | | | | | Change-Id: I55dcc1d188a2c45a11b0ab6a194625b50906eca9 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Basic tablet support in xcb through XI2Laszlo Agocs2012-06-286-76/+464
| | | | | | | | | | The Maemo-specific function have been renamed a bit to prevent them clashing with the more generic stuff. Task-number: QTBUG-25865 Change-Id: Id55693159e15d5a0c679546eb48308feb48acac9 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* QNX: Make geometry changes sync to fix QWidget::showFullScreen()Thomas McGuire2012-06-281-1/+1
| | | | | | | | | | These can't happen async, as otherwise the geometry of the widget is changed too late, having the effect that QWidget::show_sys() would overwrite the window geometry again. Change-Id: Id60d009867a5b282ac14c112c872af1075660732 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* fix QWidget::showFullScreen on WindowsJoerg Bornemann2012-06-281-0/+1
| | | | | | | | | | When calling SetWindowPos in QWindowsWindow::setWindowState_sys we must inform the QWidget about the new size we have set. Task-number: QTBUG-26226 Change-Id: I42b01125f50a94cdb97026c74f5445f9ff47d8ba Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Further fixes to widget maskingMiikka Heikkinen2012-06-281-0/+7
| | | | | | | | | | | | | If mask was set to a widget before the widget was shown, the mask was not applied. Also, if toplevel widgets were set a mask in Windows, the mask was applied to frame coordinates instead of client coordinates. Ported relevant code from Qt4 to fix these issues. Change-Id: Id6187cf4952b81b5b60c167e2fd284b7dc83ed9c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Move QPlatformInputContextPlugin/Factory to QtGuiWeng Xuetian2012-06-282-2/+2
| | | | | | | | | | | | | PlatformSupport is no longer shared and there should be no plugin factory in it otherwise it will break plugin loading. Since PlatformInputContext is already in QtGui, so move QPlatformInput- ContextPlugin/Factory to resolve the platforminputcontexts plugin loading problem. And remove platformsupport-private dependency from existing inputcontexts plugin. Change-Id: If4cb766470b8f9c8b72157da86cb33b4e1ff09e3 Reviewed-by: Pekka Vuorela <pekka.ta.vuorela@nokia.com>
* Set window's surface format to support alpha channel.Gatis Paeglis2012-06-281-1/+0
| | | | | | Task-number: QTBUG-26114 Change-Id: I33f191373327832fb9d3054366412ec5be855cff Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* QNX: Add support for window statesThomas McGuire2012-06-272-1/+42
| | | | | | | | | Now QQuickView::showFullscreen() works as expected. QQuickView has no fallback for platforms without window state support, as opposed to QWidget. Change-Id: I9c41fe563ea1f6d117eaebd3ea1db87465142b85 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QNX: Flush after changing rotationThomas McGuire2012-06-271-0/+4
| | | | | | | | | This fixes a painting glitch where the window would stay in the old position with the old rotation until it got repainted. Change-Id: Id9de256b525760e8b32e55a87549efeccca151e0 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
* Also use x11FilterEvent for auto repeat key in xcb.Weng Xuetian2012-06-271-8/+24
| | | | | | | | | filterEvent for QPlatformInputContext is already used for auto repeat key, x11FilterEvent also need to be filtered. Task-number: QTBUG-25795 Change-Id: I3db87fdffdb5b01404047e905793ae6e10bb1e90 Reviewed-by: Pekka Vuorela <pekka.ta.vuorela@nokia.com>
* Add const & to foreach 'iterators'Albert Astals Cid2012-06-273-12/+12
| | | | | | | Change-Id: I8c0600dfd919f45d14a0011f2da9b9fe0b9a0df3 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Add QPA prefix and version number to QPA plugin factory interfaces.Friedemann Kleint2012-06-2711-11/+11
| | | | | | | The interfaces may change in Qt minor versions. Change-Id: I43bc6245ddbba8232e00313bdc64e8e60c7eab6f Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Convert QPA menus to use QIcon, and enable icons.James Turner2012-06-272-4/+5
| | | | | | | | | Icon support was disabled in QPA menus, now QIcon is in QtGui, convert the QPA interface, enable setting the icon in QMenu, and make the Cocoa implementation use it. (And fix a ref-counting leak if an icon is actually set) Change-Id: Ica203bf6826b79d8beee58f39febc851b9633a66 Reviewed-by: Christoph Schleifenbaum <christoph.schleifenbaum@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Add a method for querying window activation status from QPA.Morten Johan Sorvig2012-06-272-0/+10
| | | | | | | | | | Add QPlatformWindow::isActive(), where the platform can do further isActive tests, and Windows implementation for it. Change-Id: I1acfc44d3a4ab36a3aaee52fb7b5f5b40661095e Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Fix compilation for XCB-without-XlibGiuseppe D'Angelo2012-06-261-1/+1
| | | | | | | | | Commit 6481218da13539529b87626a352a17f42c57be61 broke the build by removing the #ifdef XCB_USE_XLIB guards, but forgetting to port Button1 to the XCB equivalent. Change-Id: I9102feceb4deb0135ce0df318e46b35d1134a0b9 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Fix warning when ibus is not available.David Faure2012-06-262-11/+3
| | | | | | | | This is perfectly ok on a linux desktop, so no reason to abort when setting QT_FATAL_WARNINGS. Change-Id: I64ba987679195741631fb204af57ae3d283bb516 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* QPlatformWindow: Add Window masks.Friedemann Kleint2012-06-267-0/+107
| | | | | | | | | Add functionality for window masks to QPlatformWindow, which is required to implement QWidget::setMask() in order to fix the regression in functionality from Qt 4.8. Change-Id: I2c2d5629f0b4c6d90e52595ad70b13559aab1f41 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* [QNX] Enable MT screen event handling on BlackberryRafael Roquetto2012-06-263-6/+29
| | | | | | | | | | | | | | | | Consuming incoming screen events through the BPS event dispatcher on its current incarnation has proven to be very inefficient since it cannot put up with the screen event throughput. This patch enables the screen event thread also for Q_OS_BLACKBERRY platforms, in addition to stock QNX. This behavior can still be configured through the project file, though. Task-number: QTBUG-26177 Change-Id: I98a3b22549c9fbf0c16b5a8c39a55c1eaa6ec1f4 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Use the new plugin systemLars Knoll2012-06-253-6/+3
| | | | | | | | Convert the last remaining three plugins over from the old plugin system. Change-Id: I355e6bb068ec4afb58a2ee9542f86e2913b3851d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Make qtbase compile with QT_NO_DRAGANDDROPTasuku Suzuki2012-06-242-4/+5
| | | | | | Change-Id: Ief16e435af6e6d246b84505a1c1208994c7b0b38 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Jeremy Katz <jeremy.katz@nokia.com>
* Guard evdev specifics with QT_NO_EVDEV.Robin Burchell2012-06-241-0/+4
| | | | | | | Android fails the evdev configure test at present. Change-Id: I1cbaf2dab589f647c02c8c5b92f72bd5159ccfa9 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Implement QXcbIntegration::queryKeyboardModifiers()David Faure2012-06-224-3/+19
| | | | | Change-Id: Ifd2255362f5ef005e2a57f4001a72d932497b453 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Add gui-private to generic pluginsGirish Ramakrishnan2012-06-226-5/+7
| | | | | | | QWindowSystemInterface will shortly be marked as QPA API. Change-Id: I0b7cb1a75e3a4f0fc4627329edd3bfd21583a0a6 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
* eglfs: move m_pos into CursorGirish Ramakrishnan2012-06-222-8/+7
| | | | | Change-Id: I51e92d265e7ea6372ae58b357f75362e2d9a2df9 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Fix key modifiers in mouse wheel events on Windows.Glenn Watson2012-06-222-1/+14
| | | | | | | | | | | | The Windows platform plugin was not checking for the control or shift keyboard modifiers when processing mouse wheel events. Added a function to convert Windows wheel events to Qt::KeyboardModifiers and passed this through the event chain. Task-number: QTBUG-25754 Change-Id: I6551e98b4eaebad5704058bddfb06502ded5155d Reviewed-by: Martin Jones <martin.jones@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Reimplement QXcbWindow::startSystemResize() with xcbUli Schlachter2012-06-222-22/+15
| | | | | | | | | | This function just sends a ClientMessage to the window manager. XCB can do this fine and there is no need to require Xlib for the job. Change-Id: Iad3d78c393c1f439fff987fa19b4d82513810930 Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Improved QCursor::setPos() robustness on xcb.Samuel Rødal2012-06-201-0/+1
| | | | | | | This makes tst_QGraphicsView::hoverLeave() less flaky. Change-Id: Iaa1be6e2d02499679c69b26c07132413040173b6 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
* Windows: Fix MinGW warnings.Friedemann Kleint2012-06-204-14/+15
| | | | | | | | | | | - Missing initializers for structs - Missing enumeration value - Mixing enumeration/ints in operator ? Change-Id: I149ab01ad2ebd04f89e5c699905d5ba724828e0f Reviewed-by: Mark Brand <mabrand@mabrand.nl> Reviewed-by: Jonathan Liu <net147@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Disable TranslucentBackground for WinCE to fix Windows QPA plugin build.Janne Anttila2012-06-191-0/+4
| | | | | | | | | | WinCE and WEC7 does not support layered Windows APIs: http://msdn.microsoft.com/en-us/library/hh300132.aspx For now - fallback to default window BitBlt always in WinCE. Change-Id: I6f99d198dec9e90fb4a968882271b466638009d6 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>