summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/xcb
Commit message (Collapse)AuthorAgeFilesLines
* Improve keymap error handlingGatis Paeglis2014-03-272-17/+61
| | | | | | | | | | | - add QT_XKB_CONFIG_ROOT envvar, this can be used to provide an alternative XKB configuration search paths (default XKB configuration root is detected when building Qt library). At runtime these paths might change - when dropping Qt application binary into a system with different setup. Change-Id: Ia21a3e7f0339c95793c1f543d1a95b1591e5d8df Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Add better support for keymap update handlingGatis Paeglis2014-03-275-190/+136
| | | | | | | | | | | | | | | | | | | | | | | | | | | Use the new X11 support API xkb_x11_* released in libxkbcommon version 0.4.0. From the commit message where this API was introduced: "These are function to create an xkb_keymap directly from XKB requests to the X server. This opens up the possibility for X clients to use xcb + xcb-xkb + xkbcommon as a proper replacement for Xlib + xkbfile for keyboard support. Why not just use the RMLVO that the server puts in the _XKB_RULES_NAMES property? This does not account for custom keymaps, on-the-fly keymap modifications, remote clients, etc., so is not a proper solution in practice. Also, some servers don't even set it. Now, the client just needs to recreate the keymap in response to a change in the server's keymap (as Xlib clients do with XRefreshKeyboardMapping() and friends)." This patch moves XKEYBOARD presence decision from compile time to runtime for a proper remote X client support. Task-number: QTBUG-31527 Task-number: QTBUG-32760 Change-Id: I4d402668cda2126ef180b27022154f96b1874b1d Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix regression in minimized state handlingLaszlo Agocs2014-03-251-5/+5
| | | | | | | | | | | | WM_STATE and _NET_WM_STATE are not the same. c6e271da6d1d972ad73a97871baafe57578a69a9 introduces a severe regression in this respect, making applications on xcb not to follow window state changes properly. Task-number: QTBUG-37695 Change-Id: Ia058bc11d5aa988eab513939c9f755c2f77512ee Reviewed-by: Martin Klapetek <mklapetek@kde.org> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Update bundled libxkbcommon version to 0.4.0Gatis Paeglis2014-03-192-24/+1
| | | | | | | | | | | | | This release comes with important bug fixes. Also we can now remove the workaround code which was needed for libxkbcommon 0.2.0. Task-number: QTBUG-31712 Task-number: QTBUG-33732 Task-number: QTBUG-34056 Change-Id: I57caf7f803b9a01a15541a5ad82e464de3b8abbb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* X11: defaultDragDistance depends on screen resolutionShawn Rutledge2014-03-181-1/+14
| | | | | | | | | | | The usual default is 10 pixels, but on a screen with resolution exceeding 100 DPI, it will be a proportionally larger number. The reason is that such precise finger and mouse movements are more difficult on higher-resolution screens. Change-Id: I6e66299e12e6cac5c4e032251b32a34940970372 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* QXcbWindow - inline the atom functionsMartin Klapetek2014-03-151-8/+5
| | | | | Change-Id: I3a8f9efb7de21bf2301721edca49c9411c62eed0 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Update QScreen::availableGeometry() on _NET_WORKAREA atom changesMartin Klapetek2014-03-152-1/+5
| | | | | | | | | | | | | | When the window manager sets new workarea using the _NET_WORKAREA xcb atom, QScreen::availableGeometry() does not react to that and returns an invalid available geometry. This patch reacts to that change and updates the QScreen property properly on xcb platform. Change-Id: I8f0b4a27bab0ce450fb7393f4d9a56f3ce9a4ea1 Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* [XCB] Fix crash in QML drag-and-dropGatis Paeglis2014-03-142-2/+3
| | | | | | | | | | | Use QPointer to make sure that we are not trying to destroy already deleted object. Task-number: QTBUG-35702 Change-Id: Ib746996787488e636f25e6ea5be0571607ee2ded Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* [XCB] Fix drag-and-drop segfaultGatis Paeglis2014-03-141-1/+0
| | | | | | | | | | | QXcbDrag inherits QBasicDrag which takes care of calling updateAction() when needed, we don't need to call it explicitly. Task-number: QTBUG-33057 Change-Id: I754408f74f56de36ace8ffa40a61bd7c64619899 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* XCB plugin: query screen resources without _currentRolf Eike Beer2014-03-141-6/+6
| | | | | | | | | | | | | | | | | | | xcb_randr_get_screen_resources() and xcb_randr_get_screen_resources_current() do basically the same, but for one case: if nothing has queried these information ever before. So if an application is the very first client ever to connect to an X server it may just return nothing. A call to xcb_randr_get_screen_info_reply() will then cause the X server to allocate the needed information and send an update notification, resulting in a second QXcbScreen being created, but the other one is still around and probably used. The behavior I observed with a simple test application was that the application was not visible on the screen when it was the first client ever on the X server. Killing the application and starting it again made it work just fine. Change-Id: Id64f267e8ebcfa5b39d21d98307170a09e5169df Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Fix deprecated setOption() usage in GLX integrationLaszlo Agocs2014-03-141-2/+2
| | | | | | | | The correct function is setOptions(). Change-Id: Ife9ff75c409c843b4871804fcfd06b9d2a7733d3 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Export rootWindow to the QXcbNativeInterfaceMartin Gräßlin2014-03-082-2/+17
| | | | | | | | | | | | | | | | This change exports the root window to the native interface as there is QX11Info::appRootWindow which so far goes over the QDesktopWidget to get the window id of the root window. Which is a rather hackish way considering that the root window is known to the QXcbConnection. But even more it's a very fragile way and can result in crashes on startup of applications if the application accesses the appRootWindow too early. Change-Id: Ibb09a7fa714cb355f579298fc6df33bf80f73f58 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
* Remove usage of QT_NO_SHAPEGatis Paeglis2014-03-073-12/+2
| | | | | | | | | | | | | First of all QT_NO_SHAPE was never set in configure script, which means that !contains(DEFINES, QT_NO_SHAPE):LIBS += -lxcb-shape always was true and we were linking to -lxcb-shape no matter what. Secondly, we are providing shape.c in qtbase/src/3rdparty/xcb/libxcb, so users always have an -qt-xcb option available to get this extension. Change-Id: I7d14a0ac5ca6e36fb9c053225916cae41028b532 Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Update bundled libxcb-xkb version to 1.10Gatis Paeglis2014-03-061-1/+2
| | | | | | | | To utilize the new xkb_x11_* API from libxkbcommon 0.4.0, we need to update the bundled libxcb-xkb version to 1.10, which is the minimal required version. Change-Id: I0b72a2684bd11cbe5ae65d6dab7292be3a76464c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Use None instead of GLX_NONEAlbert Astals Cid2014-03-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | GLX_NONE is not 0, so it doesn't work as end-of-list marker The documentation explicitly mentions to use None or NULL Fixes valgrind warning ==22686== Conditional jump or move depends on uninitialised value(s) ==22686== at 0x78949AF: glXCreatePbuffer (glx_pbuffer.c:709) ==22686== by 0xDD7F0E1: QGLXPbuffer::QGLXPbuffer(QOffscreenSurface*) (qglxintegration.cpp:515) ==22686== by 0xDD624B0: QXcbIntegration::createPlatformOffscreenSurface(QOffscreenSurface*) const (qxcbintegration.cpp:259) ==22686== by 0x4F1D6A2: QOffscreenSurface::create() (in /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5.2.1) ==22686== by 0xDD80248: QGLXContext::queryDummyContext() (qglxintegration.cpp:454) ==22686== by 0xDD803F0: QGLXContext::supportsThreading() (qglxintegration.cpp:488) ==22686== by 0x5BD9927: QSGRenderLoop::instance() (in /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5.2.1) ==22686== by 0x5BF969E: QQuickWindowPrivate::init(QQuickWindow*) (in /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5.2.1) ==22686== by 0x5C97BFC: QQuickView::QQuickView(QWindow*) (in /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5.2.1) ==22686== by 0x40636F: startShell(int, char const**, void*) (main.cpp:91) ==22686== by 0x407125: main (main.cpp:193) Change-Id: Ib4f5ae50f7e31d3fbeb5acf67753e1d8b9e434b0 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* xcb: Rename main.cpp to xcbmain.cpphjk2014-03-042-2/+2
| | | | | | | | | Files with same base name cause extra trouble for debuggers. It can be avoided here. Change-Id: I1b7a6f28ac41bacbfd2603feb8b786c31d3769e3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* XCB: update the platformwindows version of Qt::WindowStateJorgen Lind2014-02-271-0/+1
| | | | | | | | | when the event comes from the windowing system Task-number: QTBUG-31117 Change-Id: Id136ad8c39c9284cbd6ad126ee71ac655f8f91ef Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Fix potential null pointer access in qglxKai Koehne2014-02-241-10/+12
| | | | | | | | | | | This reportedly does fix crashes when running a Qt Quick 2 application over remote X. Task-number: QTCREATORBUG-11207 Change-Id: I6fa82420f9d12e56e52fa8efd263bf18d868d7d8 Reviewed-by: Ville Nummela <ville.nummela@parker.com> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Avoid using GLX Pbuffers on CatalystLaszlo Agocs2014-02-211-1/+12
| | | | | | | | | | | Trigger QOffscreenSurface's fallback mode (hidden QWindow and a regular window surface) instead. queryDummyContext() already works like this but the same must be done for any QOffscreenSurface. Task-number: QTBUG-36900 Change-Id: I64176ac6704e9d6ed768fa3d456c40c8818be6dc Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Enabling QQuickWidget and QOpenGLWidgetPaul Olav Tvete2014-02-125-5/+38
| | | | | | | | | Enable child widgets (without a native window) that render to an FBO and are composed with the raster backingstore by the platform plugin. A preliminary version of QOpenGLWidget is included as private API. Change-Id: I8f984a4d7db285069ce3d6564707942c823d890d Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Frederik Gladhorn2014-02-111-3/+3
|\ | | | | | | refs/staging/dev
| * Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-02-071-3/+3
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qguiapplication.cpp src/plugins/platforms/android/androidjnimain.cpp src/plugins/platforms/android/qandroidplatformintegration.cpp src/plugins/platforms/android/qandroidplatformintegration.h src/plugins/platforms/android/qandroidplatformopenglcontext.cpp src/plugins/platforms/cocoa/qcocoawindow.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/sql/doc/src/sql-driver.qdoc src/widgets/widgets/qtoolbararealayout.cpp Change-Id: Ifd7e58760c3cb6bd8a7d1dd32ef83b7ec190d41e
| | * Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2014-01-271-1/+3
| | |\ | | | | | | | | | | | | Change-Id: I4680723bef393a15d5aa63b9dd7d5fbb599bd9fa
| | | * X11: build again on Linux distros that don't have XInput 2.2Shawn Rutledge2014-01-271-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixed1616ToReal is needed by the XI2 tablet event debugging added in ecf11d62fc6f57cccf6f3326e768b1c7cabbd0b3, so it needs to be available if tablet events are supported and XI 2.2 events are not (older Linux distros). Change-Id: Id763d585790a9f037abc408dfba4ab5eec6dd421 Task-number: QTBUG-36437 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Wolfgang Bremer <wbremer@blackberry.com>
| | * | X11: Qt::ActiveWindowFocusReason in QFocusEvent when appropriateShawn Rutledge2014-01-211-3/+3
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When one window loses focus because another window got it, the reason should not be Qt::OtherFocusReason. If it is ActiveWindowFocusReason or PopupFocusReason, any QtQuick text elements that were in the window which lost focus will not deselect any selected text. Task-number: QTBUG-36292 Change-Id: I4630f74e6aacd928284cedab6ed711c95b24bff7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* | | Do not set input focus if WM supports _NET_ACTIVE_WINDOWMartin Gräßlin2014-02-091-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case the window manager supports _NET_ACTIVE_WINDOW a client message is sent to the root window and the window manager is expected to either activate the window or mark it with demands attention. In addition the code unconditionally also called xcb_set_input_focus which breaks the intention of sending the client message. Thus it is now only done if the WM doesn't support the protocol. This was also the logic in Qt 4.x in QWidget::activateWindow (qwidget_x11.cpp). In addition set_input_focus is only called if the window is a toplevel. Change-Id: Iec4c02f0ea62db30a4b347d474fdfd2f05b8895b Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* | | Make xcb compile with X-less EGL implementationsLaszlo Agocs2014-02-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On platforms like the Raspberry Pi the EGL implementation is not compatible with X. This means that while EGL and Open GL ES can be enabled, and will work fine with platform plugins like eglfs, EGL (and thus GL) should be automatically disabled in xcb, otherwise a compilation error will occur since xcb assumes the native handle types are the corresponding Xlib types. Task-number: QTBUG-36551 Change-Id: I2cc4c558abb4b25d422a2c01da9b75b865ace402 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* | | Support --option in addition to -option for all builtin Qt commandline options.David Faure2014-02-081-12/+9
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | In addition to being more common and consistent with QCommandLineParser, this will make it possible to add the documentation for these options in the QCommandLineParser-generated help output. [ChangeLog][General] Builtin command-line options such as -reverse, -session, -style etc. now all support double dash, e.g. --reverse, --session, --style... Change-Id: Ia2e22c854ccc6a9d7b863b1234317005bc822191 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Emit ScreenChanged events on X11Allan Sandfeld Jensen2014-02-061-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | We do not currently emit screenchanged events when a window is moved to another screen on X11. This patch emits the event when a window no longer intersects with its current screen, and switches to the first intersecting screen. Change-Id: Ie40d6eb67b85bd961eeb348bc43e4f308ee22dba Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Uli Schlachter <psychon@znc.in>
* | Clean up QXCBSessionManagerSamuel Gaist2014-02-032-25/+2
| | | | | | | | | | | | | | | | | | Removed useless overrides and inline simple functions. Change-Id: I69df0ec8446fe2c8bb904c7d4d9cc2e1d269533b Reviewed-by: Teo Mrnjavac <teo@kde.org> Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | Silence failed xcbxsettings initializationJorgen Lind2014-01-233-3/+11
| | | | | | | | | | | | | | | | also add a boolean flag indicating if xsettings is initialized and can be used Change-Id: I9dae83b8fef224171744d2b940767cbf54ce4f55 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* | xcb: Do not leak when compressing eventsLaszlo Agocs2014-01-201-2/+1
| | | | | | | | | | | | | | | | | | The event must be freed in all cases, also when a motion or configure notify is skipped. Change-Id: Ie55e62d0c3ab25bd9b20cc85098ea337d0b1ac5d Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | Make xcb QPA plugin link on FreeBSDGabriel de Dietrich2014-01-201-1/+1
| | | | | | | | | | | | | | | | dlopen, etc. are defined in libc on FreeBSD. Change-Id: Iad47113ec77029f8e300e4f08f454d70b3070b5a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* | expand tabs and related whitespace fixes in *.{cpp,h,qdoc}Oswald Buddenhagen2014-01-132-50/+50
| | | | | | | | | | | | | | | | the diff -w for this commit is empty. Started-by: Thiago Macieira <thiago.macieira@intel.com> Change-Id: I77bb84e71c63ce75e0709e5b94bee18e3ce6ab9e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-101-1/+5
|\| | | | | | | Change-Id: I99af0bef7f1c931533a324ebcfb27c40ee871a5e
| * Fix bug on X11 with WA_TranslucentBackground and native child windows.Gatis Paeglis2014-01-101-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The native child windows need to inherit the parent's visual in order to have a translucent background as well. Surface with type QSurface::OpenGLSurface should not be forced to use the parent window's visual - the parent visual for instance, might not even be GL capable. Changing WA_TranslucentBackground during runtime is not supported, for two reasons: 1) Other platform plugins seem not to support it 2) It would require recreating X windows. Task-number: QTBUG-29625 Change-Id: Ic1474dd2de99069027481c7db6bf865f9b8d616d Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* | Use XInput2 scrolling events to enable smoother scrollingAllan Sandfeld Jensen2014-01-094-28/+164
| | | | | | | | | | | | | | | | | | | | | | With this patch all wheel events will be generated by XInput2 where available. This enables higher precision and smoother scrolling especially from input devices such as touchpads on laptops. [ChangeLog][Platform Specific Changes][X11 / XCB]Support XInput2 smooth scrolling events Change-Id: I3b069ed92ad5c53e08af64baaece32de82e9b5c4 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-062-0/+18
|\| | | | | | | Change-Id: I0b021b369725b73f09faa14b9da9e2431dc24fad
| * XCB: Fix pixmap leakUli Schlachter2014-01-051-0/+2
| | | | | | | | | | | | | | | | | | | | | | In qt_xcb_XPixmapFromBitmap(), a new pixmap is generated for the caller. This pixmap has to be freed after use. However, createNonStandardCursor() didn't do this and instead leaked the pixmap. Change-Id: I6fee180ec6508db9e82a5bb028957e7d9f7a4632 Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
| * Avoid duplicate emulated mouse events with XInput2Allan Sandfeld Jensen2014-01-031-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | When using a touch screen on a Linux machine, we receive both touch-events and emulated mouse events from XInput, on top of that we synthesize mouse- events ourselves for the touch events. This patch grabs the touch device for touch events whenever it processes a touch-begin thereby avoiding XInput from synthesizing mouse events. Task-number: QTBUG-35157 Change-Id: I5849d5841be236d6719cd080af2e9e39eb9cdd84 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* | xcb: Remove useless flushesUli Schlachter2014-01-062-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling xcb_flush() right before QXcbConnection::sync() is pointless. The flush sends all requests that were already queued to the server and the call to sync() then just sends another request, flushes it and waits for its reply. Having just sync() implicitly flush for us means less overhead and has the same effect. Another useless flush is in QXcbShmImage::put(). The only caller is QXcbBackingStore::flush() and this calls put() in a loop. If we just call xcb_flush() from flush(), then xcb can send more requests in a single write() call again. Finally, calling Q_XCB_NOOP() twice in a row without doing any interaction with xcb in between doesn't help much, so remove one of the two calls from QXcbShmImage::put() Change-Id: Ia3d6945b8d961e2844fc3e31fdf8189c47b534d1 Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devSimon Hausmann2014-01-034-50/+65
|\| | | | | | | Change-Id: Id13badc270db98806048753fd7fb658aa17f1ede
| * xcb platform: Fix build when both EGL and xcb-Xlib are usedAndrew Knight2013-12-311-2/+6
| | | | | | | | | | | | | | | | Fix a multiple define when Qt is configured to use both EGL and xcb-Xlib. Change-Id: I6fdb282f575842711b3b5d377bbdf3bc9909bf0c Reviewed-by: Christoph Cullmann <cullmann@kde.org> Reviewed-by: David Faure <david.faure@kdab.com>
| * fix compile of qt without egl availableChristoph Cullmann2013-12-301-1/+1
| | | | | | | | | | | | | | | | move the dpy to the place where it is used inside the egl ifdef guard fixes compilation on old distros not having egl Change-Id: I7eebe5305f3a584c0c5da2ea7b9099fdd994249d Reviewed-by: David Faure <david.faure@kdab.com>
| * xcb: added env variables to show input devices and eventsShawn Rutledge2013-12-303-45/+56
| | | | | | | | | | | | | | | | | | | | export QT_XCB_DEBUG_XINPUT_DEVICES=anything to show detected input devices at startup export QT_XCB_DEBUG_XINPUT=anything to log mouse, touch and tablet events Change-Id: Id14844b68ad376740f82a36aab2c59c84d2017ab Task-number: QTBUG-35583 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
| * XCB: Don't recalculate the DPI if we have a forced DPI settingThiago Macieira2013-12-301-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | logicalDpi() already has the logic to check m_forcedDpi, so let's reuse it. I hope it's not a problem that we send a signal that it changed when nothing changed. [ChangeLog][Platform Specific Changes][X11 / XCB]Fixed a bug that caused Qt applications to think the screen DPI had changed when it had not, after connecting or disconnecting monitors. Task-number: QTBUG-32683 Change-Id: I45dd27de5109e65e7599915f11cfdb633a65a67c Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Simon Hausmann2013-12-231-1/+1
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-12-161-1/+1
| |\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qplatformtheme.h tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp tests/auto/widgets/widgets/qspinbox/tst_qspinbox.cpp Change-Id: Iecd3343d6a050b8764f78d809c4a1532aeba69e5
| | * Revert "Move the glxfbconfig configtest to qpa and rename it to glx"Thiago Macieira2013-12-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit a2d3b7c99165cb5c4be6f0dd83a967e1119cf732. That commit broke -opengl es2 builds on Linux desktops (when GLX is available). /usr/include/GL/gl.h:162:17: error: conflicting declaration ‘typedef double GLdouble’ qopengl.h:97:17: error: ‘GLdouble’ has a previous declaration as ‘typedef GLfloat GLdouble’ Change-Id: Id5f48c05803be1a8c03eeffca139b80e9a85a0eb Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Remove .values() call in foreachAlbert Astals Cid2013-12-161-1/+1
|/ / | | | | | | | | | | | | | | foreach already knows how to iterate over the values without the need to create an intermediate qlist Change-Id: Icf6bacc3472e09fde6fe3735086cea289ca0fa96 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>