[metacity] compositor: add window_opaque_region_changed



commit 411a08fcae376a7e968c152cb7527711b631791c
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date:   Wed Jun 28 14:52:50 2017 +0300

    compositor: add window_opaque_region_changed

 src/compositor/meta-compositor-none.c    |    7 +++++++
 src/compositor/meta-compositor-private.h |    3 +++
 src/compositor/meta-compositor-vulkan.c  |    7 +++++++
 src/compositor/meta-compositor-xrender.c |    7 +++++++
 src/compositor/meta-compositor.c         |   11 +++++++++++
 src/core/window-props.c                  |    2 +-
 src/include/meta-compositor.h            |    3 +++
 7 files changed, 39 insertions(+), 1 deletions(-)
---
diff --git a/src/compositor/meta-compositor-none.c b/src/compositor/meta-compositor-none.c
index 6fdcbed..4cdcd40 100644
--- a/src/compositor/meta-compositor-none.c
+++ b/src/compositor/meta-compositor-none.c
@@ -66,6 +66,12 @@ meta_compositor_none_window_opacity_changed (MetaCompositor *compositor,
 }
 
 static void
+meta_compositor_none_window_opaque_region_changed (MetaCompositor *compositor,
+                                                   MetaWindow     *window)
+{
+}
+
+static void
 meta_compositor_none_window_shape_changed (MetaCompositor *compositor,
                                            MetaWindow     *window)
 {
@@ -139,6 +145,7 @@ meta_compositor_none_class_init (MetaCompositorNoneClass *none_class)
   compositor_class->show_window = meta_compositor_none_show_window;
   compositor_class->hide_window = meta_compositor_none_hide_window;
   compositor_class->window_opacity_changed = meta_compositor_none_window_opacity_changed;
+  compositor_class->window_opaque_region_changed = meta_compositor_none_window_opaque_region_changed;
   compositor_class->window_shape_changed = meta_compositor_none_window_shape_changed;
   compositor_class->set_updates_frozen = meta_compositor_none_set_updates_frozen;
   compositor_class->process_event = meta_compositor_none_process_event;
diff --git a/src/compositor/meta-compositor-private.h b/src/compositor/meta-compositor-private.h
index 1a394b3..42e126a 100644
--- a/src/compositor/meta-compositor-private.h
+++ b/src/compositor/meta-compositor-private.h
@@ -47,6 +47,9 @@ struct _MetaCompositorClass
   void              (* window_opacity_changed) (MetaCompositor     *compositor,
                                                 MetaWindow         *window);
 
+  void              (* window_opaque_region_changed) (MetaCompositor     *compositor,
+                                                      MetaWindow         *window);
+
   void              (* window_shape_changed)   (MetaCompositor     *compositor,
                                                 MetaWindow         *window);
 
diff --git a/src/compositor/meta-compositor-vulkan.c b/src/compositor/meta-compositor-vulkan.c
index 5327937..213f615 100644
--- a/src/compositor/meta-compositor-vulkan.c
+++ b/src/compositor/meta-compositor-vulkan.c
@@ -1252,6 +1252,12 @@ meta_compositor_vulkan_window_opacity_changed (MetaCompositor *compositor,
 }
 
 static void
+meta_compositor_vulkan_window_opaque_region_changed (MetaCompositor *compositor,
+                                                     MetaWindow     *window)
+{
+}
+
+static void
 meta_compositor_vulkan_window_shape_changed (MetaCompositor *compositor,
                                              MetaWindow     *window)
 {
@@ -1329,6 +1335,7 @@ meta_compositor_vulkan_class_init (MetaCompositorVulkanClass *vulkan_class)
   compositor_class->show_window = meta_compositor_vulkan_show_window;
   compositor_class->hide_window = meta_compositor_vulkan_hide_window;
   compositor_class->window_opacity_changed = meta_compositor_vulkan_window_opacity_changed;
+  compositor_class->window_opaque_region_changed = meta_compositor_vulkan_window_opaque_region_changed;
   compositor_class->window_shape_changed = meta_compositor_vulkan_window_shape_changed;
   compositor_class->set_updates_frozen = meta_compositor_vulkan_set_updates_frozen;
   compositor_class->process_event = meta_compositor_vulkan_process_event;
diff --git a/src/compositor/meta-compositor-xrender.c b/src/compositor/meta-compositor-xrender.c
index 36fa719..4cfe033 100644
--- a/src/compositor/meta-compositor-xrender.c
+++ b/src/compositor/meta-compositor-xrender.c
@@ -2629,6 +2629,12 @@ meta_compositor_xrender_window_opacity_changed (MetaCompositor *compositor,
 }
 
 static void
+meta_compositor_xrender_window_opaque_region_changed (MetaCompositor *compositor,
+                                                      MetaWindow     *window)
+{
+}
+
+static void
 meta_compositor_xrender_window_shape_changed (MetaCompositor *compositor,
                                               MetaWindow     *window)
 {
@@ -3096,6 +3102,7 @@ meta_compositor_xrender_class_init (MetaCompositorXRenderClass *xrender_class)
   compositor_class->show_window = meta_compositor_xrender_show_window;
   compositor_class->hide_window = meta_compositor_xrender_hide_window;
   compositor_class->window_opacity_changed = meta_compositor_xrender_window_opacity_changed;
+  compositor_class->window_opaque_region_changed = meta_compositor_xrender_window_opaque_region_changed;
   compositor_class->window_shape_changed = meta_compositor_xrender_window_shape_changed;
   compositor_class->set_updates_frozen = meta_compositor_xrender_set_updates_frozen;
   compositor_class->process_event = meta_compositor_xrender_process_event;
diff --git a/src/compositor/meta-compositor.c b/src/compositor/meta-compositor.c
index dc7bfdc..d589941 100644
--- a/src/compositor/meta-compositor.c
+++ b/src/compositor/meta-compositor.c
@@ -374,6 +374,17 @@ meta_compositor_window_opacity_changed (MetaCompositor *compositor,
 }
 
 void
+meta_compositor_window_opaque_region_changed (MetaCompositor *compositor,
+                                              MetaWindow     *window)
+{
+  MetaCompositorClass *compositor_class;
+
+  compositor_class = META_COMPOSITOR_GET_CLASS (compositor);
+
+  compositor_class->window_opaque_region_changed (compositor, window);
+}
+
+void
 meta_compositor_window_shape_changed (MetaCompositor *compositor,
                                       MetaWindow     *window)
 {
diff --git a/src/core/window-props.c b/src/core/window-props.c
index f48035f..9001d88 100644
--- a/src/core/window-props.c
+++ b/src/core/window-props.c
@@ -732,7 +732,7 @@ meta_window_set_opaque_region (MetaWindow     *window,
   if (region != NULL)
     window->opaque_region = cairo_region_reference (region);
 
-  meta_compositor_window_shape_changed (window->display->compositor, window);
+  meta_compositor_window_opaque_region_changed (window->display->compositor, window);
 }
 
 static void
diff --git a/src/include/meta-compositor.h b/src/include/meta-compositor.h
index 9f2229d..b74d1d8 100644
--- a/src/include/meta-compositor.h
+++ b/src/include/meta-compositor.h
@@ -67,6 +67,9 @@ void             meta_compositor_hide_window            (MetaCompositor     *com
 void             meta_compositor_window_opacity_changed (MetaCompositor     *compositor,
                                                          MetaWindow         *window);
 
+void             meta_compositor_window_opaque_region_changed (MetaCompositor     *compositor,
+                                                               MetaWindow         *window);
+
 void             meta_compositor_window_shape_changed   (MetaCompositor     *compositor,
                                                          MetaWindow         *window);
 


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