From cf9d6798b3974ff8b920b0382ef886764e6ee38d Mon Sep 17 00:00:00 2001 From: Matthew Budd Date: Sat, 15 Aug 2020 14:45:44 -0400 Subject: [PATCH] Added more debug output to GTK GLX window --- src/drivers/sdl/glxwin.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/drivers/sdl/glxwin.cpp b/src/drivers/sdl/glxwin.cpp index 8576144b..638db86b 100644 --- a/src/drivers/sdl/glxwin.cpp +++ b/src/drivers/sdl/glxwin.cpp @@ -33,6 +33,7 @@ static GLXContext glc = NULL; static XWindowAttributes gwa; static XEvent xev; static GLint double_buffer_ena = 1; +static bool isDoubleBuffered = true; static GLuint gltexture = 0; static int spawn_new_window = 0; @@ -289,7 +290,7 @@ static void render_image(void) //glVertex2f( 1.0f, 1.0f); // Top right of target. //glEnd(); - if ( double_buffer_ena ) + if ( isDoubleBuffered ) { glXSwapBuffers( dpy, win ); } @@ -452,13 +453,13 @@ int init_gtk3_GLXContext( int flags ) if (vi == NULL) { - printf("\n\tno appropriate visual found\n\n"); + printf("\n\tERROR: GLX No appropriate visual found\n\n"); exit(0); } else { int val; - printf("\n\tvisual %p selected\n", (void *)vi->visualid); /* %p creates hexadecimal output like in glxinfo */ + printf("\n\tGLX visual %p selected\n", (void *)vi->visualid); /* %p creates hexadecimal output like in glxinfo */ if ( glXGetConfig( dpy, vi, GLX_RGBA, &val ) == 0 ) { @@ -478,6 +479,7 @@ int init_gtk3_GLXContext( int flags ) } if ( glXGetConfig( dpy, vi, GLX_DOUBLEBUFFER, &val ) == 0 ) { + isDoubleBuffered = val ? true : false; printf("GLX_DOUBLEBUFFER: %i \n", val ); } if ( glXGetConfig( dpy, vi, GLX_RED_SIZE, &val ) == 0 ) @@ -512,7 +514,11 @@ int init_gtk3_GLXContext( int flags ) if ( glc == NULL ) { - printf("Error: glXCreateContext Failed\n"); + printf("ERROR: glXCreateContext Failed\n"); + } + else + { + printf("glXIsDirect: %i \n", glXIsDirect( dpy, glc ) ); } } XFree(vi); vi = NULL;