summaryrefslogtreecommitdiff
path: root/src/compositor
diff options
context:
space:
mode:
authorAlberts Muktupāvels <alberts.muktupavels@gmail.com>2019-10-22 22:33:19 +0300
committerAlberts Muktupāvels <alberts.muktupavels@gmail.com>2019-10-22 22:33:19 +0300
commit973721fcf71886a978f1dfc7970cded60efa8cd8 (patch)
tree15ec705949cf167c7f4e9d99ee2bf5ce61f6f904 /src/compositor
parent7fccad333f96eea2ac3f334c8e22ba9a89f4ff41 (diff)
downloadmetacity-973721fcf71886a978f1dfc7970cded60efa8cd8.tar.gz
surface: add damage parameter to pre_paint vfunc
Diffstat (limited to 'src/compositor')
-rw-r--r--src/compositor/meta-surface-private.h15
-rw-r--r--src/compositor/meta-surface-vulkan.c3
-rw-r--r--src/compositor/meta-surface-xrender.c3
-rw-r--r--src/compositor/meta-surface.c2
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);