[clutter/clutter-1.16] wayland: make the surface toplevel when showing the stage



commit e352047499873efb56afe5c60a397ec31f0d13c3
Author: Rob Bradford <rob linux intel com>
Date:   Thu Jun 27 14:22:02 2013 +0100

    wayland: make the surface toplevel when showing the stage
    
    Cogl (as of 0b2b46ce) now only sets the shell surface as toplevel when
    the CoglOnscreen is shown.
    
    Without calling wl_shell_surface_set_toplevel the compositor will not
    know what role to give to the compositor and thus the stage will not
    appear.
    
    When we look to support multiple roles / foreign surfaces we will need
    to revisit this call and ensure we only call it when we are working in
    the default case.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=703188

 clutter/wayland/clutter-stage-wayland.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)
---
diff --git a/clutter/wayland/clutter-stage-wayland.c b/clutter/wayland/clutter-stage-wayland.c
index 20038fb..c8c5679 100644
--- a/clutter/wayland/clutter-stage-wayland.c
+++ b/clutter/wayland/clutter-stage-wayland.c
@@ -134,9 +134,13 @@ clutter_stage_wayland_show (ClutterStageWindow *stage_window,
                             gboolean            do_raise)
 {
   ClutterStageCogl *stage_cogl = CLUTTER_STAGE_COGL (stage_window);
+  ClutterStageWayland *stage_wayland = CLUTTER_STAGE_WAYLAND (stage_window);
 
   clutter_stage_window_parent_iface->show (stage_window, do_raise);
 
+  /* TODO: must not call this on foreign surfaces when we add that support */
+  wl_shell_surface_set_toplevel (stage_wayland->wayland_shell_surface);
+
   /* We need to queue a redraw after the stage is shown because all of
    * the other queue redraws up to this point will have been ignored
    * because the actor was not visible. The other backends do not need


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