
Hi, Am Freitag, den 09.05.2008, 23:06 +0200 schrieb Lukas Mai:
Fri May 9 22:57:43 CEST 2008 Lukas Mai
* XMonad.Core: new layoutMirrored flag This patch adds a new flag to 'XConf': 'layoutMirrored'. It indicates whether we're inside a layout that swaps the X and Y axes. It defaults to 'False', and 'Mirror' toggles it. 'XMonad.Operations.mkAdjust' reads it in order to apply size hints correctly. This change should make the Tall/Wide distinction in HintedTile redundant, because Mirror (HintedTile ...) works now, using mirrored size hints where appropriate.
Maybe I’m not fully aware of how layouts work, but to me it seems that XConf is the wrong place to add this: Aren’t there layouts that combine other layouts? So what if I combine Mirror Tall and Tall on one screen, what should layoutMirrored say? Also, is it xinerama safe? A cleaner way would probably be a new method for the LayoutClass class that allows this query to run, and be modified by mirroring layout transformers. Seems at least more functional to me than some global flag... If you give a default implementation of the method, you would not even have to change the instances. Maybe something a long the lines of
coordinateMirrored :: Window -> Bool
But then, I might just not have enough clue about all this and everything is fine already :-) Greetings, Joachim -- Joachim "nomeata" Breitner mail: mail@joachim-breitner.de | ICQ# 74513189 | GPG-Key: 4743206C JID: nomeata@joachim-breitner.de | http://www.joachim-breitner.de/ Debian Developer: nomeata@debian.org