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);