In continuing to find how to get the current "ScreenId", I see that in Core.hs, we have:

data XState = XState                                                                    
    { windowset    :: !WindowSet           -- ^ workspace list    

and ...

type WindowSet   = StackSet  WorkspaceId (Layout Window) Window ScreenId ScreenDetail


So the question is ... 1, can I grab the windowset var? and if so, how do I read the ScreenId off from it

On Mon, Feb 16, 2009 at 4:59 PM, lowly coder <lowlycoder@huoyanjinjing.com> wrote:
Do be more specific, I'm trying to read off the current: "ScreenId"


On Mon, Feb 16, 2009 at 4:45 PM, lowly coder <lowlycoder@huoyanjinjing.com> wrote:
in my .xmonad/xmonad.hs , I have:

         ++                                                                             
         [((m .|. mod4Mask, key), screenWorkspace sc >>= flip whenJust (windows . f))   
              | (key, sc) <- zip [xK_a, xK_f] [0..] , (f, m) <- [(W.view, 0)]]          
         ++                                                                             
         [((m .|. mod4Mask, key), screenWorkspace sc >>= flip whenJust (windows . f))   
              | (key, sc) <- zip [xK_s, xK_d] [0..] , (f, m) <- [(W.shift, 0)]] 

now, instead of this, I'd perfer to have something where

xK_f alternates between workspace 0 & 1
I'd also like to make xK_d to send current window to other workspace

(this requires that I somehow know what my current workspace is -- is there a function to return this?)