can subsurface and shell surface be used together to manage surfaces

zou lan nancy.lan.zou at
Sun Apr 12 09:13:04 UTC 2020

Hi Matt

yes, I want to bind a wl_surface to a subsurface first, then create a shell
surface for it.

I want to do that is because if the wl surface is created by another
compositor, it had been declared as a subsurface to map its position of
original compositor. Then weston shell can't
manage the surface as a window directly, I was just wondering how can make
weston shell could manage these kind of surfaces as separate windows too.
It seems create shell surface for each wl surface is not a good idea in
this case.  Thank you for confirmation!

Best Regards

Matt Hoosier <matt.hoosier at> 于2020年4月11日周六 下午9:38写道:

> If you’re asking whether it’s possible to migrate a given wl_surface from
> being a subsurface (initially) to later being a shell surface, this isn’t
> allowed. This has to do with the immutability of a surface’s so-called
> “role.” (Surfaces are only ever allowed to be registered with one given
> role. )
> -Matt
> On Fri, Apr 10, 2020 at 5:43 AM zou lan <nancy.lan.zou at> wrote:
>> Hi pekka & all
>> I want to use subsurface to manage the initial position of each surface
>> on screen, then I want to create shell surface for each wl surface to
>> manage them seperately, such as response touch event, ivi-shell can modify
>> the z-order of each surface and move each ivi surface to different displays.
>> Is it ok to use subsurface like this? If the shell surfaces' z-order have
>> been modified by desktop shell or ivi-shell,  will the z-order of
>> subsurfaces be modified too?
>> thank you!
>> Best Regards
>> Nancy
>> _______________________________________________
>> wayland-devel mailing list
>> wayland-devel at
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the wayland-devel mailing list