On Fri, Nov 06, 2015 at 12:47:08PM -0500, Okan Demirmen wrote: > For 2 reasons, I'd like to change M1 (mouse-button1) menu from > displaying only hidden windows to showing all windows. > - this is the only menu that differs between mouse and keyboard > invocations (kbd one shows all) > - allows using this menu to switch to unhidden/showing windows > that happen to be on another screen (but still visable) > > Of course, search_print_client() will anotate each client's state, such > as done in other menus. > > Minimal diff below, leaving out the renaming and related stuff so it's > not referenced only as 'unhide'. > > Objections? > > Thanks, > Okan > > Index: cwm.1 > =================================================================== > RCS file: /home/open/cvs/xenocara/app/cwm/cwm.1,v > retrieving revision 1.53 > diff -u -p -r1.53 cwm.1 > --- cwm.1 21 Aug 2015 16:52:37 -0000 1.53 > +++ cwm.1 6 Nov 2015 17:39:33 -0000 > @@ -224,8 +224,8 @@ Menus are recalled by clicking the mouse > .Pp > .Bl -tag -width Ds -offset indent -compact > .It Ic M1 > -Show list of currently hidden windows. > -Selecting an item will unhide that window. > +Show the list of windows. > +Selecting an item will unhide, if nessecary, and warp to that window. > .It Ic M2 > Show list of currently defined groups. > Selecting an item will hide/unhide that group. > Index: mousefunc.c > =================================================================== > RCS file: /home/open/cvs/xenocara/app/cwm/mousefunc.c,v > retrieving revision 1.98 > diff -u -p -r1.98 mousefunc.c > --- mousefunc.c 21 Aug 2015 16:14:39 -0000 1.98 > +++ mousefunc.c 6 Nov 2015 17:21:08 -0000 > @@ -207,15 +207,14 @@ mousefunc_menu_unhide(struct client_ctx > > TAILQ_INIT(&menuq); > TAILQ_FOREACH(cc, &sc->clientq, entry) { > - if (cc->flags & CLIENT_HIDDEN) { > - menuq_add(&menuq, cc, NULL); > - } > + menuq_add(&menuq, cc, NULL); > } > > if ((mi = menu_filter(sc, &menuq, NULL, NULL, CWM_MENU_LIST, > NULL, search_print_client)) != NULL) { > cc = (struct client_ctx *)mi->ctx; > - client_unhide(cc); > + if (cc->flags & CLIENT_HIDDEN) > + client_unhide(cc); > if (old_cc != NULL) > client_ptrsave(old_cc); > client_ptrwarp(cc); >
At least for me I wasn't previously using the M-/ C-A combo very often and instead only used M1 to see a listen of windows I previously hidden using CM-Return. This will change my usage patterns for cwm, I'll have to pay attention to window list flags (& !) that I was previously ignoring. I also don't normally use the groups either, but I suppose I may be in the minority.. so if this helps most users.. -Bryan.