summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/xcb
Commit message (Collapse)AuthorAgeFilesLines
...
* Made xcb plugin work when the GLX extension is not present.Samuel Rødal2012-10-196-7/+53
| | | | | Change-Id: I9285d7524586ff404206c088019ece33335137d9 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Modularize drag and drop documentationGatis Paeglis2012-10-191-19/+6
| | | | | | | | - Move dnd docs and examples out of QtDoc module to gui library in QtBase - Remove info related to Motif dnd since Qt5 doesn't implement it Change-Id: Id7eb4eb422f4294a36dd92709ce3007903371f03 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* QPlatformWindow: change API for QPlatformWindow::setWindowStateRichard Moe Gustavsen2012-10-172-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | The current implementation requests the platform window to set the window state if it can, and return the actual window state back. The problem with this approach is that the platform window is created as late as possible, so a call to QWindow::setWindowState would in many (most?) cases never be forwarded to the platform window (instead, the platform window is responsible to check the current window state upon creation). As such, the window state might be left unsynched with the platform window. This patch suggests removing the return value from QPlatformWindow::setWindowState. This will at least be consistent, so that setting/getting state would produce the same result independent of delayed window creation. If needed, we can later add new API to QPlatformIntegration or QPlatformWindow for querying supported/actual window state. Change-Id: Ie43f56169656854a765ce88b47a808f8f3d51bb4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Document needed packages for XCB on Fedora.Niels Weber2012-10-161-0/+4
| | | | | Change-Id: I415416e82d342b232607fe7087350a9dad615f7a Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* QPlatformWindow: change API for QPlatformWindow::setWindowFlagsRichard Moe Gustavsen2012-10-152-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | The current implementation requests the platform window to set as many of the flags it can, and return the same flags with the unsupported flags removed. The problem with this approach is that the platform window is created as late as possible, so a call to QWindow::setWindowFlags would in many (most?) cases never be forwarded to the platform window (instead, the platform window is responsible to check the current window flags upon creation). As such, the filtering would never be done. Looking at the current set of plugins, most of them also seems to ignore this protocol, returning the flags unfiltered. This patch suggests removing the return value from QPlatformWindow::setWindowFlags. This will at least be consistent, so that setting/getting flags would produce the same result independent of delayed window creation. If needed, we can later add new API to QPlatformIntegration or QPlatformWindow for querying supported window flags. Change-Id: I9c759b5f9fab5ebed764a982f77fe19881118875 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
* Simplify transaction expiry mechanismGatis Paeglis2012-10-132-29/+41
| | | | | | | | | | | | | | | | | | | | | This patch makes transaction mechanism less scattered around and conforms to the xdnd specification: Don't block and keep a history of previous data. This can be very difficult to implement, but it is clearly the ideal behavior from the user's perspective because it allows him to drop something and then continue working with the assurance that the target will get the data regardless of how slow the network connections are. When the source receives XdndFinished, it can remove the item from its history, thereby keeping it from getting too large. The source must also be prepared to throw out extremely old data in case a target malfunctions. I assume that 10min for drag-and-drop operation can be considered 'extremely' old data. Change-Id: I73dcd21aee3ad188d2260e49d80824da6ba040ab Task-numer: QTBUG-14493 Reviewed-by: David Faure (fixes for KDE) <faure@kde.org> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Make sure timestamp is initialized before using it for seting selection owner.Gatis Paeglis2012-10-133-1/+58
| | | | | | | | | | | | | | | | | | | | | Convention from icccm: Clients attempting to acquire a selection must set the time value of the xcb_set_selection_owner request to the timestamp of the event triggering the acquisition attempt, not to XCB_CURRENT_TIME. In some cases it happened that timestamp was set to XCB_CURRENT_TIME. A zero-length append to a property is a way to obtain a timestamp for this purpose; the timestamp is in the corresponding XCB_PROPERTY_NOTIFY event. We used to have this mechanism in 4.8, it was achieved by XWindowEvent. AFAIK there isn't an equivalent for XWindowEvent in XCB. Therefore i had to introduce a new mechanism in QXcbConnection - getTimestamp. This function blocks until it receives the requested event. Change-Id: Ide46a4fdd44cf026fdd17a79d3c4b17741d1b7d4 Task-number: QTBUG-26783 Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Added missing keysym to handleExtendedKeyEvent in xcb plugin.Samuel Rødal2012-10-101-2/+2
| | | | | | | | | Now it's propagated to QKeyEvent::nativeVirtualKey() as it should. Task-number: QTBUG-27353 Change-Id: I40921b99662951decc83d2278e0cd337266dd530 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Compile fix for when XCB_USE_GLX is not defined.Samuel Rødal2012-10-102-3/+7
| | | | | | | Fixes compile failure introduced by 394249616cbb4c0861a032d33f846f. Change-Id: I5794d22ee87eb18c08ea1de227b943f2e675356c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* OpenGL: Don't request a context version higher than is supportedSean Harmer2012-10-035-57/+264
| | | | | | | | | | | | | | | The function wglCreateContextAttribsARB will fail if we request a context version higher than is supported. We therefore upper-bound the requested version by the version of the static context. This results in context creation succeeding and having the closest possible match to the requested format. The xcb qpa plugin is modified to operate similarly to the windows plugin in that it now creates a "static" context which is used to limit the versions of contexts requested by the user. Change-Id: I277ad7cc82edfdf7b9d8502ad921c8175feb1a4a Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Fix a crash with xcb on 64bit systems when hitting any key.Jocelyn Turcotte2012-10-024-38/+138
| | | | | | | | | | | | | | | | xcb uses 32bits for xcb_keysym_t, but Xlib uses 64bit longs on 64bits systems for KeySym and all other XIDs on the client side. Passing an xcb_keysym_t* to XLookupString, expecting a KeySym*, would overwrite the next 32bits in memory and possibly cause a crash. This patch makes sure that a KeySym* is passed to XLookupString, and use the signature declared in Xutil.h to make sure the types are right. Encapsulate it in qxlibconvenience.cpp since including Xutil.h inside qxcbkeyboard.cpp causes macro expansion problems. Change-Id: I68451a24cb44a43dfa4382b5dce1ea7845f14e26 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Laszlo Papp <lpapp@kde.org>
* Stop delivering messages when drop has occurred.Gatis Paeglis2012-10-022-1/+7
| | | | | | | Task-number: QTBUG-27406 Change-Id: If14c108060ad6de70991658f0e0249eb544b87a0 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Retrieve drop data with a proper timestampGatis Paeglis2012-10-024-4/+8
| | | | | | | | | | | Occasionally drag-and-drop was returning empty mimedata due to using wrong value for timestamp. Accoring to the xdnd specification we must use timestamp from XdndPosition or XdndDroptime for retrieving the data. Task-number: QTBUG-27367 Change-Id: Iadb6b6989cfc4e8ab241e2fd0ded59355108f22f Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Ensure that QDrag is set correctly at all times.Gatis Paeglis2012-10-021-5/+7
| | | | | | | | | | | | | This patch fixes broken code in handleSelectionRequest(). There are 2 cases when this function is called: 1) When XdndDrop has arrived (on mouse release) 2) When drop has not occurred yet (while mouse are still pressed down) Second case was not working due to this bug. Task-number: QTBUG-27405 Change-Id: I913cfd332128a28861e2fcc027b406eb821d2597 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Fixed xdnd protocol-version detection codeGatis Paeglis2012-10-021-3/+3
| | | | | | | | | | | Bug introduced when porting from Xlib to xcb. Xcb returns actual number of bytes read while Xlib returns number of 8-bit, 16-bit, or 32-bit items stored in the returned data. Task-number: QTBUG-27403 Change-Id: Ia64da1953ec7be8d32cc591565cd1b41ce8d7dbb Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Don't let mimeData return 0.Gatis Paeglis2012-10-021-12/+25
| | | | | | | | | Fixes bug introduced in SHA e247e2810 (QTBUG-26709). Change-Id: I9aa80239675b2d564d08a019ca267a9aa814074e Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* QXcbWindow: Don't recreate window when reparenting.Yoann Lopes2012-10-011-3/+0
| | | | | | | | | | | | For consistency, this behavior has been kept across Qt versions... Just get rid of it. Also fixes native child widgets not being notified of the change of window handle (winId) when being reparented. Updated auto-test. Change-Id: I3616dc0f1c32a519d78a4846297d6d4a6e926fbf Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* xcb: consistently check xcb_get_extension_data for extension initsShawn Rutledge2012-09-271-4/+10
| | | | | | | | | This seems to fix the ability to run a Qt app across a forwarded X connection (e.g. ssh -X). Change-Id: I2b7a26985cf11107e69b303337a5fbb369e38c9e Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Uli Schlachter <psychon@znc.in>
* XCB: Correctly report the created OpenGL context version and profileSean Harmer2012-09-261-8/+69
| | | | | | | | | | | | | | | This commit fixes the xcb qpa plugin such that it now correctly reports the version and profile of the created OpenGL context in the QOpenGLSurfaceFormat. To do this we have to create a temporary X window so that we can make our new context current. We also handle the buggy nVidia drivers which incorrectly report 0 for the GL_CONTEXT_PROFILE_MASK query. The reduced format is also copied back from qglx_findVisualInfo. Change-Id: I6f34fe1c6130aebbb6b40c36df4acc216069d2b1 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* xcb: better error handling if no randr or screen resources query failsShawn Rutledge2012-09-261-47/+53
| | | | | | | | | | Marc Mutz already reported problems with ssh -X fowarding. Now all such errors are treated the same: if we can't get screen output attributes, just assume there is only one. Change-Id: I96802fc90072c623de3370ed2898893daf58198a Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* xcb: dynamic QScreens; primary first; corrected logical DPIShawn Rutledge2012-09-246-94/+151
| | | | | | | | | | | | | | | | A new QScreen is created when an output is activated (monitor or projector is added, for example), and destroyed when the output is turned off. Ensures that screens and siblings are always in the right order: primary comes first. Logical DPI is derived from virtual geom / virtual size, which will be different than output geom / physical size if X was started with --dpi override. This is a good thing: when X gets wrong EDID info for physical size and you need to override it to get reasonable font sizes, Qt will heed the logical DPI for font sizing. Change-Id: I5e3de34013c1b6b21067243de56f3f1eb72787fa Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-2235-840/+840
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* X11 (xcb) support for QScreen-per-output and runtime changesShawn Rutledge2012-09-184-64/+244
| | | | | | | | | | | | | QScreen has notifiers for its properties, but they were not being emitted when one changes the resolution or arrangement of individual outputs, e.g. via xrandr. Also there should be one QScreen per "output", e.g. laptop LCD + external monitor means 2 QScreens which will be siblings, rather than just 1 QScreen to represent the whole desktop. Change-Id: Ia61bbc5e6a3506f813ab11f87c03d14cf7f4ce85 Reviewed-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Prevent buffer overflow in QXcbWindow.Samuel Rødal2012-09-181-1/+1
| | | | | | | | Thanks to Janne Kulmala for noticing this and informing about the fix. Task-number: QTBUG-27123 Change-Id: Idd3cfd74fb7be277b6d805446aea5784b8fdf2f6 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Make maemo scope syntax in project files more genericLaszlo Papp2012-09-141-1/+1
| | | | | | | | | | | | | | | | | It is necessary to use the n9 device file for now in scratchbox or/and on the community open build service because the maemo platform mkspecs file assumes that a cross-toolchain is used all the time. If no platform file is used, then for instance certain plugins may not be built in general. There is currently an ongoing issue with the meego plugin for context management in the Harmattan components project. That is currently not built due to this issue, so no orientation works in those applications. The nice solution would be to make the maemo platform file work with cross and native toolchains as well, but that requires a decent amount of investigation and work. Thereby, the scope is extended this way for now. Change-Id: I172c7d152bdbb2db279526d9fd1ca5648d0cd0a9 Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
* Removing duplicate includesSergio Ahumada2012-09-091-1/+0
| | | | | | | Do not include a header more than once Change-Id: Ia2e5d66e72988ad833cf5177a3f8aa988bf510e9 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Use true and false in preference to TRUE and FALSESergio Ahumada2012-09-051-2/+2
| | | | | | | | The TRUE and FALSE macros are obsolete and should be replaced with true and false (all lower case) respectively. Change-Id: Iee352e8173500683e6319be0abbf5bacf29016e0 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* xcb: fix unused static warningMarc Mutz2012-08-231-0/+2
| | | | | | | | | The variable ptrXcursorLibraryLoadCursor is only used in code wrapped in XCB_USE_XLIB. Change-Id: If0b4997ac6e80a3709263d9793d1ca0dfd5907f3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Fixed missing window decorations on compiz.Samuel Rødal2012-08-231-3/+1
| | | | | | Task-number: QTBUG-26954 Change-Id: I6981338d4bbc9cf1440c9d67e9d034e0553dfeae Reviewed-by: Jason Barron <jason.barron@nokia.com>
* Fixed non-GL applications crashing when GLX/EGL initialization fails on xcb.Samuel Rødal2012-08-221-15/+20
| | | | | Change-Id: I5a08d6067272575aa56074aaebe308c3d49299bb Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Clean up QScreen::grabWindow()aavit2012-08-181-3/+7
| | | | | | | | | | | Handle 0 WId parameter as meaning "desktop window"/whole screen. Also, re-add the default values for the grab area, both for convenience and compatibility with QPixmap::grabWindow() in Qt4. Update the screenshot example so it doesn't comlain about usage of deprecated QPixmap::grabWindow(). Change-Id: I2ad229113ddb8ded0388f2ebc0e8c703c6657f1f Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* Add Linux Accessibility BridgeFrederik Gladhorn2012-08-141-1/+2
| | | | | | | | This is a plugin that bridges the QAccessible world to AT-SPI 2 on Linux. Change-Id: I7af22621ee6a3cefc723b137b7f227a611cf6641 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
* Need to have the XI2 import to detect XI_TouchBeginMaskShawn Rutledge2012-08-091-0/+1
| | | | | | | | | | Followup to I5c925ae3e191244c7ab9415e4ba2fe49b93dd2af : touch was not actually working by default. A major symptom was getting double-clicks instead of clicks on buttons and such, making it quite hard to interact with anything. There are some problems remaining. Change-Id: I09fa5965036bac242ccc1f4db71f6d912445ca01 Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
* Only use glXCreateContext if glXCreateContextAttribsARB did not succeed.Zeno Albisser2012-08-071-16/+13
| | | | | | | | | | | | If glXCreateContextAttribsARB does not succeed or is not available, we should fallback to using glXCreateContext. But we should not just create a context with glXCreateContext by default that is being thrown away if glXCreateContextAttribsARB succeeds. Otherwise glXMakeCurrent with context 0 might cause an unexpected context change when dealing with multiple contexts. Change-Id: I7627abbe2500b4006180653a1b3b074fe7aca1d3 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* XCB: Correction to OpenGL version check for profile supportSean Harmer2012-08-041-1/+1
| | | | | Change-Id: I2f2bf877b1e2e628806f22fe66180b05090f4b3e Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Revert "Move QWindowSystemInterface out of qpa."Paul Olav Tvete2012-08-037-7/+7
| | | | | | | | | | | | | | This reverts commit 784a877d3cd9a1a75aca9c83146389503a966071. Conflicts: src/plugins/platforms/cocoa/qcocoawindow.mm src/testlib/qtestkeyboard.h src/testlib/qtestmouse.h src/testlib/qtesttouch.h Change-Id: Iebfed179b3eb7f30e4c95edcae5a8ad6fd50330e Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix mimedata updating and signal emision issues in xcb clipboard.Gatis Paeglis2012-08-021-26/+38
| | | | | | | | | | | | | Clipboard should reacquire the clipboard whenever the content or metadata (e.g the list of supported targets) changes. Patch enables us to monitor changes to the clipboard through help of XFixes extension. Cleanup xlib xa_* naming conventions Task-number: QTBUG-26709 Change-Id: I9d47766ad9859b5628b0358b1c47e8af8fecef73 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Fix badAtom issues introduced by behavior changes between Xlib and xcb.Gatis Paeglis2012-08-021-22/+7
| | | | | | | | | | | | In Xlib, the 'length' variable gets updated with the the actual number of 8-bit, 16-bit, or 32-bit items stored in the returned data, but xcb returns the actual number of bytes read through xcb_get_property_value_length, therefore the logic of calculating offset was broken. Task-number: QTBUG-26709 Change-Id: I04de3b5c5631cfaf9b3c2c3d4513be73c569f61f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* QXcbWindow::setMask(): Check for SHAPE extensionUli Schlachter2012-07-251-0/+2
| | | | | | | | | | | If the SHAPE extension is not available and we try to use it, the xcb connection will shut down and go into an error state. This is bad because there would be no error message that would give a hint on what went wrong. Change-Id: I1a6734bd146ca179a990b6ce896813bf76007b66 Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Reimplement QXcbWindow::setMask() with xcbUli Schlachter2012-07-253-39/+19
| | | | | | | | | This functionality does not need libXext. The bindings for the shape extension from libxcb-shape is enough and is available without Xlib. Change-Id: I9f1927024c64df00ace1666998c6c6deda2ef782 Signed-off-by: Uli Schlachter <psychon@znc.in> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Remove winEventFilter, replaced with installNativeEventFilter.David Faure2012-07-241-1/+2
| | | | | | | | | No reason to keep a virtual method for Windows when all other similar methods (macEvent and x11Event) have been removed, and when installNativeEventFilter provides a much nicer solution (no need to derive from QApplication). Change-Id: Ia2a7960e320fcbd04cef91f467900861dbb377c1 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* XCB: Record the OpenGL profile in the formatSean Harmer2012-07-231-0/+1
| | | | | Change-Id: I68f9e78e15fc798ec801feed74e0cb900ef577ae Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Provide public API for native event filtering, moved up from QPA.David Faure2012-07-203-29/+2
| | | | | | | | | | | | | | | | | | The previous API was hard to use (global function, no type safety, manual chaining), and confusing (app vs dispatcher split only made sense on Windows). Installing and removing out of order would have the risk of setting back a dangling pointer (crash). Meanwhile QPA added type safety, and this new API models the QObject::installEventFilter API for ease of use. The virtual method is in a new interface, QAbstractNativeEventFilter. QPA was even calling the dispatcher event filter with QPA-private event classes, which made no sense (refactoring leftover from when the code was in the dispatcher). Now the QPA plugins trigger the qcoreapp event filters with the actual native events directly. Change-Id: Ie35e47c59c862383bcaf857b28d54f7c72547882 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* Move QWindowSystemInterface out of qpa.Stephen Kelly2012-07-197-7/+7
| | | | | | | | Public QtTest headers require it, so all unit tests would have to use private Qt headers otherwise, which is not practical. Change-Id: I5d4466ec30b6a57ebdfc34413e716e657eb51368 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* handle XInput 2.2 multipoint touch eventsShawn Rutledge2012-07-162-15/+221
| | | | | Change-Id: I5c925ae3e191244c7ab9415e4ba2fe49b93dd2af Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
* Fix compilation for some glxext.h header versionsGunnar Sletta2012-07-121-0/+13
| | | | | | Change-Id: I62b636d9f884c225e64a653db1a5f5da822d4af2 Reviewed-by: Chris Adams <christopher.adams@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* Fix some spelling errorsSergio Ahumada2012-07-112-2/+2
| | | | | | Change-Id: I19d3b2e9a5180b13deb828b55195404ef20be295 Reviewed-by: Daniel Teske <daniel.teske@nokia.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* List required xcb packages for Ubuntu 12.04.Jason McDonald2012-07-111-0/+3
| | | | | Change-Id: Ia934a9da9986f451d90053891c80ec352b939172 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* XCB: Use glXCreateContextAttribsARB if availableSean Harmer2012-07-111-1/+43
| | | | | | | | | | | | | | | If the GLX ARB extension ARB_create_context is available use the function glXCreateContextAttribsARB to create a context for OpenGL 3 or newer that honours the requested profile and version. If a core profile is requested we also ensure that it is forwards compatible. Also ensure that the stored surface format reflects the requested version. Change-Id: Ie4f77be19bfc400440a2f8c9b3d99240eb430925 Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
* Implement nativeResourceFunctionForContext for xcbJorgen Lind2012-07-062-2/+12
| | | | | Change-Id: Icf6c39fb456b39fec58ac2f74c569b9d01993589 Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>