[gtk/wip/chergert/macos-iosurface: 36/39] gsk/gl: avoid clearing opaque regions




commit e2151c7838aa5eb04e3ee124b6c650521b4a7c96
Author: Christian Hergert <christian hergert me>
Date:   Mon Feb 21 23:27:42 2022 -0800

    gsk/gl: avoid clearing opaque regions
    
    If the rendering operation is over an opaque region, we can potentially
    avoid clearing a large section of the framebuffer destination. Some cases
    you do want to clear, such as when clearing the whole contents as some
    drivers have fast paths for that to avoid bringing data back into the
    framebuffer.

 gsk/gl/gskglrenderjob.c | 1 +
 1 file changed, 1 insertion(+)
---
diff --git a/gsk/gl/gskglrenderjob.c b/gsk/gl/gskglrenderjob.c
index afefe7a018..b31466a36d 100644
--- a/gsk/gl/gskglrenderjob.c
+++ b/gsk/gl/gskglrenderjob.c
@@ -4183,6 +4183,7 @@ gsk_gl_render_job_new (GskGLDriver           *driver,
   job->framebuffer = framebuffer;
   job->clear_framebuffer = !!clear_framebuffer;
   job->default_framebuffer = default_framebuffer;
+  job->clear_framebuffer = !!clear_framebuffer;
   job->offset_x = 0;
   job->offset_y = 0;
   job->scale_x = scale_factor;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]