X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Ftint.c;h=794aefbefee0ca97efb5ff8f8bfd1ac2a74345c8;hb=cb9b34cd2126963c3650feeb48e036fb256e9660;hp=b975fecf50a987dde7dc7af203efd3b806aaa630;hpb=275fa7c8678c39a1c1f7437de12aac0144f61a85;p=chaz%2Ftint2 diff --git a/src/tint.c b/src/tint.c index b975fec..794aefb 100644 --- a/src/tint.c +++ b/src/tint.c @@ -3,7 +3,7 @@ * Tint2 panel * * Copyright (C) 2007 PÃ¥l Staurland (staura@gmail.com) -* Modified (C) 2008 thierry lorthiois (lorthiois@bbsoft.fr) +* Modified (C) 2008 thierry lorthiois (lorthiois@bbsoft.fr) from Omega distribution * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License version 2 @@ -42,6 +42,7 @@ #include "panel.h" #include "tooltip.h" #include "timer.h" +#include "xsettings-client.h" void signal_handler(int sig) @@ -135,7 +136,7 @@ void init_X11() setlocale (LC_ALL, ""); // config file use '.' as decimal separator setlocale(LC_NUMERIC, "POSIX"); - + // load default icon gchar *path; const gchar * const *data_dirs; @@ -538,8 +539,6 @@ void event_property_notify (XEvent *e) tskbar->area.resize = 1; } } - if (panel_mode != MULTI_DESKTOP) - visible_taskbar(panel); } } // Window list @@ -584,12 +583,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) { @@ -804,6 +804,9 @@ start: if (select(x11_fd+1, &fdset, 0, 0, timeout) > 0) { while (XPending (server.dsp)) { XNextEvent(server.dsp, &e); + if (xsettings_client != NULL) { + xsettings_client_process_event(xsettings_client, &e); + } panel = get_panel(e.xany.window); if (panel && panel_autohide) {