summaryrefslogtreecommitdiffstats
path: root/ui/gl/gl_glx_api_implementation.cc
diff options
context:
space:
mode:
authorskyostil@chromium.org <skyostil@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-30 17:06:43 +0000
committerskyostil@chromium.org <skyostil@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-30 17:06:43 +0000
commit458950363d8494b52018425604914a11a99c09df (patch)
tree632f72dd1f99e441c0b6be153937777e407fd304 /ui/gl/gl_glx_api_implementation.cc
parent76a1c58f228545e04012cca5d50d134a5a5e9271 (diff)
downloadchromium_src-458950363d8494b52018425604914a11a99c09df.zip
chromium_src-458950363d8494b52018425604914a11a99c09df.tar.gz
chromium_src-458950363d8494b52018425604914a11a99c09df.tar.bz2
Display GL window system binding information in about:gpu
This patch adds information about the GL window system binding layer implementation to about:gpu. Depending on which binding layer is used, the following information is displayed: - EGL: vendor, version, extension string - GLX: vendor, version, extension string - WGL: extension string TEST=Check that the above shows up in about:gpu Review URL: https://chromiumcodereview.appspot.com/15890002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203167 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/gl/gl_glx_api_implementation.cc')
-rw-r--r--ui/gl/gl_glx_api_implementation.cc20
1 files changed, 20 insertions, 0 deletions
diff --git a/ui/gl/gl_glx_api_implementation.cc b/ui/gl/gl_glx_api_implementation.cc
index f8e75a2..4a43534 100644
--- a/ui/gl/gl_glx_api_implementation.cc
+++ b/ui/gl/gl_glx_api_implementation.cc
@@ -3,6 +3,7 @@
// found in the LICENSE file.
#include "ui/gl/gl_glx_api_implementation.h"
+#include "ui/gl/gl_implementation.h"
namespace gfx {
@@ -64,6 +65,25 @@ void RealGLXApi::Initialize(DriverGLX* driver) {
TraceGLXApi::~TraceGLXApi() {
}
+bool GetGLWindowSystemBindingInfoGLX(GLWindowSystemBindingInfo* info) {
+ Display* display = glXGetCurrentDisplay();
+ const int kDefaultScreen = 0;
+ const char* vendor =
+ glXQueryServerString(display, kDefaultScreen, GLX_VENDOR);
+ const char* version =
+ glXQueryServerString(display, kDefaultScreen, GLX_VERSION);
+ const char* extensions =
+ glXQueryServerString(display, kDefaultScreen, GLX_EXTENSIONS);
+ *info = GLWindowSystemBindingInfo();
+ if (vendor)
+ info->vendor = vendor;
+ if (version)
+ info->version = version;
+ if (extensions)
+ info->extensions = extensions;
+ return true;
+}
+
} // namespace gfx