[xmonad] darcs patch: Add windowRemover for make tabbed return just the focu...

Andrea Rossato mailing_list at istitutocolli.org
Fri Feb 1 16:21:19 EST 2008


On Fri, Feb 01, 2008 at 03:00:47PM -0600, Spencer Janssen wrote:
> I think this solution is *really* ugly.  Also, I don't think we can necessarily
> rely on the property that decorations windows are the only override-redirect
> windows in the windowset.

Sorry Spencer, 

but I deduce, from your words, that all my job has been base on
completely false assumptions, and probably we must have some serious
code review.

I'm not kidding, and I'm not ironic. I do really take into
consideration of just being plainly wrong on everything. You know I
have high respect for your knowledge.

1) 
handle (MapRequestEvent    {ev_window = w}) = withDisplay $ \dpy -> do
    wa <- io $ getWindowAttributes dpy w -- ignore override windows
    -- need to ignore mapping requests by managed windows not on the current workspace
    managed <- isClient w
    when (not (wa_override_redirect wa) && not managed) $ do manage w

2) a window with override_redirect *must* always pass true.

3) no modifier is allowed to change the stack set! they can *only*
manipulate the (window,rectangle) list to be returned in
Operations.windows. Modifier *DO NOT* manipulate the stack. Once
"restackWindows d vs" has being called, track of layouts/modifiers'
activity can be found only in the layout field of the workspace type.

If any of these three assumptions is false, we should probably
consider to revert immediately.

I'm serious, and I understand that we must provide a certain level of
code correctness.

Cheers,
Andrea


More information about the xmonad mailing list