From 76819eba39c10b637a1f61cd70a93e6008239140 Mon Sep 17 00:00:00 2001 From: Tom Gilbert Date: Mon, 28 Feb 2000 18:08:25 +0000 Subject: [PATCH] Mon Feb 28 18:04:33 GMT 2000 (gilbertt) Did what I should have in the first place: consolidated all those window list options into one winop: "Skip Window Lists", and one remember option. The actions are still defined to do stuff individually, but users have no need of that sort of granularity. Much nicer now :) SVN revision: 2147 --- src/ChangeLog | 12 +++ src/E.h | 12 ++- src/actions.c | 39 ++++++++- src/file.c | 1 + src/fx.c | 1 + src/handlers.c | 2 + src/icccm.c | 1 + src/snaps.c | 140 +++++++++------------------------ src/themes/configs/definitions | 1 + src/themes/configs/menus.cfg | 10 +-- 10 files changed, 100 insertions(+), 119 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index a26914c0..dce91528 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -4307,3 +4307,15 @@ Sun Feb 27 15:54:11 GMT 2000 remove a debugging printf + +------------------------------------------------------------------------------- + +Mon Feb 28 18:04:33 GMT 2000 +(gilbertt) + +Did what I should have in the first place: consolidated all those window +list options into one winop: "Skip Window Lists", and one remember option. + +The actions are still defined to do stuff individually, but users have no +need of that sort of granularity. Much nicer now :) + diff --git a/src/E.h b/src/E.h index d9310b45..0ec4c589 100644 --- a/src/E.h +++ b/src/E.h @@ -487,8 +487,9 @@ int Esnprintf(va_alist); #define ACTION_SKIPTASK 99 #define ACTION_SKIPWINLIST 100 #define ACTION_NEVERFOCUS 101 +#define ACTION_SKIPLISTS 102 /* false number excluding the above list */ -#define ACTION_NUMBEROF 102 +#define ACTION_NUMBEROF 103 #define MODE_NONE 0 #define MODE_MOVE 1 @@ -1395,9 +1396,8 @@ struct _snapshot int used; char use_skipwinlist; char skipwinlist; - char use_skiptask; + char use_skiplists; char skiptask; - char use_skipfocus; char skipfocus; char use_neverfocus; char neverfocus; @@ -2080,6 +2080,7 @@ int doSkipTask(void *params); int doSkipWinList(void *params); int doSkipFocus(void *params); int doNeverFocus(void *params); +int doSkipLists(void *params); int doStickNoGroup(void *params); int doInplaceDesktop(void *params); int doDragButtonStart(void *params); @@ -2762,10 +2763,7 @@ void SnapshotEwinIcon(EWin * ewin); void SnapshotEwinShade(EWin * ewin); void SnapshotEwinCmd(EWin * ewin); -/* added by tom */ -void SnapshotEwinSkipFocus(EWin * ewin); -void SnapshotEwinSkipTask(EWin * ewin); -void SnapshotEwinSkipWinList(EWin * ewin); +void SnapshotEwinSkipLists(EWin * ewin); void SnapshotEwinNeverFocus(EWin * ewin); void SnapshotEwinGroups(EWin * ewin, char onoff); diff --git a/src/actions.c b/src/actions.c index 9344d181..97c5cd6e 100644 --- a/src/actions.c +++ b/src/actions.c @@ -1181,11 +1181,11 @@ doMoveEnd(void *params) if (gwins[i]->floating) MoveEwinToDesktopAt(gwins[i], d, gwins[i]->x - (desks.desk[d].x - - desks.desk[gwins[i]-> - desktop].x), + desks. + desk[gwins[i]->desktop].x), gwins[i]->y - (desks.desk[d].y - - desks.desk[gwins[i]-> - desktop].y)); + desks. + desk[gwins[i]->desktop].y)); else MoveEwinToDesktopAt(gwins[i], d, gwins[i]->x, gwins[i]->y); gwins[i]->floating = 0; @@ -1750,6 +1750,36 @@ doStickNoGroup(void *params) return result; } +int +doSkipLists(void *params) +{ + EWin *ewin; + char skip; + + EDBUG(6, "doSkipLists"); + + if (InZoom()) + EDBUG_RETURN(0); + if (params) + ewin = FindItem(NULL, atoi((char *)params), LIST_FINDBY_ID, + LIST_TYPE_EWIN); + else + ewin = GetFocusEwin(); + if (!ewin) + EDBUG_RETURN(0); + + skip = ewin->skipfocus; + + ewin->skiptask = !(skip); + ewin->skipwinlist = !(skip); + ewin->skipfocus = !(skip); + params = NULL; + GNOME_SetHint(ewin); + RememberImportantInfoForEwin(ewin); + + EDBUG_RETURN(0); +} + int doSkipTask(void *params) { @@ -4036,6 +4066,7 @@ initFunctionArray(void) ActionFunctions[ACTION_SKIPTASK] = (int (*)(void *))(doSkipTask); ActionFunctions[ACTION_SKIPWINLIST] = (int (*)(void *))(doSkipWinList); ActionFunctions[ACTION_NEVERFOCUS] = (int (*)(void *))(doNeverFocus); + ActionFunctions[ACTION_SKIPLISTS] = (int (*)(void *))(doSkipLists); EDBUG_RETURN(0); } diff --git a/src/file.c b/src/file.c index ffa81b1a..d228a10c 100644 --- a/src/file.c +++ b/src/file.c @@ -56,6 +56,7 @@ Etmp(char *s) n_calls++; EDBUG_RETURN_; } + void md(char *s) { diff --git a/src/fx.c b/src/fx.c index 78267c81..315ba7df 100644 --- a/src/fx.c +++ b/src/fx.c @@ -967,4 +967,5 @@ FX_ImageSpinner_Pause(void) paused = 0; } } + /****************************************************************************/ diff --git a/src/handlers.c b/src/handlers.c index d9e43d80..9690eb63 100644 --- a/src/handlers.c +++ b/src/handlers.c @@ -139,6 +139,7 @@ HandleSigAlrm(int num) num = 0; EDBUG_RETURN_; } + void HandleSigTerm(int num) { @@ -147,6 +148,7 @@ HandleSigTerm(int num) doExit("error"); EDBUG_RETURN_; } + void HandleSigUsr1(int num) { diff --git a/src/icccm.c b/src/icccm.c index 4dfd7dfa..d448051d 100644 --- a/src/icccm.c +++ b/src/icccm.c @@ -946,6 +946,7 @@ ICCCM_GetInfo(EWin * ewin, Atom atom_change) } EDBUG_RETURN_; } + void ICCCM_GetHints(EWin * ewin, Atom atom_change) { diff --git a/src/snaps.c b/src/snaps.c index 39ccf4b1..152c6b3c 100644 --- a/src/snaps.c +++ b/src/snaps.c @@ -121,11 +121,9 @@ NewSnapshot(char *name) sn->groups = NULL; sn->num_groups = 0; sn->used = 0; - sn->use_skiptask = 0; + sn->use_skiplists = 0; sn->skiptask = 0; - sn->use_skipfocus = 0; sn->skipfocus = 0; - sn->use_skipwinlist = 0; sn->skipwinlist = 0; sn->use_neverfocus = 0; sn->neverfocus = 0; @@ -167,11 +165,9 @@ ClearSnapshot(Snapshot * sn) Efree(sn->groups); sn->num_groups = 0; sn->used = 0; - sn->use_skiptask = 0; + sn->use_skiplists = 0; sn->skiptask = 0; - sn->use_skipfocus = 0; sn->skipfocus = 0; - sn->use_skipwinlist = 0; sn->skipwinlist = 0; sn->use_neverfocus = 0; sn->neverfocus = 0; @@ -197,9 +193,7 @@ static char tmp_snap_icon; static char tmp_snap_shade; static char tmp_snap_cmd; static char tmp_snap_group; -static char tmp_snap_skipfocus; -static char tmp_snap_skiptask; -static char tmp_snap_skipwinlist; +static char tmp_snap_skiplists; static char tmp_snap_neverfocus; static void CB_ApplySnap(int val, void *data); @@ -242,12 +236,8 @@ CB_ApplySnap(int val, void *data) SnapshotEwinCmd(ewin); if (tmp_snap_group) SnapshotEwinGroups(ewin, tmp_snap_group); - if (tmp_snap_skipfocus) - SnapshotEwinSkipFocus(ewin); - if (tmp_snap_skiptask) - SnapshotEwinSkipTask(ewin); - if (tmp_snap_skipwinlist) - SnapshotEwinSkipWinList(ewin); + if (tmp_snap_skiplists) + SnapshotEwinSkipLists(ewin); if (tmp_snap_neverfocus) SnapshotEwinNeverFocus(ewin); SaveSnapInfo(); @@ -308,9 +298,7 @@ SnapshotEwinDialog(EWin * ewin) tmp_snap_shade = 0; tmp_snap_cmd = 0; tmp_snap_group = 0; - tmp_snap_skipfocus = 0; - tmp_snap_skiptask = 0; - tmp_snap_skipwinlist = 0; + tmp_snap_skiplists = 0; tmp_snap_neverfocus = 0; if (sn) { @@ -334,12 +322,8 @@ SnapshotEwinDialog(EWin * ewin) tmp_snap_cmd = 1; if (sn->groups) tmp_snap_group = 1; - if (sn->use_skipfocus) - tmp_snap_skipfocus = 1; - if (sn->use_skiptask) - tmp_snap_skiptask = 1; - if (sn->use_skipwinlist) - tmp_snap_skipwinlist = 1; + if (sn->use_skiplists) + tmp_snap_skiplists = 1; if (sn->use_neverfocus) tmp_snap_neverfocus = 1; } @@ -494,29 +478,14 @@ SnapshotEwinDialog(EWin * ewin) DialogItemCheckButtonSetState(di, tmp_snap_layer); DialogItemCheckButtonSetPtr(di, &tmp_snap_layer); - di = DialogAddItem(table, DITEM_CHECKBUTTON); - DialogItemSetColSpan(di, 2); - DialogItemSetPadding(di, 2, 2, 2, 2); - DialogItemSetFill(di, 1, 0); - DialogItemCheckButtonSetText(di, _("Focus Skip")); - DialogItemCheckButtonSetState(di, tmp_snap_skipfocus); - DialogItemCheckButtonSetPtr(di, &tmp_snap_skipfocus); - - di = DialogAddItem(table, DITEM_CHECKBUTTON); - DialogItemSetColSpan(di, 2); - DialogItemSetPadding(di, 2, 2, 2, 2); - DialogItemSetFill(di, 1, 0); - DialogItemCheckButtonSetText(di, _("TaskList Skip")); - DialogItemCheckButtonSetState(di, tmp_snap_skiptask); - DialogItemCheckButtonSetPtr(di, &tmp_snap_skiptask); - di = DialogAddItem(table, DITEM_CHECKBUTTON); DialogItemSetColSpan(di, 2); DialogItemSetPadding(di, 2, 2, 2, 2); DialogItemSetFill(di, 1, 0); DialogItemCheckButtonSetText(di, _("Window List Skip")); - DialogItemCheckButtonSetState(di, tmp_snap_skipwinlist); - DialogItemCheckButtonSetPtr(di, &tmp_snap_skipwinlist); + DialogItemCheckButtonSetState(di, tmp_snap_skiplists); + DialogItemCheckButtonSetPtr(di, &tmp_snap_skiplists); + #if 0 di = DialogAddItem(table, DITEM_CHECKBUTTON); DialogItemSetColSpan(di, 2); @@ -676,39 +645,17 @@ SnapshotEwinSticky(EWin * ewin) } void -SnapshotEwinSkipFocus(EWin * ewin) +SnapshotEwinSkipLists(EWin * ewin) { Snapshot *sn; sn = GetSnapshot(ewin); if (!sn) return; - sn->use_skipfocus = 1; - sn->skipfocus = ewin->skipfocus; -} - -void -SnapshotEwinSkipTask(EWin * ewin) -{ - Snapshot *sn; - - sn = GetSnapshot(ewin); - if (!sn) - return; - sn->use_skiptask = 1; + sn->use_skiplists = 1; sn->skiptask = ewin->skiptask; -} - -void -SnapshotEwinSkipWinList(EWin * ewin) -{ - Snapshot *sn; - - sn = GetSnapshot(ewin); - if (!sn) - return; - sn->use_skipwinlist = 1; sn->skipwinlist = ewin->skipwinlist; + sn->skipfocus = ewin->skipfocus; } void @@ -853,9 +800,7 @@ SnapshotEwinAll(EWin * ewin) SnapshotEwinShade(ewin); SnapshotEwinCmd(ewin); SnapshotEwinGroups(ewin, ewin->num_groups); - SnapshotEwinSkipFocus(ewin); - SnapshotEwinSkipTask(ewin); - SnapshotEwinSkipWinList(ewin); + SnapshotEwinSkipLists(ewin); SnapshotEwinNeverFocus(ewin); } @@ -937,16 +882,14 @@ SaveSnapInfo(void) fprintf(f, "LAYER: %i\n", sn->layer); if (sn->use_sticky) fprintf(f, "STICKY: %i\n", sn->sticky); - /* added by tom */ - if (sn->use_skipfocus) - fprintf(f, "SKIPFOCUS: %i\n", sn->skipfocus); - if (sn->use_skiptask) - fprintf(f, "SKIPTASK: %i\n", sn->skiptask); - if (sn->use_skipwinlist) - fprintf(f, "SKIPWINLIST: %i\n", sn->skipwinlist); + if (sn->use_skiplists) + { + fprintf(f, "SKIPTASK: %i\n", sn->skiptask); + fprintf(f, "SKIPWINLIST: %i\n", sn->skipwinlist); + fprintf(f, "SKIPFOCUS: %i\n", sn->skipfocus); + } if (sn->use_neverfocus) fprintf(f, "NEVERFOCUS: %i\n", sn->neverfocus); - /***/ if (sn->use_shade) fprintf(f, "SHADE: %i\n", sn->shade); if (sn->border_name) @@ -1119,19 +1062,19 @@ LoadSnapInfo(void) /* added by tom */ else if (!strcmp(s, "SKIPFOCUS")) { - sn->use_skipfocus = 1; + sn->use_skiplists = 1; word(buf, 2, s); sn->skipfocus = atoi(s); } else if (!strcmp(s, "SKIPTASK")) { - sn->use_skiptask = 1; + sn->use_skiplists = 1; word(buf, 2, s); sn->skiptask = atoi(s); } else if (!strcmp(s, "SKIPWINLIST")) { - sn->use_skipwinlist = 1; + sn->use_skiplists = 1; word(buf, 2, s); sn->skipwinlist = atoi(s); } @@ -1225,16 +1168,14 @@ MatchEwinToSnapInfo(EWin * ewin) ewin->layer = sn->layer; if (sn->use_sticky) ewin->sticky = sn->sticky; - /* added by tom */ - if (sn->use_skipfocus) - ewin->skipfocus = sn->skipfocus; - if (sn->use_skiptask) - ewin->skiptask = sn->skiptask; - if (sn->use_skipwinlist) - ewin->skipwinlist = sn->skipwinlist; + if (sn->use_skiplists) + { + ewin->skipfocus = sn->skipfocus; + ewin->skiptask = sn->skiptask; + ewin->skipwinlist = sn->skipwinlist; + } if (sn->use_neverfocus) ewin->neverfocus = sn->neverfocus; - /***/ if (sn->use_shade) ewin->shaded = sn->shade; if (sn->iclass_name) @@ -1391,13 +1332,12 @@ MatchEwinToSnapInfoAfter(EWin * ewin) else MakeWindowUnSticky(ewin); } - /* added by tom */ - if (sn->use_skipfocus) - ewin->skipfocus = sn->skipfocus; - if (sn->use_skiptask) - ewin->skiptask = sn->skiptask; - if (sn->use_skipwinlist) - ewin->skipwinlist = sn->skipwinlist; + if (sn->use_skiplists) + { + ewin->skipfocus = sn->skipfocus; + ewin->skiptask = sn->skiptask; + ewin->skipwinlist = sn->skipwinlist; + } if (sn->use_neverfocus) ewin->neverfocus = sn->neverfocus; /***/ @@ -1460,9 +1400,7 @@ RememberImportantInfoForEwin(EWin * ewin) SnapshotEwinSticky(ewin); SnapshotEwinShade(ewin); SnapshotEwinGroups(ewin, ewin->num_groups); - SnapshotEwinSkipFocus(ewin); - SnapshotEwinSkipTask(ewin); - SnapshotEwinSkipWinList(ewin); + SnapshotEwinSkipLists(ewin); SnapshotEwinNeverFocus(ewin); SaveSnapInfo(); } @@ -1489,9 +1427,7 @@ RememberImportantInfoForEwins(EWin * ewin) SnapshotEwinSticky(gwins[i]); SnapshotEwinShade(gwins[i]); SnapshotEwinGroups(gwins[i], gwins[i]->num_groups); - SnapshotEwinSkipFocus(gwins[i]); - SnapshotEwinSkipTask(gwins[i]); - SnapshotEwinSkipWinList(gwins[i]); + SnapshotEwinSkipLists(gwins[i]); SnapshotEwinNeverFocus(gwins[i]); SaveSnapInfo(); } diff --git a/src/themes/configs/definitions b/src/themes/configs/definitions index f941e2b2..dee2bd55 100644 --- a/src/themes/configs/definitions +++ b/src/themes/configs/definitions @@ -330,6 +330,7 @@ #define __A_SKIPTASK 99 #define __A_SKIPWINLIST 100 #define __A_NEVERFOCUS 101 +#define __A_SKIPLISTS 102 #define __MODIFIER_KEY 101 #define __TYPE 102 diff --git a/src/themes/configs/menus.cfg b/src/themes/configs/menus.cfg index fb769944..811125a2 100644 --- a/src/themes/configs/menus.cfg +++ b/src/themes/configs/menus.cfg @@ -171,16 +171,14 @@ ADD_MENU_TEXT_ITEM("Raise", __A_RAISE, "") ADD_MENU_TEXT_ITEM("Lower", __A_LOWER, "") ADD_MENU_TEXT_ITEM("Shade/Unshade", __A_SHADE, "") ADD_MENU_TEXT_ITEM("Stick/Unstick", __A_STICK, "") -ADD_MENU_TEXT_ITEM("Toggle Skip Focus", __A_SKIPFOCUS, "") -ADD_MENU_TEXT_ITEM("Toggle Skip Tasklist", __A_SKIPTASK, "") -ADD_MENU_TEXT_ITEM("Toggle Skip Winlist", __A_SKIPWINLIST,"") -/* ADD_MENU_TEXT_ITEM("Toggle Never Focus", __A_NEVERFOCUS ,"") */ +ADD_MENU_TEXT_ITEM("Toggle Skip Window Lists", __A_SKIPLISTS, "") +/* ADD_MENU_TEXT_ITEM("Toggle Never Focus", __A_NEVERFOCUS ,"") */ ADD_MENU_TEXT_ITEM("Remember...", __A_SNAPSHOT, "dialog") -ADD_MENU_SUBMENU_TEXT_ITEM("Window Groups", "WINOPS_GROUP") +ADD_MENU_SUBMENU_TEXT_ITEM("Window Groups", "WINOPS_GROUP") ADD_MENU_SUBMENU_TEXT_ITEM("Window Size", "WINOPS_SIZE") ADD_MENU_SUBMENU_TEXT_ITEM("Set Stacking", "WINOPS_LAYER") ADD_MENU_SUBMENU_TEXT_ITEM("Set Border Style", "WINOPS_BORDERS") -/*ADD_MENU_SUBMENU_TEXT_ITEM("Remember State", "WINOPS_SNAP")*/ +/*ADD_MENU_SUBMENU_TEXT_ITEM("Remember State", "WINOPS_SNAP")*/ END_MENU /* Also available macros: