Raf Czlonka <rczlo...@gmail.com> writes:
> On Sat, Apr 03, 2021 at 05:50:06PM BST, Omar Polo wrote: >> Omar Polo <o...@omarpolo.com> writes: >> >> > Hello tech@, > > Hi Omar, > >> > The attached patch adds a last-group command for cwm. Admittedly, >> >> (typo: it's group-last! I mistyped that in the subject too, sorry) > > Given that 'group_*' and not '*_group' is used in the code, shouldn't > 'last_group' be renamed to 'group_last' for consistency? absolutely! > Regards, > > Raf > > [...] Thanks, Omar Polo Index: calmwm.h =================================================================== RCS file: /home/cvs/xenocara/app/cwm/calmwm.h,v retrieving revision 1.375 diff -u -p -r1.375 calmwm.h --- calmwm.h 16 Apr 2020 13:32:35 -0000 1.375 +++ calmwm.h 3 Apr 2021 17:35:05 -0000 @@ -214,6 +214,7 @@ struct screen_ctx { struct region_q regionq; struct group_q groupq; struct group_ctx *group_active; + int group_last; Colormap colormap; Visual *visual; struct { @@ -501,6 +502,7 @@ void kbfunc_client_toggle_group(void void kbfunc_client_movetogroup(void *, struct cargs *); void kbfunc_group_toggle(void *, struct cargs *); void kbfunc_group_only(void *, struct cargs *); +void kbfunc_group_last(void *, struct cargs *); void kbfunc_group_close(void *, struct cargs *); void kbfunc_group_cycle(void *, struct cargs *); void kbfunc_group_toggle_all(void *, struct cargs *); Index: conf.c =================================================================== RCS file: /home/cvs/xenocara/app/cwm/conf.c,v retrieving revision 1.252 diff -u -p -r1.252 conf.c --- conf.c 16 Apr 2020 13:32:35 -0000 1.252 +++ conf.c 26 Aug 2020 12:29:53 -0000 @@ -139,6 +139,7 @@ static const struct { { FUNC_SC(group-cycle, group_cycle, (CWM_CYCLE_FORWARD)) }, { FUNC_SC(group-rcycle, group_cycle, (CWM_CYCLE_REVERSE)) }, + { FUNC_SC(group-last, group_last, 0) }, { FUNC_SC(group-toggle-all, group_toggle_all, 0) }, { FUNC_SC(group-toggle-1, group_toggle, 1) }, { FUNC_SC(group-toggle-2, group_toggle, 2) }, Index: cwmrc.5 =================================================================== RCS file: /home/cvs/xenocara/app/cwm/cwmrc.5,v retrieving revision 1.76 diff -u -p -r1.76 cwmrc.5 --- cwmrc.5 16 Apr 2020 13:32:35 -0000 1.76 +++ cwmrc.5 3 Apr 2021 16:39:17 -0000 @@ -273,6 +273,8 @@ menu. Toggle visibility of group n, where n is 1-9. .It group-only-[n] Show only group n, where n is 1-9, hiding other groups. +.It group-last +Show only the last viewed group. .It group-close-[n] Close all windows in group n, where n is 1-9. .It group-toggle-all Index: group.c =================================================================== RCS file: /home/cvs/xenocara/app/cwm/group.c,v retrieving revision 1.137 diff -u -p -r1.137 group.c --- group.c 27 Feb 2020 14:56:39 -0000 1.137 +++ group.c 3 Apr 2021 17:35:05 -0000 @@ -215,6 +215,9 @@ group_only(struct screen_ctx *sc, int id { struct group_ctx *gc; + if (sc->group_active->num != idx) + sc->group_last = sc->group_active->num; + TAILQ_FOREACH(gc, &sc->groupq, entry) { if (gc->num == idx) group_show(gc); Index: kbfunc.c =================================================================== RCS file: /home/cvs/xenocara/app/cwm/kbfunc.c,v retrieving revision 1.170 diff -u -p -r1.170 kbfunc.c --- kbfunc.c 20 Mar 2020 18:50:08 -0000 1.170 +++ kbfunc.c 3 Apr 2021 17:35:04 -0000 @@ -479,6 +479,14 @@ kbfunc_group_only(void *ctx, struct carg } void +kbfunc_group_last(void *ctx, struct cargs *cargs) +{ + struct screen_ctx *sc = ctx; + + group_only(ctx, sc->group_last); +} + +void kbfunc_group_toggle(void *ctx, struct cargs *cargs) { group_toggle(ctx, cargs->flag); Index: screen.c =================================================================== RCS file: /home/cvs/xenocara/app/cwm/screen.c,v retrieving revision 1.97 diff -u -p -r1.97 screen.c --- screen.c 24 Mar 2020 14:47:29 -0000 1.97 +++ screen.c 3 Apr 2021 17:34:55 -0000 @@ -53,6 +53,7 @@ screen_init(int which) sc->visual = DefaultVisual(X_Dpy, sc->which); sc->cycling = 0; sc->hideall = 0; + sc->group_last = 1; conf_screen(sc);