[PATCH weston] libweston: Position layers in an absolute way
Pekka Paalanen
ppaalanen at gmail.com
Thu Jul 7 08:57:07 UTC 2016
On Tue, 5 Jul 2016 11:26:52 +0200
Quentin Glidic <sardemff7+wayland at sardemff7.net> wrote:
> On 05/07/2016 11:09, Giulio Camuffo wrote:
> > 2016-07-05 10:15 GMT+02:00 Quentin Glidic <sardemff7+wayland at sardemff7.net>:
> >> From: Quentin Glidic <sardemff7+git at sardemff7.net>
> >>
> >> Currently, layers’ order depends on the module loading order.
> >> With this patch, modules can safely add their own layer at the correct
> >> place.
> >>
> >> Signed-off-by: Quentin Glidic <sardemff7+git at sardemff7.net>
> >> ---
> >> desktop-shell/input-panel.c | 9 +++--
> >> desktop-shell/shell.c | 80 +++++++++++++++++++++++--------------
> >> fullscreen-shell/fullscreen-shell.c | 3 +-
> >> ivi-shell/input-panel-ivi.c | 9 +++--
> >> ivi-shell/ivi-layout.c | 3 +-
> >> ivi-shell/ivi-shell.c | 3 +-
> >> libweston/compositor.c | 34 +++++++++++++---
> >> libweston/compositor.h | 29 +++++++++++++-
> >> tests/weston-test.c | 2 +-
> >> 9 files changed, 126 insertions(+), 46 deletions(-)
> >>
> >> [snip]
> >>
> >> +/* Higher value means higher in the stack.
> >> + * Only one module should use the NORMAL value to make sure clients surfaces
> >> + * are stacked properly.
> >> + * Other values will stack layers from top to bottom in the order of addition,
> >> + * and you should use plugir registry to make surfaces not overlap where
> >> + * relevant. */
> >> +enum weston_layer_position {
> >> + WESTON_LAYER_POSITION_HIDDEN = 0x0000, /* special value to remove
> >> + * a layer from the list */
> >> + WESTON_LAYER_POSITION_BACKGROUND = 0x0200,
> >> + WESTON_LAYER_POSITION_NORMAL = 0x0400,
> >> + WESTON_LAYER_POSITION_UI = 0x0600,
> >> + WESTON_LAYER_POSITION_FULLSCREEN = 0x0700,
> >> + WESTON_LAYER_POSITION_TOP_UI = 0x0800,
> >> + WESTON_LAYER_POSITION_LOCK = 0x1000,
> >> + WESTON_LAYER_POSITION_CURSOR = 0x1200,
> >> + WESTON_LAYER_POSITION_FADE = 0x1201,
> >
> > In orbital i have 10 layers, so these would not be enough. Besides,
> > having to modify libweston everytime i need one more would be a
> > hassle. I understand the problem, but i think it is a weston problem,
> > rather than libweston, and should be something on top, imho.
> >
>
> There is room between these values, specifically so you can add your
> own. No need to modify Weston every time. These are just standard values
> that plugins can use and developers are aware of, so you can make your
> own values meaningful wrt these ones.
>
> These values should be shared between the majority of compositors, so if
> you have more to add that are meaningful outside of orbital, please share.
>
> It cannot be a weston problem, IMO, because I really want
> libweston-based compositors to share as much modules as possible, and
> these modules could add their layers.
>
> Cheers,
Hi,
just my personal opinion: using layer priority values as the key
for ordering the layers automatically sounds good to me, so the
idea is Acked-by me.
You just need to improve the documentation to get the idea
clearly across. ;-)
Thanks,
pq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 811 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20160707/aa2f021d/attachment-0001.sig>
More information about the wayland-devel
mailing list