unity-design team mailing list archive
-
unity-design team
-
Mailing list archive
-
Message #04303
Re: Allowing windows to move past launchers
On Fri, Dec 10, 2010 at 1:33 AM, Mark Shuttleworth <mark@xxxxxxxxxx> wrote:
> On 09/12/10 10:59, Didier Roche wrote:
>> Le jeudi 09 décembre 2010 à 18:55 +0800, Sam Spilsbury a écrit :
>>> Hi,
>>>
>>> I was doing some work on the snap windows plugin for compiz and I was
>>> wondering if it is the correct behaviour design wise to allow windows
>>> to move underneath the launcher and the panel. Currently we have it so
>>> that windows snap to the launcher but the user can move the window
>>> past the launcher if they "move hard enough" but I was wondering if we
>>> should even allow windows to move past these panels in the first
>>> place.
>>>
>>> Let me know what you all think.
>> We should just perhaps agree on the snap value? I mean, we want to avoid
>> false positive on intellihide but still enabling people to have
>> intellihide :)
>
> In the intellihide, moving the window against the launcher should kick
> the launcher out immediately, as it currently does. I think Sam's
> referring more to the case where the launcher is locked in place, not
> intellihide.
I was thinking something like this (warning: coder's POV, it gets a
bit technical).
Bit of lingo here since I tend to use it regularly:
-> strut: A property called _NET_WM_STRUT_PARTIAL that docks,
launchers, etc place on windows to "reserve" an area of the screen.
Windows don't get placed there and they cannot maximize over it.
-> placement: where the window is positioned on open.
My idea was this:
1) On the intellihide case:
-> We don't set the strut property, which means that windows can
implicitly get placed underneath the launcher (this can be overridden
in the unityshell plugin)
-> On maximisation the launcher is going to go away anyway, since the
window will be covering it
-> When moving a window near the launcher, if it goes close then the
launcher will go away (intellihide)
-> When resizing a window, if the resize border touches the launcher,
it goes away, easy
2) On the "fixed launcher" case:
-> We set the strut property, so no implicit incorrect placement
-> On maximization the window does not cover the launcher
-> Windows cannot be resized underneath the launcher
-> Windows cannot be moved underneath the launcher.
The reason for the fourth one is because we have the window buttons on
the left - we do not want to have to obscure them in the case that we
move a window.
>
> Mark
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~ayatana
> Post to : ayatana@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~ayatana
> More help : https://help.launchpad.net/ListHelp
>
>
--
Sam Spilsbury
Follow ups
References