[mutter] MetaPlugin: add a size_changed vfunc
- From: Rui Matos <rtcm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] MetaPlugin: add a size_changed vfunc
- Date: Wed, 23 Nov 2016 17:57:50 +0000 (UTC)
commit 9c03e78505900c700f5179ec13cf1c844d86a1d2
Author: Rui Matos <tiagomatos gmail com>
Date: Mon Sep 26 15:54:54 2016 +0200
MetaPlugin: add a size_changed vfunc
This will be used to let plugins know when a previous size change
actually becomes effective. This is needed to handle wayland client
resizing properly since, unlike X, it's async.
https://bugzilla.gnome.org/show_bug.cgi?id=770345
src/compositor/meta-plugin-manager.c | 11 +++++++++++
src/compositor/meta-plugin-manager.h | 3 +++
src/meta/meta-plugin.h | 3 +++
3 files changed, 17 insertions(+), 0 deletions(-)
---
diff --git a/src/compositor/meta-plugin-manager.c b/src/compositor/meta-plugin-manager.c
index ac5716d..1a1b000 100644
--- a/src/compositor/meta-plugin-manager.c
+++ b/src/compositor/meta-plugin-manager.c
@@ -202,6 +202,17 @@ meta_plugin_manager_event_simple (MetaPluginManager *plugin_mgr,
return retval;
}
+void
+meta_plugin_manager_event_size_changed (MetaPluginManager *plugin_mgr,
+ MetaWindowActor *actor)
+{
+ MetaPlugin *plugin = plugin_mgr->plugin;
+ MetaPluginClass *klass = META_PLUGIN_GET_CLASS (plugin);
+
+ if (klass->size_changed)
+ klass->size_changed (plugin, actor);
+}
+
gboolean
meta_plugin_manager_event_size_change (MetaPluginManager *plugin_mgr,
MetaWindowActor *actor,
diff --git a/src/compositor/meta-plugin-manager.h b/src/compositor/meta-plugin-manager.h
index 8851897..ff0b976 100644
--- a/src/compositor/meta-plugin-manager.h
+++ b/src/compositor/meta-plugin-manager.h
@@ -50,6 +50,9 @@ gboolean meta_plugin_manager_event_simple (MetaPluginManager *mgr,
MetaWindowActor *actor,
MetaPluginEffect event);
+void meta_plugin_manager_event_size_changed (MetaPluginManager *mgr,
+ MetaWindowActor *actor);
+
gboolean meta_plugin_manager_event_size_change (MetaPluginManager *mgr,
MetaWindowActor *actor,
MetaSizeChange which_change,
diff --git a/src/meta/meta-plugin.h b/src/meta/meta-plugin.h
index 77a3648..4f8136d 100644
--- a/src/meta/meta-plugin.h
+++ b/src/meta/meta-plugin.h
@@ -102,6 +102,9 @@ struct _MetaPluginClass
void (*unminimize) (MetaPlugin *plugin,
MetaWindowActor *actor);
+ void (*size_changed) (MetaPlugin *plugin,
+ MetaWindowActor *actor);
+
void (*size_change) (MetaPlugin *plugin,
MetaWindowActor *actor,
MetaSizeChange which_change,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]