summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/xcb/gl_integrations
Commit message (Collapse)AuthorAgeFilesLines
* Do not build glx integration with -no-openglLaszlo Agocs2015-03-181-1/+1
| | | | | | Task-number: QTBUG-44998 Change-Id: I57c18cd3621a59297d3f91026903628ea6187a5f Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* Have XCB/Windows platform integration classes keep their own instance pointerSandro Mani2015-02-251-1/+1
| | | | | | | | | | | | Through the chain of code called by QPlatformIntegrationFactory::create, there are cases where QGuiApplicationPrivate::platform_integration is accessed (typically through QGuiApplicationPrivate::platformIntegration()) before the call to QPlatformIntegrationFactory::create has returned. Change-Id: I7805b72be5b56aed5cb8ce30cb908743c9b1f91b Task-number: QTBUG-44388 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Merge dev into 5.5Oswald Buddenhagen2015-02-2323-23/+23
|\ | | | | | | Change-Id: Id6dbbbfc542c214fe695c6795c6aaf23aedc1cd1
| * Fixed license headersJani Heikkinen2015-02-1723-23/+23
| | | | | | | | | | Change-Id: Ibebe1318d1c2de97601aa07269705c87737083ee Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Merge remote-tracking branch 'origin/dev' into 5.5Frederik Gladhorn2015-02-174-12/+16
|\| | | | | | | | | | | Needed due to license header patch. Change-Id: Id7e30490132a7c487687a0a376419e9f9b97ea41
| * xcb: Fix build with -no-xcb-xlib -qt-xcbAndrew Knight2015-02-174-12/+16
| | | | | | | | | | | | | | | | The EGL integration should not call Xlib functions in this case. Change-Id: I46656b12d603ca1b4b0b41f34c3c0e8410c91db8 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* | Fix compilation with ICC: failure to parse placement of Q_DECL_OVERRIDEThiago Macieira2015-02-171-1/+1
|/ | | | | | | | | | | | | | | | | This is the right way: void (*getProcAddress(const QByteArray &procName)) () Q_DECL_OVERRIDE; However, ICC and GCC do not get it. They expect it in the form: void (*getProcAddress(const QByteArray &procName) Q_DECL_OVERRIDE) (); ICC complains with an error, so this needs a workaround. GCC ignores the incorrectly-placed "override", so it just looks to GCC like no "override" was added. See also: https://groups.google.com/a/isocpp.org/forum/#!topic/std-discussion/IjVB8CWiS5A Change-Id: I1a800c709d3543699131ffff13c2ffc9cee46245 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Update copyright headersJani Heikkinen2015-02-1125-529/+345
| | | | | | | | | | | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Outdated header.LGPL removed (use header.LGPL21 instead) Old header.LGPL3 renamed to header.LGPL3-COMM to match actual licensing combination. New header.LGPL-COMM taken in the use file which were using old header.LGPL3 (src/plugins/platforms/android/extract.cpp) Added new header.LGPL3 containing Commercial + LGPLv3 + GPLv2 license combination Change-Id: I6f49b819a8a20cc4f88b794a8f6726d975e8ffbe Reviewed-by: Matti Paaso <matti.paaso@theqtcompany.com>
* xcb: do not leak window system integrationLaszlo Agocs2015-02-051-1/+2
| | | | | | | | | | | | Destroy the GLX or EGL backend. This also requires fixing an uninitalized member in the native interfaace handler. Besides fixing the leak this will also do eglTerminate on exit, which is very beneficial for proper resource cleanup and avoids "Display is destroyed with resources" warnings on Mesa with debugging enabled. Change-Id: Ibd62d6964e86ac1319abed1f06b478327c348a0e Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* QXcbWindow: use an accessor to get the screen instead of storing itSandro Mani2015-02-041-1/+4
| | | | | | | | | | | | | | | Applications which construct a window with one screen configuration and show the window later on after a screen configuration change crash because the QXcbWindow::m_screen still pointed to the screen present at the time of window construction. In QXcbWindow::handleConfigureNotifyEvent the m_screen should get updated with the new screen, but I didn't see that method called in the scenario outlined. Looking at the other platform backends, I however see that they take the screen directly from the QPlatformWindow instead of storing the instance, hence this patch which makes QXcbWindow do the same. Change-Id: I13759a5939315c3aac36ec6e2c25bd0a6d7b1c35 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Support threaded OpenGL on linux again.Gunnar Sletta2015-01-102-0/+9
| | | | | | | Broken since 8758f532ae6209bcf9447e27edc4fd412c0f173d. Change-Id: Ifadf37252cc7c1ca68b0a82320b12833f97bf302 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* Support threaded OpenGL on XCB/EGL.Gunnar Sletta2015-01-091-0/+2
| | | | | | | Broken since 8758f532ae6209bcf9447e27edc4fd412c0f173d. Change-Id: I04cb9a36088ab6753c9519a911d065617f88fe08 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Fix crash when running QtWayland compositor on xcb-egl.Erik Larsson2014-12-291-2/+3
| | | | | | | | | | | When running the compositor on xcb the compositor backend will call nativeResourceForWindow with EglDisplay as resource. When this is done the window->handle() will be null and result in a crash. By returning just the eglDisplay() when the window->handle() is null solves the problem and also makes the compositor work. Change-Id: I72f4341402facc8c44a41151c4f76d6447bd8070 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* Fix build when using -egl and -no-xcb-xlibGiulio Camuffo2014-12-231-0/+4
| | | | | Change-Id: I533f1d989b5f4b427ce572620e27c3870a64c2ae Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* Add some missing nativeResourceForIntegration imlementationsJørgen Lind2014-12-222-0/+21
| | | | | | | | The EglDisplay and the Display is normally a PlatformIntegration wide resource Change-Id: Ie5382a2a0b34fbe1c506b5134bf581afbd7f5d99 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Make GLX and EGL dynamic dependencies for xcbJørgen Lind2014-12-2032-0/+2911
[ChangeLog][QPA][Xcb] GLX and EGL code paths are now dynamically resolved, making it possible for one build of a plugin to use both code paths. Default is to use the GLX code path if available. This can be overwritten by specifying QT_XCB_GL_INTEGRATION=xcb_egl as an evnironment variable. Enable qt.xcb.glintegration.debug to get debug log output of what integration is used Change-Id: Ia9fa95fcca3d901b91dadb8c98a695fea0ae3b1e Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>