Репозитории ALT
S: | 3.4.2-alt1 |
5.1: | 1.2.38pre1-alt1 |
4.1: | 1.2.35-alt2.1 |
4.0: | 1.2.32-alt2.1 |
3.0: | 1.2.23-alt1 |
+backports: | 1.2.30-alt1.M30.1 |
Группа :: Графические оболочки/Icewm
Пакет: icewm
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: icewm-alt-tray.patch
Скачать
Скачать
icewm/src/default.h | 2 ++
icewm/src/icetray.cc | 2 --
icewm/src/wmmgr.cc | 4 ++++
icewm/src/wmswitch.cc | 8 +++++++-
4 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/icewm/src/default.h b/icewm/src/default.h
index c6af98f..b0a86d5 100644
--- a/icewm/src/default.h
+++ b/icewm/src/default.h
@@ -51,6 +51,7 @@ XIV(int, taskBarButtonWidthDivisor, 3)
#ifdef CONFIG_TRAY
XIV(bool, taskBarShowTray, true)
XIV(bool, trayShowAllWindows, true)
+XIV(bool, quickSwitchToTray, true)
#endif
XIV(bool, taskBarShowTransientWindows, true)
XIV(bool, taskBarShowAllWindows, false)
@@ -275,6 +276,7 @@ cfoption icewm_preferences[] = {
#ifdef CONFIG_TRAY
OBV("TaskBarShowTray", &taskBarShowTray, "Show windows in the tray"),
OBV("TrayShowAllWindows", &trayShowAllWindows, "Show windows from all workspaces on tray"),
+ OBV("QuickSwitchToTray", &quickSwitchToTray, "Alt+Tab to windows in the tray"),
#endif
OBV("TaskBarShowTransientWindows", &taskBarShowTransientWindows, "Show transient (dialogs, ...) windows on task bar"),
OBV("TaskBarShowAllWindows", &taskBarShowAllWindows, "Show windows from all workspaces on task bar"),
diff --git a/icewm/src/icetray.cc b/icewm/src/icetray.cc
index 68acee0..f5da357 100644
--- a/icewm/src/icetray.cc
+++ b/icewm/src/icetray.cc
@@ -105,8 +105,6 @@ void SysTrayApp::loadConfig() {
#ifdef CONFIG_TASKBAR
#ifndef NO_CONFIGURE
{
- clrDefaultTaskBar="rgb:C0/C0/C0";
- trayDrawBevel=false;
cfoption theme_prefs[] = {
OSV("Theme", &themeName, "Theme name"),
OK0()
diff --git a/icewm/src/wmmgr.cc b/icewm/src/wmmgr.cc
index ef2b6e8..d6b69ce 100644
--- a/icewm/src/wmmgr.cc
+++ b/icewm/src/wmmgr.cc
@@ -1679,6 +1679,10 @@ YFrameWindow *YWindowManager::getLastFocus(bool skipSticky, long workspace) {
continue;
if (w->isHidden())
continue;
+#ifdef CONFIG_TRAY
+ if (w->getTrayOption() != WinTrayIgnore)
+ continue;
+#endif
if (!w->visibleOn(workspace))
continue;
if (w->avoidFocus() || pass == 2)
diff --git a/icewm/src/wmswitch.cc b/icewm/src/wmswitch.cc
index dafdd5b..7742b36 100644
--- a/icewm/src/wmswitch.cc
+++ b/icewm/src/wmswitch.cc
@@ -437,7 +437,7 @@ int SwitchWindow::GetZListWorkspace(YFrameWindow **list, int max,
bool workspaceOnly, int workspace)
{
int count = 0;
- for (int pass = 0; pass <= 5; pass++) {
+ for (int pass = 0; pass <= 6; pass++) {
YFrameWindow *w = fRoot->lastFocusFrame();
while (w) {
@@ -474,6 +474,12 @@ int SwitchWindow::GetZListWorkspace(YFrameWindow **list, int max,
if (pass == 4)
if (quickSwitchToHidden)
list[count++] = w;
+#ifdef CONFIG_TRAY
+ } else if (w->getTrayOption() != WinTrayIgnore) {
+ if (pass == 6)
+ if (quickSwitchToTray)
+ list[count++] = w;
+#endif
} else if (w->isMinimized()) {
if (pass == 3)
if (quickSwitchToMinimized)