X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Ftint.c;h=47bce1b64e93b194e62ce8e1e25f82a08e2543ae;hb=515a2f9710c5cc0488bb07b3daa6a1a5c17d1bee;hp=22f67da01d76b7ea5cc4aff2914d976ed646fa06;hpb=1aa4d290a90cfc14416f43b205523a6bf401d973;p=chaz%2Ftint2 diff --git a/src/tint.c b/src/tint.c index 22f67da..47bce1b 100644 --- a/src/tint.c +++ b/src/tint.c @@ -156,7 +156,6 @@ void init_X11() void cleanup() { - cleanup_timeout(); cleanup_systray(); cleanup_tooltip(); cleanup_clock(); @@ -174,6 +173,7 @@ void cleanup() imlib_context_disconnect_display(); cleanup_server(); + cleanup_timeout(); if (server.dsp) XCloseDisplay(server.dsp); } @@ -513,17 +513,8 @@ void event_property_notify (XEvent *e) server.desktop = server_get_current_desktop (); for (i=0 ; i < nb_panel ; i++) { Panel *panel = &panel1[i]; - if (panel_mode == MULTI_DESKTOP && panel->g_taskbar.bg != panel->g_taskbar.bg_active) { - // redraw both taskbar - if (server.nb_desktop > old_desktop) { - // can happen if last desktop is deleted and we've been on the last desktop - panel->taskbar[old_desktop].area.bg = panel->g_taskbar.bg; - panel->taskbar[old_desktop].area.resize = 1; - } - panel->taskbar[server.desktop].area.bg = panel->g_taskbar.bg_active; - panel->taskbar[server.desktop].area.resize = 1; - panel_refresh = 1; - } + set_taskbar_state(&panel->taskbar[old_desktop], TASKBAR_NORMAL); + set_taskbar_state(&panel->taskbar[server.desktop], TASKBAR_ACTIVE); // check ALLDESKTOP task => resize taskbar Taskbar *tskbar; Task *tsk; @@ -547,8 +538,6 @@ void event_property_notify (XEvent *e) tskbar->area.resize = 1; } } - if (panel_mode != MULTI_DESKTOP) - visible_taskbar(panel); } } // Window list @@ -593,12 +582,13 @@ void event_property_notify (XEvent *e) // Window title changed if (at == server.atom._NET_WM_VISIBLE_NAME || at == server.atom._NET_WM_NAME || at == server.atom.WM_NAME) { - get_title(tsk); - if (g_tooltip.mapped && (g_tooltip.area == (Area*)tsk)) { - tooltip_copy_text((Area*)tsk); - tooltip_update(); + if (get_title(tsk)) { + if (g_tooltip.mapped && (g_tooltip.area == (Area*)tsk)) { + tooltip_copy_text((Area*)tsk); + tooltip_update(); + } + panel_refresh = 1; } - panel_refresh = 1; } // Demand attention else if (at == server.atom._NET_WM_STATE) {