[mutter] wayland: Add frame callbacks to the actor based on the role
- From: Adel Gadllah <agadllah src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] wayland: Add frame callbacks to the actor based on the role
- Date: Sun, 9 Aug 2015 17:25:57 +0000 (UTC)
commit 4dc5882777ed1f6c2957d3860a6f5f23cb48e136
Author: Adel Gadllah <adel gadllah gmail com>
Date: Sun Aug 9 12:54:00 2015 +0200
wayland: Add frame callbacks to the actor based on the role
Checking for the presense of the actor is wrong because we always
create one.
https://bugzilla.gnome.org/show_bug.cgi?id=739163
src/wayland/meta-wayland-surface.c | 20 +++++++++++++++-----
1 files changed, 15 insertions(+), 5 deletions(-)
---
diff --git a/src/wayland/meta-wayland-surface.c b/src/wayland/meta-wayland-surface.c
index 7481d87..863a3ba 100644
--- a/src/wayland/meta-wayland-surface.c
+++ b/src/wayland/meta-wayland-surface.c
@@ -541,11 +541,21 @@ apply_pending_state (MetaWaylandSurface *surface,
}
/* wl_surface.frame */
- if (surface->surface_actor)
- meta_surface_actor_wayland_add_frame_callbacks (META_SURFACE_ACTOR_WAYLAND (surface->surface_actor),
- &pending->frame_callback_list);
- else
- wl_list_insert_list (&compositor->frame_callbacks, &pending->frame_callback_list);
+ switch (surface->role)
+ {
+ case META_WAYLAND_SURFACE_ROLE_NONE:
+ case META_WAYLAND_SURFACE_ROLE_CURSOR:
+ case META_WAYLAND_SURFACE_ROLE_DND:
+ wl_list_insert_list (&compositor->frame_callbacks, &pending->frame_callback_list);
+ break;
+ case META_WAYLAND_SURFACE_ROLE_XDG_SURFACE:
+ case META_WAYLAND_SURFACE_ROLE_XDG_POPUP:
+ case META_WAYLAND_SURFACE_ROLE_WL_SHELL_SURFACE:
+ case META_WAYLAND_SURFACE_ROLE_SUBSURFACE:
+ meta_surface_actor_wayland_add_frame_callbacks (META_SURFACE_ACTOR_WAYLAND (surface->surface_actor),
+ &pending->frame_callback_list);
+ break;
+ }
wl_list_init (&pending->frame_callback_list);
switch (surface->role)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]