diff options
author | Michael Meeks <michael.meeks@collabora.com> | 2015-11-16 18:18:36 +0000 |
---|---|---|
committer | Michael Meeks <michael.meeks@collabora.com> | 2015-12-11 11:39:55 +0000 |
commit | 93185f720aab0e58564c050ea3518746d8597803 (patch) | |
tree | e3caa5ea277984ea11067d4360fc9f82628e53d5 /vcl | |
parent | ef414f70426f5e6b9170a6e3565f30f44bb41254 (diff) |
Get Double-buffered context creation working on linux.
Change-Id: I3db1d6792fcd51577f047b82029124ec825ea319
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/source/opengl/OpenGLContext.cxx | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/vcl/source/opengl/OpenGLContext.cxx b/vcl/source/opengl/OpenGLContext.cxx index 8c5db0fe9708..26148a607cff 100644 --- a/vcl/source/opengl/OpenGLContext.cxx +++ b/vcl/source/opengl/OpenGLContext.cxx @@ -706,9 +706,7 @@ bool GLWindow::HasGLXExtension( const char* name ) const bool OpenGLContext::ImplInit() { if (!m_aGLWin.dpy) - { return false; - } OpenGLZone aZone; @@ -722,11 +720,10 @@ bool OpenGLContext::ImplInit() if (!g_vShareList.empty()) pSharedCtx = g_vShareList.front(); -#ifdef DBG_UTIL if (glXCreateContextAttribsARB && !mbRequestLegacyContext) { int best_fbc = -1; - GLXFBConfig* pFBC = getFBConfig(m_aGLWin.dpy, m_aGLWin.win, best_fbc, mbUseDoubleBufferedRendering, true); + GLXFBConfig* pFBC = getFBConfig(m_aGLWin.dpy, m_aGLWin.win, best_fbc, mbUseDoubleBufferedRendering, false); if (!pFBC) return false; @@ -734,24 +731,28 @@ bool OpenGLContext::ImplInit() { int pContextAttribs[] = { +#if 0 // defined(DBG_UTIL) GLX_CONTEXT_MAJOR_VERSION_ARB, 3, GLX_CONTEXT_MINOR_VERSION_ARB, 2, +#endif None + }; m_aGLWin.ctx = glXCreateContextAttribsARB(m_aGLWin.dpy, pFBC[best_fbc], pSharedCtx, /* direct, not via X */ GL_TRUE, pContextAttribs); SAL_INFO_IF(m_aGLWin.ctx, "vcl.opengl", "created a 3.2 core context"); } else SAL_WARN("vcl.opengl", "unable to find correct FBC"); - } -#endif if (!m_aGLWin.ctx) { if (!m_aGLWin.vi) return false; + SAL_WARN("vcl.opengl", "attempting to create a non-double-buffered " + "visual matching the context"); + m_aGLWin.ctx = glXCreateContext(m_aGLWin.dpy, m_aGLWin.vi, pSharedCtx, |