summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/xcb
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-3038-38/+38
| | | | | | | | | | As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: I311e001373776812699d6efc045b5f742890c689 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Fix compilation of MeeGo/Maliit related code after Qt::ScreenOrientation API ↵Simon Hausmann2012-01-271-1/+1
| | | | | | | | | changes Qt::UnknownOrientation is now Qt::PrimaryOrientation. Change-Id: I2846a90bd11ecd1416c29b7bd861f180ccb129a1 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
* Fall back on glXChooseVisual() if glXChooseFBConfig() doesn't work.Samuel Rødal2012-01-272-27/+39
| | | | | | | | | | Some older drivers don't fully support glXChooseFBConfig(). As a bonus, fix some memory leaks here and there. Task-number: QTBUG-21880 Change-Id: Ie306dee27f616927a6aa55fd71601569b828afcc Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* XCB: Introduce enumeration for event filter types.Friedemann Kleint2012-01-233-10/+25
| | | | | | | | Remove QByteArray-construction and hash lookup in the event handling; use an enumeration indexing an array instead. Change-Id: I4d272b32a5ff71c8da58197cf3a0b38c1e61d489 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* xcb: Correctly check the X11 connectionUli Schlachter2012-01-231-1/+1
| | | | | | | | | | | | | Commit e08453f31ae2a195f86a763f0b1c5e617df0e1ce added a check which makes sure qt prints an error message instead of segfaulting when it can't connect to the X11 server. However, libxcb will never return NULL from xcb_connect() and thus that commit only works if XCB_USE_XLIB is defined and used. Change-Id: I8cc1496494a94f07055a3ac5093ce362dd347c5b Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* xcb: Don't crash on missing mouse pointerUli Schlachter2012-01-231-4/+6
| | | | | | | | | | | | | | | | | | | The draganddrop examples all crashed here because they were using a default-constructed QImage() (i.e. one without any content). I guess this happens here because I don't have any mouse theme set. To test, one could start a second X server, but without any WM or DE. The "evil" QImage() came from QGuiApplicationPrivate::getPixmapCursor(). This function seems to just always "return QPixmap();". This fix is correct because the only caller has another fallback if the createNonStandardCursor()-fallback didn't work. This caller is QXcbCursor::createFontCursor(). Change-Id: I7ec7fbcfdf0203e983149b5e73016cc7e85ecf40 Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Update contact information in license headers.Jason McDonald2012-01-2338-38/+38
| | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I431bbbf76d7c27d8b502f87947675c116994c415 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Introducing QPlatformSharedGraphicsCacheEskil Abrahamsen Blomfeldt2012-01-207-2/+1280
| | | | | | | | Interface to provide cross-process caching mechanisms in a platform plugin. Can be used for shared glyph caches and icon caches etc. Change-Id: If0d89a0a50bbd6eee05daf908448262ff270fc5b Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
* Add support for platform plugin specific event filters.Simon Hausmann2012-01-206-69/+97
| | | | | | | | | The setEventFilter on the platform native interface allows subscribing to events on the backend by event name. Change-Id: Ib10077fbc69f0207edbae1177e7bbd18c8d0f9ae Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com> Reviewed-by: Michalina Ziemba <michalina.ziemba@nokia.com>
* Added libxrender-dev to xcb's README.Samuel Rødal2012-01-171-2/+2
| | | | | | Task-number: QTBUG-23633 Change-Id: I9428d04dab9e769f531a5aaffb943c6c2fa79f9a Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Add support for QWindow::setOrientation on HarmattanSimon Hausmann2012-01-175-5/+36
| | | | | | | | | | Set the _MEEGOTOUCH_ORIENTATION_ANGLE property on the window, just like Qt Components for MeeGo and MeegoTouch itself. Change-Id: I0b9adf4550593678bbcba89a2d4f1f65c1f4bd20 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* xcb: Obey maximum request length when uploading imagesUli Schlachter2012-01-161-11/+41
| | | | | | | | | | | | | | | | | | | | | When connecting to an X11 server, the server tells the client what its maximum allowed request size is. Larger requests are not permitted. Thus, libxcb verifies that all requests which are sent are smaller than this size limit and possibly kills the connection (without any good error message). Thus, when uploading an image, we could be trying to send more pixel data than fit into a single request. If this would be the case, the code will now use multiple requests where each request only sends a part of the allowed rows. In case all the data fits into a single request, this commit shouldn't change any behavior. Change-Id: I84a4ebfcdb6de7e206015c37e3e33cba3bd309b1 Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* xcb: abort (rather than segfault) when X is not availableRohan McGovern2012-01-161-13/+16
| | | | | | | | Be more user-friendly (e.g. when logging into a machine by ssh and forgetting to export DISPLAY). Change-Id: I9d07b0af9c5b4841827826053bb27b507801ae61 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Added application flags to translate between touch and mouse events.Samuel Rødal2012-01-131-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current way we do it of having the platform or touch plugin send both mouse and touch events is not ideal. There's no good way to write an application that works sanely both on a touch-only device and on a desktop except by restricting yourself to only handling mouse events. If you try to handle touch events you don't get any events at all on desktop, and if you try to handle both, you end up getting duplicate events on touch devices. Instead, we should get rid of the code in the plugins that automatically sends mouse events translated from touch events. This change enables that by making the behaviour fully configurable in QtGui. Two new application attributes are added to explicitly say whether unhandled touch events should be sent as synthesized mouse events and vice versa, and no duplicates are automatically sent as the current situation. Synthesized mouse events are enabled by default. We also get rid of the QTouchEvent::TouchPoint::Primary flag, which was only used to signal that the windowing system automatically generated mouse events for that touch point. Now we only generate mouse events from the first touch point in the list. Change-Id: I8e20f3480407ca8c31b42de0a4d2b319e1346b65 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@nokia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* Match the name in the cpp fileAlbert Astals Cid2012-01-111-1/+1
| | | | | | | Which is actually the name Lars wanted i just forgot to fix it everywhere Change-Id: Iaa190da6c17d0a423c34202c986d69feec01af96 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Rename check to checkEvent.Stephen Kelly2012-01-104-5/+5
| | | | | | | Avoids conflict with macro on Mac OS. Change-Id: I1b597205c32531e054832fcb396622b47b18040a Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Lock X display while calling XESetWireToEvent and its callback.Samuel Rødal2012-01-101-3/+7
| | | | | | | | | Prevent potential race conditions as suggested by Uli Schlachter. Change-Id: Ia93eb8be1cbbc3d8ae7913a934c195af6b5ec538 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Uli Schlachter <psychon@znc.in>
* xcb: Fix a memleak when atomName() failsUli Schlachter2012-01-081-0/+1
| | | | | | | | | | The only reason for GetAtomName to fail is when an invalid atom is specified, so the xcb_generic_error_t struct doesn't contain any useful information for us. Still, we have to free it. Change-Id: I3da98018b7bfe08a9d7dcd566ed010f5d7b0df73 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Detect autoreapeat in xcb plugin.Samuel Rødal2012-01-073-3/+85
| | | | | | | Until now QKeyEvent::isAutoRepeat() would always return false. Change-Id: I7771bc7a7ec848ef280f99bada0a26eda188604e Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Remove all non-inline of qMalloc/qFree/qRealloc.Robin Burchell2012-01-061-2/+2
| | | | | | | | | | | | We're trying to deprecate these, so don't use them anymore. The inline uses of these have been left intact, for the moment. Inline code will need to create their own non-inline allocation methods (for future-proofing to allow alterations in how e.g. individual containers allocate) Change-Id: I1071a487c25e95b7bb81a3327b20c5481fb5ed22 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Use clipboard_timeout instead of hardcoded 5000 (since its the same value)Albert Astals Cid2012-01-051-1/+1
| | | | | Change-Id: Ia0edf04e36c8d30394a2bc9a691ab9aa78831f78 Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
* Free the repliesAlbert Astals Cid2012-01-051-0/+2
| | | | | Change-Id: I719bd95d94f3bfd41eeb09a49ac3e2701a516619 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Check for the clipboard manager when looping due to app quitingAlbert Astals Cid2012-01-052-3/+13
| | | | | | | | | | | | | One can be extremely unlucky and on session logout get this: * All apps are going down * A Qt app checks if the clipboard manager is there to yield its clipboard contents * The clipboard manager is still there * Then just after that check, the clipboard manager finishes because of the session end * This means the Qt app will loop for 5 seconds trying to yield its clipboard contents to a clipboard manager that is not there anymore Change-Id: Ia89670d4deb72f12e660a0d7aa5b2d212955d6fe Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Update copyright year in license headers.Jason McDonald2012-01-0534-34/+34
| | | | | Change-Id: I02f2c620296fcd91d4967d58767ea33fc4e1e7dc Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Disable logging in xcbJørgen Lind2011-12-221-1/+1
| | | | | | | | The logging groves and modifies a vector.. It should at least be a linked-list. but anyway, it shouldn't be enabled by default Change-Id: Iaebb1158eea1c907e31e9606b143c0318a189dd1 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
* Compile fix - qxcbconnection.cpp (‘Display’ was not declared)Thorbjørn Lund Martsum2011-12-131-0/+2
| | | | | | | | | | | To avoid getting qxcbconnection.cpp:89:29: error: ‘Display’ was not declared in this scope Platform linux - configured with ./configure -nokia-developer -nomake examples -nomake demos -nomake tests -no-gtkstyle -no-v8 Change-Id: Ief7315bb8aa67c6454cdeddb1c02e60ea79801b5 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Use QVarLengthArray in QXcbConnection.Robin Burchell2011-12-132-6/+9
| | | | | | | | | | There's no need in using a QList here, since it's never passed around anywhere; the reference counting is just unnecessary overhead. Change-Id: I92107c69f7338acc396e2ac4a69123c6a2becaed Reviewed-by: John Brooks <john.brooks@dereferenced.net> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Store the primary status in the touch point flags.Laszlo Agocs2011-12-121-1/+2
| | | | | | | | | | | | | | | | | For some reason the primary bit has previously been encoded in the touch point state, even though it has nothing to do with the regular states like Pressed, Released, etc. The value is now stored in the recently introduced flags member of the touch points. This also reduces the need for error-prone internal masking of the state value. The structure used by QWindowSystemInterface::handleTouchEvent also becomes cleaner because the primary status can now be set in the flags member and the isPrimary bool can be dropped. Change-Id: I1da2cb99154afd97e1e3a5943ab115cae3a8232f Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Remove event type parameter from handleTouchEvent.Laszlo Agocs2011-12-091-1/+1
| | | | | | | | | | | Requiring platform and generic plug-ins to pass TouchBegin, TouchUpdate, or TouchEnd is unnecessary. The type can be easily deduced from the touch point states. In fact handleTouchEvent already collected the combined point states, it was just not utilized until now. Change-Id: Icf3c787fefdebc51609a763bc4286c18a0b6aac2 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Extend touch events.Laszlo Agocs2011-12-091-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The capability flags indicate which information is valid in the touch points. Previously there was no way to tell if e.g. the value returned by pressure() is actually the value provided by the driver/device or it is just something bogus due to pressure not being supported. The points' flags return information about the individual touch points. One use case is to differentiate between touches made by finger and pen. Velocity, if available, is now also exposed. Each touch point can now contain an additional list of "raw" positions. These points are not reported individually but are taken into account in some way by the underlying device and drivers to generate the final, "accurate" touch point. In case the underlying drivers expose these additional positions, they are made available in the lists returned by the touch points' rawScreenPosition(). The raw positions are only available in screen coordinates to prevent wasting time with mapping from global positions in applications that do not use this data. Instead, apps can query the QWindow to which the touch event was sent via QTouchEvent::window() and can call mapFromGlobal() manually if they need local raw positions. The capability and device type information is now held in a new QTouchDevice class. Each touch event will contain only a pointer to one of the global QTouchDevice instances. On top of type and capability, the new class also contains a name which can be used to differentiate between multiple touch input devices (i.e. to tell from which one a given QTouchEvent originates from). The introduction of QTouchDevice has three implications: The QTouchEvent constructor and QWindowSystemInterface::handleTouchEvent need to be changed (to pass a QTouchDevice pointer instead of merely a device type value), and each platform or generic plug-in is now responsible for registering one or more devices using the new API QWindowSystemInterface::registerTouchDevice. Change-Id: Ic1468d3e43933d8b5691d75aa67c43e1bc7ffe3e Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Add support for three new X11 keysAlbert Astals Cid2011-12-091-0/+6
| | | | | | | | | New keys are: XF86XK_TouchpadToggle, XF86XK_TouchpadOn and XF86XK_TouchpadOff Change-Id: I51c0330213def093adf959d4065ee6d7c1f66d76 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Better handling of GLX / EGL errors.Samuel Rødal2011-12-073-5/+31
| | | | | | | | | | If context creation fails, try again without a shared context. Added QPlatformOpenGLContext::isSharing() and QPlatformOpenGLContext::isValid() to propagate whether the platform context was successfully created with or without sharing. Change-Id: I37080b645f531fd207946441057be6d3f6be3f6e Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
* Prevented Xlib sequence errors in xcb plugin.Samuel Rødal2011-11-291-0/+1
| | | | | | | | | | | | | | Prevent Xlib errors of the form "Xlib: sequence lost (0x2716a > 0x1717c) in reply type 0x11!" from being printed. We know the cause of these is because we're manually calling the XESetWireToEvent handlers since those are not handled by XCB, and this confuses Xlib since it's then seeing events with old sequence numbers. We simply set the sequence number to the latest sequence number and the errors go away. Change-Id: I2a9e7a7cfd0ba8692e43ce61f796a8189305e0d3 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com> Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
* Fix a small memory leak in QXcbIntegration.Jędrzej Nowacki2011-11-292-15/+12
| | | | | | | Prefer to use a smart pointer over a raw pointer. Change-Id: If8b5cbef8767433eab2f82c14abaa9608b8e61d0 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix a memory leak in QXcbConnection.Jędrzej Nowacki2011-11-182-3/+3
| | | | | Change-Id: I2307bf434c53d9321c71609eeacc1f3883bbbb13 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fixed crashes from tests using xcb plugin with -qtnamespace.Rohan McGovern2011-11-1812-2/+49
| | | | | | | | Use QT_BEGIN_NAMESPACE/QT_END_NAMESPACE consistently in xcb plugin. Some, but not all, of the sources were already using QT_BEGIN_NAMESPACE. Change-Id: I23b83cc88870fd4039437b733084ab86dd807356 Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
* Add correct event mask for Qt::WindowTransparentForInput in xcb pluginJørgen Lind2011-11-151-1/+5
| | | | | Change-Id: I4c683c08876cc6fa934971399af7e48b160168fc Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Properly handle position in non-synthetic ConfigureNotify with xcbLaszlo Agocs2011-11-151-1/+18
| | | | | | | | | | | | | | | The received window position cannot be trusted blindly, e.g. in case of resizing a window via the mouse or calling showMaximized() the position is bogus (for our purposes). Instead, it needs to be queried. Before 37f338e5edc6d7b70b5a4eaf63326f2a22d7bfbd an incomplete workaround was in place however it got removed in that commit, resulting in weird off-by-a-certain-amount mouse position issues in certain use cases. This patch aims to fix the issue similarly to how it was done in Qt4. Change-Id: I2d2a69b81a2782117b700fe366fae4c102aca1f4 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Support 31 mouse buttons (with platform plugins xcb and xlib).Rick Stockton2011-11-141-9/+30
| | | | | | | | | | | | | This commit includes changes for mouse button support within the XCB and XLIB platform plugins. Support in other platform plugins will be added in the future. The namespace update is prerequisite to compile the the Plugins, and the update in qguiapplication.cpp is required for the enhancements to actually work. Task-number: QTBUG-22642 Change-Id: Ie18fca3b9c86d0b6abbf2103a4f8582e6ce83e7d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Update readme about xcb plugin dependenciesLaszlo Agocs2011-10-251-0/+3
| | | | | Change-Id: Ia317ce96db3400f43cf800619fddcf76b5ab450a Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Fix TouchEnd events not being received on Harmattan.Jocelyn Turcotte2011-10-171-2/+3
| | | | | | | | | TouchEnd is sent when all the touch points have a TouchPointReleased state, and we would clear all touch points on finger release before sending them up the stack. Change-Id: I14e7347090ce9a1865743202f6926ae2fc035bd3 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Add multipoint touch support for Harmattan to the xcb platform plugin.Jocelyn Turcotte2011-10-175-0/+384
| | | | | | | | | | | Proper multipoint touch support was only introduced in XInput2.1, but Harmattan uses a tweaked version of XInput2.0 that transfers touch data through mouse events. This patch applies on the xcb plugin a subset of the changes that were applied on the Qt 4.7 that was shipped to Harmattan to get similar multipoint touch support. Change-Id: Ifda7ad40de29d7ded1443d4f78b3ec3807303a9f Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Add a warning and a return value to xcb's createGLPlatformContextLaszlo Agocs2011-10-171-0/+2
| | | | | | | | | | | | | | | | | There was no value returned previously when none of GLX, EGL, DRI was enabled. Now we show a warning message and return null (resulting in a crash). Previously not returning a value resulted in obscure crashes with strange-looking call stacks, now it will be clear what the problem is. This is particularly important because not having libx11-xcb-dev installed results in silently disabled xlib support which in turn disallows the usage of glx too. The result is an obscure crash in any GL (e.g. QML2) app. Now there will be a proper warning message at least. Change-Id: I15cf3a6c16ca373d4ada7abb6d3c8f7e30c1e03d Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Do not fail user time window creation when xcb is using xlibLaszlo Agocs2011-10-172-2/+8
| | | | | | | | | | | | | | | | | | | QXcbWindow::updateNetWmUserTime() creates a new window using the actual window as its parent. This operation was failing when Xlib usage and GLX (or EGL) was enabled because in these cases the real window was created with a different visual using XCreateWindow. For the user time window however we were passing the xcb_screen's root_visual always, and this cannot work when Xlib+GLX/EGL is in use, resulting in a BAD_MATCH (followed by some annoying flicker on the screen on Ubuntu at least, or a full log off (X crash?) on Fedora). The patch saves the visual id used to create the actual window and passes that when creating the user time window. This way the creation of the user time window succeeds with Xlib+GLX too. Change-Id: If3925d9ac1670d385dcc7c2b475c196908569f06 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Accessibility plugin for mac and xcb.Frederik Gladhorn2011-10-142-0/+13
| | | | | | | | | | Instead of creating new instances of the class whenever accessibility() is called, create one on startup. Change-Id: Idd5b06ee935d7acf4934b98882d254a1ef0ca04e Reviewed-on: http://codereview.qt-project.org/6435 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com> Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Fix OpenGL on Harmattan showing only the first frame.Jocelyn Turcotte2011-10-141-0/+14
| | | | | | | | | | | | swapBuffers would wait until DRI2_InvalidateBuffers was received from the X server, but would never receive it since we are not running the xlib event loop. This patch calls the XESetWireToEvent xlib callback of an unhandled event from the xcb event loop directly, if one is available for its response type. Change-Id: I3b4ef3f6e3efbae25f49f161e229e9b15e951778 Reviewed-on: http://codereview.qt-project.org/6557 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Minor build fix for newer XCB versionsJani Uusi-Rantala2011-10-101-0/+1
| | | | | | | | | | - Defines XCB_WM_STATE_WITHDRAWN as XCB_ICCCM_WM_STATE_WITHDRAWN if necessary Change-Id: I4212a0e1d7f14ac6695d23d6586dd97f898d3f2b Signed-off-by: Jani Uusi-Rantala <jani.uusi-rantala@nokia.com> Reviewed-on: http://codereview.qt-project.org/6267 Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
* Make sure window state is synced back to Qt from the XCB plugin.Samuel Rødal2011-10-073-3/+49
| | | | | | | | | | We should properly react to the property notify events. Task-number: QTBUG-21856 Change-Id: I0d2aa90b7d8da3b96acf4d88684b0200de7d7413 Reviewed-on: http://codereview.qt-project.org/6266 Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fixed potential issue in XCB plugin.Samuel Rødal2011-10-072-9/+10
| | | | | | | | | | Use the actual atom instead of the enum value of the atom when signaling that the event loop should exit. Change-Id: Ib98c6a46cadcecc727b28411b4c0c12c434ea828 Reviewed-on: http://codereview.qt-project.org/6265 Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix QMouse/Wheel/TouchEvent::modifiers with the XCB back-endSimon Hausmann2011-10-072-8/+11
| | | | | | | | | | | | The modifiers are provided by X and need to be propagated through the QWindowSystemInterface. Change-Id: I127d0b6e9918b558ca15d9302c4cc0cbd94eb757 Reviewed-on: http://codereview.qt-project.org/6244 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com> Sanity-Review: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>