Bug 77527 - wl_shell maps a surface even without set_toplevel
Summary: wl_shell maps a surface even without set_toplevel
Status: RESOLVED FIXED
Alias: None
Product: Wayland
Classification: Unclassified
Component: weston (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Wayland bug list
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-04-16 13:46 UTC by Pekka Paalanen
Modified: 2014-04-30 16:09 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Pekka Paalanen 2014-04-16 13:46:45 UTC
With current Weston master (304996d182874ded26adce40ce1c29210fc5352b), Weston's desktop-shell will map a surface, which has a wl_shell_surface, but has not issued set_toplevel.

This can be easily tested by commenting out line clients/simple-touch.c:314, the one calling wl_shell_surface_set_toplevel(touch->shell_surface);, and running simple-touch. On the very next repaint, the window appears on screen, but does not participate in window management like Win+tab switching or activation.

With the above modification, the simple-touch surface should not be mapped at all.

Thanks to bug #77521 for making me try this.
Comment 1 Kristian Høgsberg 2014-04-30 16:09:53 UTC
commit ef6a7e46eb28d66ccb6d88fa81a55d1a106d632a
Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
Date:   Wed Apr 30 14:15:14 2014 +0300

    shell: Don't map surfaces of type SHELL_SURFACE_NONE
    
    When commit 07926d90 factored out the code that chooses in which layer
    a surface is added to, it changed the behavior for surfaces with no
    type. Instead of not adding it to any layer, the surface is added to
    the current workspace.
    
    This patch restores the old behavior.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=77527


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.