fixed multi_desktop switching git-svn-id: http://tint2.googlecode.com/svn/trunk@582 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
3 files changed,
14 insertions(+),
8 deletions(-)
M
src/launcher/launcher.c
→
src/launcher/launcher.c
@@ -783,7 +783,6 @@ return strdup(icon_name);
else return NULL; } - //printf("nom %s, taille %d, path %s\n", launcherIcon->icon_name, launcherIcon->icon_size, new_icon_path); GSList *basenames = NULL; char *file_name = g_build_filename(g_get_home_dir(), ".icons", NULL);
M
src/taskbar/taskbar.c
→
src/taskbar/taskbar.c
@@ -303,11 +303,20 @@ void set_taskbar_state(Taskbar *tskbar, int state)
{ tskbar->area.bg = panel1[0].g_taskbar.background[state]; tskbar->area.pix = tskbar->state_pix[state]; - if (tskbar->state_pix[state] == 0) { - tskbar->area.redraw = 1; - GSList *l; - for (l = tskbar->area.list ; l ; l = l->next) - ((Area*)l->data)->redraw = 1; + if (panel_mode != MULTI_DESKTOP) { + if (state == TASKBAR_NORMAL) + tskbar->area.on_screen = 0; + else + tskbar->area.on_screen = 1; + } + if (tskbar->area.on_screen == 1) { + if (tskbar->state_pix[state] == 0) + tskbar->area.redraw = 1; + if (panel_mode == MULTI_DESKTOP && panel1[0].g_taskbar.background[TASKBAR_NORMAL] != panel1[0].g_taskbar.background[TASKBAR_ACTIVE]) { + GSList *l; + for (l = tskbar->area.list ; l ; l = l->next) + set_task_redraw(l->data); + } } panel_refresh = 1; }
M
src/tint.c
→
src/tint.c
@@ -538,8 +538,6 @@ tsk->area.on_screen = 1;
tskbar->area.resize = 1; } } - if (panel_mode != MULTI_DESKTOP) - visible_taskbar(panel); } } // Window list