Skip to content

Fixed OpenGL extension detection for extensions promoted to OpenGL core.

David Hogan requested to merge dqh/gtk:master into master

For a given OpenGL context, macOS in particular does not support enumeration / detection of OpenGL features that have been promoted to core OpenGL functionality. It is possible other drivers are the same. This change assumes support for GL_ARB_texture_non_power_of_two with OpenGL 2.0+, GL_ARB_texture_rectangle with OpenGL 3.1+, GL_EXT_framebuffer_blit with OpenGL 3.0+ and GL_ARB_timer_query with OpenGL 3.3+.

I failed to find definitive information on whether GL_GREMEDY_frame_terminator, GL_ARB_debug_output or GL_KHR_debug have been promoted to OpenGL core, or whether GL_ANGLE_framebuffer_blit or GL_EXT_unpack_subimage have been promoted to core in OpenGL ES.

This change results in a significant GtkGLArea performance boost on macOS (at least, it did on GTK 3.24).

Merge request reports