On Sat 22.Aug'09 at 12:24:58 +0200, Nicolas Bonifas wrote:
> Carlos, I think that your new code to avoid code duplication and to
> handle the escape key is great!

Thank you, it is very much appreciated!

But I must say that it was your patch which provided the initial
momentum to start doing this, so thank you too :-)

> I have another (almost unrelated) suggestion: when all windows are  
> minimized, the switch panel cursor is initially on the second window in  
> the list. With this patch it will be on the first window.

Indeed, it makes more sense this way. I tested it and I liked
the result.

I applied (a slightly modified version of) your patch to my
git repo at

http://repo.or.cz/w/wmaker-crm.git

and kept you as the Author: and used the Date: of your email.
See if you liked the changelog etc.

Please note that there are other patches affecting src/cycling.c
which I didn't send to the list, because they no longer apply
to the mercurial repo.

In particular, Daniel Déchelotte reported to me off-list that
there was an issue with the escape handling patch that it
no longer meant that pressing ESC was like never entering
the swpanel, in a special case. I fixed it yesterday:

http://repo.or.cz/w/wmaker-crm.git?a=commit;h=f79379c0906c9aa0f40802d2b2da03c6924717cc

Besides that I cleaned up the code in there too, so that it is more
readable (to me) because it is no longer too nested with many if()'s
etc.

Regards,
Carlos

PS: My repo contains all the fixes for bugs which were posted to
the list that I know of. That is the Window Maker I am using 
right now, so I care deeply about having those bugs fixed.


> --- src/cycling.c.old   2009-08-22 12:19:37.000000000 +0200
> +++ src/cycling.c       2009-08-22 12:21:33.000000000 +0200
> @@ -120,9 +120,12 @@
>         oldFocused = wwin;
>
>         if (swpanel) {
> -               newFocused = wSwitchPanelSelectNext(swpanel, !next);
> -               if (newFocused)
> -                       oldFocused = change_focus_and_raise(newFocused,  
> oldFocused, swpanel, scr);
> +            if (wwin->flags.mapped)
> +                newFocused = wSwitchPanelSelectNext(swpanel, !next);
> +            else
> +                newFocused = wSwitchPanelSelectFirst(swpanel, False);
> +           if (newFocused)
> +               oldFocused = change_focus_and_raise(newFocused,  
> oldFocused, swpanel, scr);
>         } else {
>                 if (wwin->frame->workspace == scr->current_workspace)
>                         newFocused = wwin;
>
>
> Regards,
> Nicolas


-- 
To unsubscribe, send mail to [email protected].

Reply via email to