Re: [dev] dwm and -geometry

From: Anselm R Garbe <anselm_AT_garbe.us>
Date: Tue, 13 Oct 2009 17:52:16 +0100

2009/10/4 Eckehard Berns <ecki-scklss_AT_ecki.to>:
>> But I would be more happy if I could decide which windows would
>> remain floating when I turn to the tabbed mode.
>
> Although I don't think this is a good way to use dwm, the following
> patch to tip should make dwm put windows with user specified geometry
> into floating mode.
>
> diff -r 2bcd25cce4ab dwm.c
> --- a/dwm.c     Sun Sep 27 20:20:14 2009 +0100
> +++ b/dwm.c     Sun Oct 04 00:51:27 2009 +0200
> @@ -86,7 +86,7 @@
>        int basew, baseh, incw, inch, maxw, maxh, minw, minh;
>        int bw, oldbw;
>        unsigned int tags;
> -       Bool isfixed, isfloating, isurgent;
> +       Bool isfixed, isfloating, isurgent, hasusergeom;
>        Client *next;
>        Client *snext;
>        Monitor *mon;
> @@ -1138,7 +1138,7 @@
>        XSelectInput(dpy, w, EnterWindowMask|FocusChangeMask|PropertyChangeMask|StructureNotifyMask);
>        grabbuttons(c, False);
>        if(!c->isfloating)
> -               c->isfloating = trans != None || c->isfixed;
> +               c->isfloating = trans != None || c->isfixed || c->hasusergeom;
>        if(c->isfloating)
>                XRaiseWindow(dpy, c->win);
>        attach(c);
> @@ -1878,6 +1878,7 @@
>                c->maxa = c->mina = 0.0;
>        c->isfixed = (c->maxw && c->minw && c->maxh && c->minh
>                     && c->maxw == c->minw && c->maxh == c->minh);
> +       c->hasusergeom = (size.flags & USPosition) || (size.flags & USSize);
>  }
>

I think that we might initialise c->isfloating with (size.flags &
USPosition) || (size.flags & USSize); but without introducing
c->hasusergeom. Does anyone don't like the idea?

Kind regards,
Anselm
Received on Tue Oct 13 2009 - 16:52:16 UTC

This archive was generated by hypermail 2.2.0 : Tue Oct 13 2009 - 17:00:02 UTC