MetaSurfaceActor *meta_window_actor_get_surface (MetaWindowActor *self);
void meta_window_actor_update_surface (MetaWindowActor *self);
+MetaWindowActor *meta_window_actor_from_window (MetaWindow *window);
#endif /* META_WINDOW_ACTOR_PRIVATE_H */
enum
{
FIRST_FRAME,
+ EFFECTS_COMPLETED,
+
LAST_SIGNAL
};
NULL, NULL, NULL,
G_TYPE_NONE, 0);
+ /**
+ * MetaWindowActor::effects-completed:
+ * @actor: the #MetaWindowActor instance
+ *
+ * The ::effects-completed signal will be emitted once all pending compositor
+ * effects are completed.
+ */
+ signals[EFFECTS_COMPLETED] =
+ g_signal_new ("effects-completed",
+ G_TYPE_FROM_CLASS (object_class),
+ G_SIGNAL_RUN_LAST,
+ 0,
+ NULL, NULL, NULL,
+ G_TYPE_NONE, 0);
+
pspec = g_param_spec_object ("meta-window",
"MetaWindow",
"The displayed MetaWindow",
return;
}
+ g_signal_emit (self, signals[EFFECTS_COMPLETED], 0);
meta_window_actor_sync_visibility (self);
meta_window_actor_sync_actor_geometry (self, FALSE);
}
meta_window_actor_set_updates_frozen (self, meta_window_updates_are_frozen (window));
}
+
+MetaWindowActor *
+meta_window_actor_from_window (MetaWindow *window)
+{
+ return META_WINDOW_ACTOR (meta_window_get_compositor_private (window));
+}