taskbar_hide_different_desktop
This commit is contained in:
@@ -624,7 +624,7 @@ void set_task_state(Task *task, TaskState state)
|
||||
}
|
||||
}
|
||||
|
||||
if (task->current_state != state || hide_task_diff_monitor) {
|
||||
if (task->current_state != state || hide_task_diff_monitor || hide_task_diff_desktop) {
|
||||
GPtrArray *task_buttons = get_task_buttons(task->win);
|
||||
if (task_buttons) {
|
||||
for (int i = 0; i < task_buttons->len; ++i) {
|
||||
@@ -648,6 +648,10 @@ void set_task_state(Task *task, TaskState state)
|
||||
hide = TRUE;
|
||||
}
|
||||
}
|
||||
if (hide_task_diff_desktop) {
|
||||
if (taskbar->desktop != server.desktop)
|
||||
hide = TRUE;
|
||||
}
|
||||
if (get_window_monitor(task->win) != ((Panel *)task->area.panel)->monitor &&
|
||||
(hide_task_diff_monitor || num_panels > 1)) {
|
||||
hide = TRUE;
|
||||
|
||||
@@ -39,6 +39,7 @@ Task *active_task;
|
||||
Task *task_drag;
|
||||
gboolean taskbar_enabled;
|
||||
gboolean taskbar_distribute_size;
|
||||
gboolean hide_task_diff_desktop;
|
||||
gboolean hide_inactive_tasks;
|
||||
gboolean hide_task_diff_monitor;
|
||||
gboolean hide_taskbar_if_empty;
|
||||
@@ -74,6 +75,7 @@ void default_taskbar()
|
||||
urgent_list = NULL;
|
||||
taskbar_enabled = FALSE;
|
||||
taskbar_distribute_size = FALSE;
|
||||
hide_task_diff_desktop = FALSE;
|
||||
hide_inactive_tasks = FALSE;
|
||||
hide_task_diff_monitor = FALSE;
|
||||
hide_taskbar_if_empty = FALSE;
|
||||
@@ -535,6 +537,15 @@ void set_taskbar_state(Taskbar *taskbar, TaskbarState state)
|
||||
for (; l; l = l->next)
|
||||
schedule_redraw((Area *)l->data);
|
||||
}
|
||||
if (taskbar_mode == MULTI_DESKTOP && hide_task_diff_desktop) {
|
||||
GList *l = taskbar->area.children;
|
||||
if (taskbarname_enabled)
|
||||
l = l->next;
|
||||
for (; l; l = l->next) {
|
||||
Task *task = (Task *)l->data;
|
||||
set_task_state(task, task->current_state);
|
||||
}
|
||||
}
|
||||
}
|
||||
schedule_panel_redraw();
|
||||
}
|
||||
|
||||
@@ -49,6 +49,7 @@ typedef struct GlobalTaskbar {
|
||||
|
||||
extern gboolean taskbar_enabled;
|
||||
extern gboolean taskbar_distribute_size;
|
||||
extern gboolean hide_task_diff_desktop;
|
||||
extern gboolean hide_inactive_tasks;
|
||||
extern gboolean hide_task_diff_monitor;
|
||||
extern gboolean hide_taskbar_if_empty;
|
||||
|
||||
Reference in New Issue
Block a user