[metacity] surface: add damage parameter to pre_paint vfunc



commit 973721fcf71886a978f1dfc7970cded60efa8cd8
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date:   Tue Oct 22 22:33:19 2019 +0300

    surface: add damage parameter to pre_paint vfunc

 src/compositor/meta-surface-private.h | 15 ++++++++-------
 src/compositor/meta-surface-vulkan.c  |  3 ++-
 src/compositor/meta-surface-xrender.c |  3 ++-
 src/compositor/meta-surface.c         |  2 +-
 4 files changed, 13 insertions(+), 10 deletions(-)
---
diff --git a/src/compositor/meta-surface-private.h b/src/compositor/meta-surface-private.h
index f411b1be..c285fe1e 100644
--- a/src/compositor/meta-surface-private.h
+++ b/src/compositor/meta-surface-private.h
@@ -26,19 +26,20 @@ struct _MetaSurfaceClass
 {
   GObjectClass parent_class;
 
-  cairo_surface_t * (* get_image)       (MetaSurface *self);
+  cairo_surface_t * (* get_image)       (MetaSurface   *self);
 
-  gboolean          (* is_visible)      (MetaSurface *self);
+  gboolean          (* is_visible)      (MetaSurface   *self);
 
-  void              (* show)            (MetaSurface *self);
+  void              (* show)            (MetaSurface   *self);
 
-  void              (* hide)            (MetaSurface *self);
+  void              (* hide)            (MetaSurface   *self);
 
-  void              (* opacity_changed) (MetaSurface *self);
+  void              (* opacity_changed) (MetaSurface   *self);
 
-  void              (* free_pixmap)     (MetaSurface *self);
+  void              (* free_pixmap)     (MetaSurface   *self);
 
-  void              (* pre_paint)       (MetaSurface *self);
+  void              (* pre_paint)       (MetaSurface   *self,
+                                         XserverRegion  damage);
 };
 
 G_END_DECLS
diff --git a/src/compositor/meta-surface-vulkan.c b/src/compositor/meta-surface-vulkan.c
index 3b0c0f08..49e1a0ce 100644
--- a/src/compositor/meta-surface-vulkan.c
+++ b/src/compositor/meta-surface-vulkan.c
@@ -58,7 +58,8 @@ meta_surface_vulkan_free_pixmap (MetaSurface *surface)
 }
 
 static void
-meta_surface_vulkan_pre_paint (MetaSurface *surface)
+meta_surface_vulkan_pre_paint (MetaSurface   *surface,
+                               XserverRegion  damage)
 {
 }
 
diff --git a/src/compositor/meta-surface-xrender.c b/src/compositor/meta-surface-xrender.c
index f86cef22..73ed1b48 100644
--- a/src/compositor/meta-surface-xrender.c
+++ b/src/compositor/meta-surface-xrender.c
@@ -647,7 +647,8 @@ meta_surface_xrender_free_pixmap (MetaSurface *surface)
 }
 
 static void
-meta_surface_xrender_pre_paint (MetaSurface *surface)
+meta_surface_xrender_pre_paint (MetaSurface   *surface,
+                                XserverRegion  damage)
 {
   MetaSurfaceXRender *self;
   MetaWindow *window;
diff --git a/src/compositor/meta-surface.c b/src/compositor/meta-surface.c
index cff7d3ca..40f9b5c3 100644
--- a/src/compositor/meta-surface.c
+++ b/src/compositor/meta-surface.c
@@ -895,7 +895,7 @@ meta_surface_pre_paint (MetaSurface *self)
 
   ensure_pixmap (self);
 
-  META_SURFACE_GET_CLASS (self)->pre_paint (self);
+  META_SURFACE_GET_CLASS (self)->pre_paint (self, damage);
 
   update_shape_region (self, damage);
   update_opaque_region (self, damage);


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