wine's fullscreen code has no effect on metacity
Dmitry Timoshkov
dmitry at codeweavers.com
Fri Jul 14 02:43:33 CDT 2006
"Havoc Pennington" <hp at redhat.com> wrote:
> to shift it below the top GNOME top panel by 25 pixels (btw,
>> that's why I wrongly thought that the top GNOME top panel remained above
>> in Z order of the main game's window, actually they do not overlap each
>> other).
>
> Metacity does this with all windows (keeps them below the panel) unless
> there's some reason not to (such as fullscreen); it's a longstanding UI
> decision.
It's OK that a WM constrains windows to be placed inside of its work area
but still allows to place them into a fullscreen state on request. How would
you suggest to properly inform a WM that a window needs to be in a fullscreen
state? Does metacity ignore ClientMessage/_NET_WM_STATE_FULLSCREEN request due
to 'fullscreenable = 0' or something else?
>> Last line above confuses a lot: why WM behind our back maps a window?
>> What may
>> be a reason behind that?
>
> From the metacity log, it looks to me like WINE here withdraws the
> window, turns on window decorations, then remaps the window.
>
> Metacity then has to unmap/map one more time in order to place the
> window inside its window frame. Undecorated windows don't have a frame
> so don't have the extra unmap/map caused by reparenting, but normal
> windows do.
Thanks for the explanation, now the behavour I see in the log looks
reasonable to me: a window gets mapped/unmapped in a succession, and
actually Wine handles that correctly since it has an internal visibility
state for each window. This answers the question (2) as well.
--
Dmitry.
More information about the wine-devel
mailing list