[xmonad] restackWindow / raiseWindow

Jochen Keil jochen.keil at gmail.com
Mon Feb 11 10:54:21 CET 2013


On 10.02.2013 01:28, Brandon Allbery wrote:
> On Sat, Feb 9, 2013 at 3:01 PM, Jochen Keil <jochen.keil at gmail.com> wrote:
>> I'm not sure if I got you right here. Maybe you could elaborate on what
>> you mean by shiftMaster being raiseWindow. I think the additional Stack
>> Window parameter in the layout is also what Brandon suggested.
> No; I suggested a new *function*, type Maybe Stack -> [Window] -> X (),
> which does the raiseWindow or sets stacking order or etc.  aavogt proposes
> to keep forcing the z-order globally but provide a way to specify an
> alternative order; this strikes me as asking for trouble unless one is
> careful to keep both Stacks in sync.
Thanks for the clarification! I'm with you that forcing the z-order
globally is not a good idea.

>> restackWindows call in windows.
> Which is why I'm proposing to remove that call and make it instead a
> function in the layout, which can be overridden with an alternative.
I think now I understand. I forgot about the Layout being a typeclass.
So just add new function with a default implementation here. Sorry for
getting my wires crossed. :)

>  so maybe it belongs directly in XConfig instead.
Could you then still have different stacking orders for different
layouts? I think the stacking order is directly related to the layout
which also makes sense in as the View in the MVC model.

> (Alternately, get XMonad.Operations.windows out of the stacking business
> entirely and put it with the rest of the layout.  It probably belongs there
> instead of X.O.windows anyway, and in fact we may already have it being
> done in some/all? cases as is; and any situation which requires X.O.windows
> to restack windows also requires it to rerun the layout.)
Speaking again in MVC terms: As far as I understand it,
XMonad.Operations.windows is the Controller, which should be decoupled
from View and Model. Therefore it should not do things which belong to
the V or M (e.g. restacking windows).

I'll try to extend the layout class as discussed above and report back
in a few days.


Denn meine Gedanken
Zerreißen die Schranken
Und Mauern entzwei:
Die Gedanken sind frei.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: OpenPGP digital signature
URL: <http://www.haskell.org/pipermail/xmonad/attachments/20130211/27cc7c1c/attachment.pgp>

More information about the xmonad mailing list