darcs patch: Windows on multiple workspaces

Sat May 26 17:16:17 JST 2007 Rob

I'd like to emphasise that I don't have xinerama support and haven't been able to test how it works. I'd appreciate it if someone with xinerama could do that for me. I have however tested using the quickcheck properties included with this patch. But that's no substitute for actually seeing it work. It seems to work well for single screen setups in any case. Patch to MonadContrib supporting functions for actually doing the multiple workspace tagging should arrive on the list separately. On Sat, 2007-05-26 at 17:30 +0900, Robert Marlow wrote:
Sat May 26 17:16:17 JST 2007 Rob
* Windows on multiple workspaces Previously, it was a invariant that a window will never have duplicates in the stackset. This invariant has been removed and replaced with the invariant that a window will never have duplicates in a stack. It may have duplicates appear in other stacks. This makes it possible to have DWM style tagging.
Other than adjusting insertLeft and delete/deleteAll to allow for duplicates in the stackset, support must be made for xinerama. The xinerama support is designed as follows: 1. The current screen always has all windows showing. This ensures that focus (only meaningful on the current screen) will not need to be changed 2. non-current visible screens have all windows showing which are not already showing on windows to the screen's "left" (defined as screens with lower ordered identifiers).
This functionality has been placed in a new visibleOnScreen function which returns the windows visible on a screen given the above rules. The refresh and hide functions in Operations have been adjusted to use this new function to ensure windows are displayed sanely. _______________________________________________ Xmonad mailing list Xmonad@haskell.org http://www.haskell.org/mailman/listinfo/xmonad -- Robert Marlow

bobstopper:
I'd like to emphasise that I don't have xinerama support and haven't been able to test how it works. I'd appreciate it if someone with xinerama could do that for me.
Yes, Jason and Spencer have 2+ head setups now, so they'll be able to do some testing after release.
I have however tested using the quickcheck properties included with this patch. But that's no substitute for actually seeing it work. It seems to work well for single screen setups in any case.
Ah, missed those. Good.
Patch to MonadContrib supporting functions for actually doing the multiple workspace tagging should arrive on the list separately.
-- Don

bobstopper:
Sat May 26 17:16:17 JST 2007 Rob
* Windows on multiple workspaces Previously, it was a invariant that a window will never have duplicates in the stackset. This invariant has been removed and replaced with the invariant that a window will never have duplicates in a stack. It may have duplicates appear in other stacks. This makes it possible to have DWM style tagging.
Right.
Other than adjusting insertLeft and delete/deleteAll to allow for duplicates in the stackset, support must be made for xinerama. The xinerama support is designed as follows:
1. The current screen always has all windows showing. This ensures that focus (only meaningful on the current screen) will not need to be changed
Ok.
2. non-current visible screens have all windows showing which are not already showing on windows to the screen's "left" (defined as screens with lower ordered identifiers).
Ok. I see. That seems a reasonable behaviour.
This functionality has been placed in a new visibleOnScreen function which returns the windows visible on a screen given the above rules. The refresh and hide functions in Operations have been adjusted to use this new function to ensure windows are displayed sanely.
And QuickCheck properties for it too, please. Just a quick note: We're in feature freeze till 0.2 is tagged in a few days. Bug fixes and QC properties and docs only till then (we'd also accept any changes to contrib modules). So patches providing new features or changing the current behaviour won't be applied. After the release, we'll talk again about this, and a couple of other things on the list to do. -- Don

On 5/26/07, Robert Marlow
Other than adjusting insertLeft and delete/deleteAll to allow for duplicates in the stackset, support must be made for xinerama. The xinerama support is designed as follows: 1. The current screen always has all windows showing. This ensures that focus (only meaningful on the current screen) will not need to be changed 2. non-current visible screens have all windows showing which are not already showing on windows to the screen's "left" (defined as screens with lower ordered identifiers).
What exactly does "showing" represent in this definition? --dave -- David Glasser | glasser@mit.edu | http://www.davidglasser.net/
participants (3)
-
David Glasser
-
dons@cse.unsw.edu.au
-
Robert Marlow