[Xmonad] darcs patch: add decorations infrastructure

David Roundy droundy at darcs.net
Sat Jun 9 20:20:49 EDT 2007

On Sat, Jun 09, 2007 at 05:54:58PM -0500, Spencer Janssen wrote:
> On Sat, 09 Jun 2007 12:27:00 -0700
> David Roundy <droundy at darcs.net> wrote:
> > Hi all,
> > 
> > Here's some infrastructure to allow layouts to define window
> > decorations such as tabs or title bars.  I'm mostly sending it in to
> > get comments. I soon hope to have a crude tabbed layout using this.
> > 
> > David
> > 
> > Sat Jun  9 12:23:49 PDT 2007  David Roundy <droundy at darcs.net>
> >   * add decorations infrastructure
> I think we should leverage the existing layout/message system as much
> as possible here.  Proposed modifications:
>  - instance Message XEvent
>  - dispatch unhandled XEvents to layouts
>  - add another message type: data ViewMsg = View | Hide -- send this
> message to layouts on workspace change
>  - put modifyLayout in the X monad

This does sound like a better approach.

> This should give us enough flexibility to do decorations inside layouts
> without polluting the core with decoration handling.

That still doesn't give us any way to delete decorations when they are no
longer needed.  At a minimum we'd also need to send an event/message when
we want to switch layouts.  The user could always do this in his/her config
file, but it'd be nicer for layout writers to not put this burden on their
users, and to be able to rely on *always* getting notified when they are no
longer in control of the screen (and thus need to clean up anything they've
stuck on it).
David Roundy

More information about the Xmonad mailing list