summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlberts Muktupāvels <alberts.muktupavels@gmail.com>2017-06-28 14:52:50 +0300
committerAlberts Muktupāvels <alberts.muktupavels@gmail.com>2017-06-28 14:52:50 +0300
commit411a08fcae376a7e968c152cb7527711b631791c (patch)
treea2ba6ee9f778482cc868fd0b0ca9ee8b8ea68fe2
parenteedba36f748774097b95526a7de4dfecd3bfc8a3 (diff)
downloadmetacity-411a08fcae376a7e968c152cb7527711b631791c.tar.gz
compositor: add window_opaque_region_changed
-rw-r--r--src/compositor/meta-compositor-none.c7
-rw-r--r--src/compositor/meta-compositor-private.h3
-rw-r--r--src/compositor/meta-compositor-vulkan.c7
-rw-r--r--src/compositor/meta-compositor-xrender.c7
-rw-r--r--src/compositor/meta-compositor.c11
-rw-r--r--src/core/window-props.c2
-rw-r--r--src/include/meta-compositor.h3
7 files changed, 39 insertions, 1 deletions
diff --git a/src/compositor/meta-compositor-none.c b/src/compositor/meta-compositor-none.c
index 6fdcbede..4cdcd409 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 1a394b3b..42e126a4 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 53279377..213f615b 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 36fa719b..4cfe033e 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 dc7bfdc7..d5899417 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 f48035fd..9001d881 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 9f2229d1..b74d1d8a 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);