[sugar] Supporting desktop applications, extending the EWMH spec

Sayamindu Dasgupta sayamindu
Thu Sep 18 17:02:00 EDT 2008


On Fri, Sep 19, 2008 at 2:12 AM, Benjamin M. Schwartz
<bmschwar at fas.harvard.edu> wrote:
> Sayamindu Dasgupta wrote:
>>
>> The simplest way to do this is mentioned in the draft, namely, to have
>> a new _NET_WM_WINDOW_TYPE hint, called _NET_WM_WINDOW_TYPE_NETBOOK_APP
>> (feel free to suggest a better name :-P).
>
> I do not understand at all why _NET_WM_WINDOW_TYPE_FULLSCREEN is
> insufficient.  For example, try (under Metacity) launching Firefox and then
> pressing F11 to go into Fullscreen mode.  This results in a full-screen,
> undecorated window that seems to behave exactly as we desire full-screen
> Sugar apps to behave.
>
> Here is a quick experiment I did to compare Firefox when Maximized and
> Fullscreen.
> $ xprop > /tmp/full.txt
> $ xprop > /tmp/max.txt
> $ diff -u /tmp/max.txt /tmp/full.txt
> --- /tmp/max.txt        2008-09-18 16:38:49.000000000 -0400
> +++ /tmp/full.txt       2008-09-18 16:38:33.000000000 -0400
> @@ -3,10 +3,10 @@
>  WM_STATE(WM_STATE):
>                window state: Normal
>                icon window: 0x0
> -_NET_FRAME_EXTENTS(CARDINAL) = 0, 0, 25, 1
> +_NET_FRAME_EXTENTS(CARDINAL) = 0, 0, 0, 0
>  _NET_WM_DESKTOP(CARDINAL) = 0
> -_NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_MOVE, _NET_WM_ACTION_RESIZE,
> _NET_WM_ACTION_FULLSCREEN, _NET_WM_ACTION_MINIMIZE, _NET_WM_ACTION_SHADE,
> _NET_WM_ACTION_MAXIMIZE_HORZ, _NET_WM_ACTION_MAXIMIZE_VERT,
> _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_CLOSE, _NET_WM_ACTION_ABOVE,
> _NET_WM_ACTION_BELOW
> -_NET_WM_STATE(ATOM) = _NET_WM_STATE_MAXIMIZED_HORZ,
> _NET_WM_STATE_MAXIMIZED_VERT
> +_NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_FULLSCREEN,
> _NET_WM_ACTION_MINIMIZE, _NET_WM_ACTION_CHANGE_DESKTOP,
> _NET_WM_ACTION_CLOSE, _NET_WM_ACTION_ABOVE, _NET_WM_ACTION_BELOW
> +_NET_WM_STATE(ATOM) = _NET_WM_STATE_FULLSCREEN
>  WM_HINTS(WM_HINTS):
>                Client accepts input or input focus: True
>                Initial state is Normal State.
>

Some of our activities have a separate fullscreen mode. Take a look at
the two screenshots of record:

Fullscreen: http://dev.laptop.org/~sayamindu/sugar_metacity/Captura%20de%20pantalla_1.png
Normal: http://dev.laptop.org/~sayamindu/sugar_metacity/Captura%20de%20pantalla_1_2.png

Marco suggest that this can be worked around in sugar though.

However, though we do not always show frames (or panels), there are
some environments which show at least a single panel all the time (eg:
Ubuntu Netbook Remix). In those cases, fullscreen might mean that
frame may have to be covered as well. Who knows, maybe in the future
sugar may also decide to show a single frame permanently on the
screen.

Thanks,
Sayamindu


-- 
Sayamindu Dasgupta
[http://sayamindu.randomink.org/ramblings]



More information about the Sugar-devel mailing list