darcs patch: PositionStore utility to store informati... (and 1 more)

Hi!
This is now the patch bundle containing Bluetile's floating layout. It requires Daniel's
extstate patch (which is not included in this bundle, see his recent e-mail for a patch).
The first patch adds Util.PositionStore, which holds position and size information about
a window. Having this global place to store this information, makes the floating layout much
more robust and enables many features.
Note that this is still missing the enhanced decoration code to be fully functional in a
dual-head setup. In such a setup, you can drag windows from one screen to another which means
you can drag them from one workspace to another. To handle these cases correctly, the decoration
code needs some tweaks, which I will be working on submitting next. (Note that X.L.SimplestFloat
also has these problems, which is why it really isn't very usable in a dual-head setup.)
But apart from that, it should be fairly useful on its own.
One other thing that is still missing, is a way to remove information about windows from the
PositionStore, once a window is closed. I will look into that as well.
Regards!
Jan
Sat Oct 31 22:13:51 CET 2009 Jan Vornberger

On Sat, Oct 31, 2009 at 11:02:25PM +0100, Jan Vornberger wrote:
One other thing that is still missing, is a way to remove information about windows from the PositionStore, once a window is closed. I will look into that as well.
One possible way to do this would be to check periodically in the logHook although that would come with a certain performance overhead(Probably negligible though, since the number of windows involved wouldn't be that large and it would only occur on focus changes or similar events).

On Sat, Oct 31, 2009 at 11:11:50PM +0100, Daniel Schoepe wrote:
On Sat, Oct 31, 2009 at 11:02:25PM +0100, Jan Vornberger wrote:
One other thing that is still missing, is a way to remove information about windows from the PositionStore, once a window is closed. I will look into that as well.
One possible way to do this would be to check periodically in the logHook although that would come with a certain performance overhead(Probably negligible though, since the number of windows involved wouldn't be that large and it would only occur on focus changes or similar events).
My thoughts as well. In another thread [1], Adam mentioned that it might be possible to listen for DestroyWindowEvent using handleEventHook. So I'll try that as well, which would be a better solution, I think. Jan [1] http://thread.gmane.org/gmane.comp.lang.haskell.xmonad/8400
participants (3)
-
Daniel Schoepe
-
Jan Vornberger
-
Jan Vornberger