[PATCH weston] Fullscreen surfaces

Jasper St. Pierre jstpierre at mecheye.net
Tue Feb 4 06:47:32 PST 2014


You can see our layers here:

https://git.gnome.org/browse/mutter/tree/src/meta/common.h#n572


On Tue, Feb 4, 2014 at 2:45 AM, Emilio Pozuelo Monfort <pochu27 at gmail.com>wrote:

> On 03/02/14 17:14, Emilio Pozuelo Monfort wrote:
> > Hi Bill,
> >
> > On 30/01/14 23:33, Bill Spitzak wrote:
> >> There really should not be a "fullscreen layer" which is what is
> causing this
> >> problem. "layers" are imho a mistake except for the desttop and the
> mouse cursor.
> >>
> >> What I think needs to happen:
> >>
> >> Fullscreen, normal windows, and "panels" can be arranged in any
> stacking order,
> >> except the compositor enforces this rule:
> >>
> >> The "panels" are always just below the lowest fullscreen window. If
> there are no
> >> fullscreen windows then the panel is above all windows.
> >>
> >> There are several ways to enforce this but one that matches current
> window apis is:
> >>
> >> 1. When a window is "raised" and there are no fullscreen windows, the
> panels are
> >> also raised to remain above it. If there are fullscreen windows then
> the panel
> >> is not moved. Note that a window can be raised above a fullscreen
> window, thus
> >> solving this bug.
> >>
> >> 2. Whan a window switches to fullscreen it is also raised (thus it will
> end up
> >> above the panel). (an alternative is to lower the panel but that is not
> standard
> >> behavior in existing windowing systems).
> >>
> >> 3. When the last fullscreen window switches to non-fullscreen, the
> panel is
> >> raised above all windows.
> >
> > I think this could work well. It would indeed solve
> > https://bugs.freedesktop.org/show_bug.cgi?id=74219. I just disagree
> with one
> > detail: the panel should always be on top except when the top surface is
> > fullscreened. So if there are two surfaces, a normal surface above and a
> > fullscreen surface behind it, then the panel should be raised (that
> would be
> > consistent with what we currently do and with what gnome-shell does).
>
> I talked to Jasper on irc and he said mutter keeps a normal layer and a
> fullscreen layer, and adds an extra layer where the focused window is
> placed and
> which is drawn above the other layers. That would solve #74219 as well.
> However
> this made me think we can solve #74219 easily without adding an extra
> layer or
> removing the fullscreen layer. We just need to raise a surface to the top
> whenever it is focused, including lowering the fullscreen layer if that
> isn't empty.
>
> I'll try to look at this later this week if I can find some time.
>
> Cheers,
> Emilio
>



-- 
  Jasper
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-devel/attachments/20140204/2bf399f4/attachment-0001.html>


More information about the wayland-devel mailing list