[xmonad] restackWindow / raiseWindow

Jochen Keil jochen.keil at gmail.com
Thu Feb 7 11:05:06 CET 2013

Dear list,

I've written a small layout hook for raising the currently focused window:

  data RaiseFocused a = RaiseFocused
      deriving (Read, Show)

  instance LayoutModifier RaiseFocused a where
      hook _ = asks display >>= \d -> withFocused ( io . raiseWindow d )

  raiseFocused :: l a -> ModifiedLayout RaiseFocused l a
  raiseFocused = ModifiedLayout RaiseFocused

So far, so good, yet it doesn't work. The reason lies in Operations.hs,
specifically in the "windows" function:

  io $ restackWindows d (map fst vs)

This makes all my efforts useless. For now I've put the raiseWindow line
into the logHook where it works, but I think this is not the right place.

Any suggestions how to improve this? Would a patch for making the
restacking behaviour configurable be accepted?
Restacking the windows could be easily removed from the windows function
and implemented as separate module. There it would be easy to implement
different stacking behaviors.

Best Wishes,



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/20130207/325a0560/attachment.pgp>

More information about the xmonad mailing list