Re: [dwm] fgeom patch

From: yy <yiyu.jgl_AT_gmail.com>
Date: Mon, 14 Apr 2008 20:32:32 +0200

2008/4/14, yy <yiyu.jgl_AT_gmail.com>:
> 2008/4/14, Anselm R. Garbe <arg_AT_suckless.org>:
>
> > On Wed, Apr 09, 2008 at 07:41:53PM +0200, yy wrote:
> > > As discussed before, this is the patch with the floating geometry
> > > functionality. I removed some loc in restack, but I had to add more in
> > > other places to correctly manage mouse actions when in monocle layout
> >
> >
> > I like the restack() simplification.
> >
>
>
> I have noticed that it lets you to get rid of floating(), saving some
> loc. Have a look at the attached patch.
>
>
> >
> > > (isn't a bug the current possibility of moving and resizing windows
> > > while in monocle layout?).
> >
> >
> > I'd like to keep mouse manipulations dependend on
> > lt->isfloating, instead of performing a hardcoded floating
> > layout check.
> >
>
>
> Well, since I have completely removed the floating layout, it is done
> in base on lt->isfloating in the new patch.
>
>
> >
> > > Basically, the patch makes dwm to remember floating geometries when
> > > you change to tiled or monocle layout.
> > > I'm not sure about setting fx and fy on tileresize(), but note that if
> > > you don't do it you will need to add them in movemouse() and
> > > resizemouse() before togglefloating().
> >
> >
> > Hmm I don't think that tileresize is the right place for setting
> > fx, and fy. Instead fx/fy/fw/fh should be used depending on
> > lt->isfloating in resize and the layout itself, that's why I'd
> > consider doing the following in struct Client:
> >
> > typdef struct {
> > ...
> > int x[2], y[2], w[2], h[2];
> > ...
> > } Client;
> >
> > #define BOOLTOIDX(x) (x) ? 1 : 0
> >
> > And then in resize:
> >
> > c->x[BOOLTOIDX(lt->isfloating || c->isfloating)] = x;
> > ...
> >
> > etc.
> >
> > Kind regards,
> >
>
>
> I will think about it once you implement it in hg tip, this new
> version of the patch doesn't touch the client floating geometry in
> tileresize(), I think it works like expected, but I see the possible
> simplification with the BOOLTOIDX method. And you would have the
> possibility of having a #define REMEMBERFLOATS in config.h and then
> BOOLTOIDX(REMEMBERFLOATS && (lt->isfloating || c->isfloating)), so
> that this is configurable... (just rambling).
>
> slds,
>
>
> --
>

Sorry for the noise, but there were some little errors in the previous
patch. Now it only adds 2 loc (plus 2 from my previous patch, plus 3
layout examples in config.def.h, they should be commented).

-- 
- yiyus || JGL .

Received on Mon Apr 14 2008 - 20:32:42 UTC

This archive was generated by hypermail 2.2.0 : Sun Jul 13 2008 - 15:33:51 UTC