Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37404299
en ru br
Репозитории ALT
S:0.96.0-alt1
5.1: 0.92.0-alt6
4.1: 0.92.0-alt2
4.0: 0.92.0-alt2
3.0: 0.91.0-alt1
+backports:0.92.0-alt0.M30.1
www.altlinux.org/Changes

Группа :: Графические оболочки/Window Maker
Пакет: WindowMaker

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: WindowMaker-0.92.0-sga-swpanel-customization.patch
Скачать


 src/WindowMaker.h |    2 ++
 src/cycling.c     |    7 +++++++
 src/defaults.c    |    6 ++++++
 src/switchpanel.c |    8 ++++++--
 4 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/src/WindowMaker.h b/src/WindowMaker.h
index e234478..2a2475e 100644
--- a/src/WindowMaker.h
+++ b/src/WindowMaker.h
@@ -365,6 +365,8 @@ typedef struct WPreferences {
 
     char windows_cycling;	       /* windoze cycling */
     char circ_raise;		       /* raise window after Alt-tabbing */
+    char show_miniaturized;	       /* show miniaturized windows in Alt-tabbing panel */
+    char show_hidden;		       /* show hidden       windows in Alt-tabbing panel */
 
     char ignore_focus_click;
 
diff --git a/src/cycling.c b/src/cycling.c
index 86bdb39..54ed570 100644
--- a/src/cycling.c
+++ b/src/cycling.c
@@ -107,6 +107,10 @@ StartWindozeCycle(WWindow *wwin, XEvent *event, Bool next)
     scr->flags.doing_alt_tab = 1;
 
     swpanel =  wInitSwitchPanel(scr, wwin, scr->current_workspace);
+    if (swpanel == NULL) {
+	    newFocused = NULL;
+	    goto exiting;
+    }
     oldFocused = wwin;
   
     if (swpanel) {
@@ -237,6 +241,9 @@ StartWindozeCycle(WWindow *wwin, XEvent *event, Bool next)
             break;
         }
     }
+
+exiting:
+
     if (keymap)
         XFreeModifiermap(keymap);
 
diff --git a/src/defaults.c b/src/defaults.c
index 22eb7ae..884db8b 100644
--- a/src/defaults.c
+++ b/src/defaults.c
@@ -419,6 +419,12 @@ WDefaultEntry optionList[] = {
     {"CirculateRaise",	"NO",			NULL,
     &wPreferences.circ_raise, 	getBool, 	NULL
     },
+    {"ShowMiniaturized","YES",			NULL,
+    &wPreferences.show_miniaturized, getBool, 	NULL
+    },
+    {"ShowHidden",	"YES",			NULL,
+    &wPreferences.show_hidden, getBool, 	NULL
+    },
     {"Superfluous",	"NO",			NULL,
     &wPreferences.superfluous, 	getBool, 	NULL
     },
diff --git a/src/switchpanel.c b/src/switchpanel.c
index 51298ce..b8b4bb1 100644
--- a/src/switchpanel.c
+++ b/src/switchpanel.c
@@ -409,7 +409,9 @@ static WMArray *makeWindowListArray(WScreen *scr, WWindow *curwin, int workspace
         for (wwin= curwin; wwin; wwin= wwin->prev) {
             if (((!fl && canReceiveFocus(wwin) > 0) || (fl && canReceiveFocus(wwin) < 0)) &&
                 (!WFLAGP(wwin, skip_window_list) || wwin->flags.internal_window) &&
-                (wwin->flags.mapped || include_unmapped)) {
+                (wwin->flags.mapped || include_unmapped) &&
+                (wPreferences.show_miniaturized || !wwin->flags.miniaturized ) && 
+                (wPreferences.show_hidden || !wwin->flags.hidden)) {
                 WMAddToArray(windows, wwin);
             }
         }
@@ -421,7 +423,9 @@ static WMArray *makeWindowListArray(WScreen *scr, WWindow *curwin, int workspace
         for (wwin= curwin; wwin && wwin != curwin; wwin= wwin->prev) {
             if (((!fl && canReceiveFocus(wwin) > 0) || (fl && canReceiveFocus(wwin) < 0)) &&
                 (!WFLAGP(wwin, skip_window_list) || wwin->flags.internal_window) &&
-                (wwin->flags.mapped || include_unmapped)) {
+                (wwin->flags.mapped || include_unmapped) &&
+                (wPreferences.show_miniaturized || !wwin->flags.miniaturized ) && 
+                (wPreferences.show_hidden || !wwin->flags.hidden)) {
                 WMAddToArray(windows, wwin);
             }
         }
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin