diff --git a/gsk/gl/gskglrenderer.c b/gsk/gl/gskglrenderer.c index 77d7823618..d12a1d4f67 100644 --- a/gsk/gl/gskglrenderer.c +++ b/gsk/gl/gskglrenderer.c @@ -455,7 +455,10 @@ gsk_gl_renderer_render_texture (GskRenderer *renderer, return texture; } + /* Don't use float textures for SRGB or node-editor turns on high + * depth unconditionally. */ if (gsk_render_node_get_preferred_depth (root) != GDK_MEMORY_U8 && + gsk_render_node_get_preferred_depth (root) != GDK_MEMORY_U8_SRGB && gdk_gl_context_check_version (self->context, "3.0", "3.0")) { gdk_format = GDK_MEMORY_R32G32B32A32_FLOAT_PREMULTIPLIED;