On Mon, Jan 19, 2009 at 9:24 AM, Karl Hasselström
<kha-xmonad@hemma.treskal.com> wrote:
I want the workspace to be divided vertically into two areas. Each
area should show just one window at a time. Pressing Alt-Tab (or
something) should cycle through, in the currently focused half of the
screen, all windows except the one that's visible in the other area.
The idea being that visible but non-focused windows should stay
visible and non-focused.
For example, assume the workspace has five windows, A through E, with
C and E currently visible. Alt-Tabbing when the focus is on the left
half of the workspace should cycle through A, B, C, and D; if the
right half is focused, we should cycle through A, B, D, and E.
So far as I know, no, there are no modules providing everything you need. As Jeremy pointed out TwoPane is very close. You inspired me to at least try to fill in the missing bits, since I've been using TwoPane more on laptop. Attached is an xmonad.hs with some functions to cycle all the unfocused windows toward or away from the master window.
The nextUnfocused/prevUnfocused functions should work on any layout afaik, although with focusFollowsMouse = True they can be a bit strange. You need to keep the mouse over the 'stable' window while cycling unfocused, or focus jumps to the window the mouse is over and you rapidly scramble your windows. This is not much of an issue with TwoPane, but for other layouts not so nice.
Maybe someone more knowledgable can point out a better way or how to prevent this focus changing.
regards,
Wirt