X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Ftint.c;h=afb83cba12bd01b297ec5882b9c2c022d92a0cc9;hb=6f9e73f8f0b88d1258e99397d9ca8b1afca5085e;hp=7b6b3c5dd06b05d0b1341bf9f4ce515e70da6b5f;hpb=bd3c2db488b1662fffd7cb5e6226613df2f7dec7;p=chaz%2Ftint2 diff --git a/src/tint.c b/src/tint.c index 7b6b3c5..afb83cb 100644 --- a/src/tint.c +++ b/src/tint.c @@ -87,12 +87,12 @@ void init () void cleanup() { cleanup_panel(); - cleanup_systray(); if (time1_font_desc) pango_font_description_free(time1_font_desc); if (time2_font_desc) pango_font_description_free(time2_font_desc); if (time1_format) g_free(time1_format); if (time2_format) g_free(time2_format); + if (battery_low_cmd) g_free(battery_low_cmd); if (server.monitor) free(server.monitor); XFreeGC(server.dsp, server.gc); @@ -137,7 +137,7 @@ void event_button_press (XEvent *e) GSList *l0; Taskbar *tskbar; int x = e->xbutton.x; - int y = e->xbutton.y; + //int y = e->xbutton.y; // unused for (l0 = panel->area.list; l0 ; l0 = l0->next) { tskbar = l0->data; if (!tskbar->area.on_screen) continue; @@ -169,7 +169,7 @@ void event_button_release (XEvent *e) int action = TOGGLE_ICONIFY; int x = e->xbutton.x; - int y = e->xbutton.y; + //int y = e->xbutton.y; // unused switch (e->xbutton.button) { case 2: action = mouse_middle; @@ -467,15 +467,19 @@ void event_timer() if (abs(stv.tv_sec - time_clock.tv_sec) < time_precision) return; - // update clock - time_clock.tv_sec = stv.tv_sec; - time_clock.tv_sec -= time_clock.tv_sec % time_precision; + // update battery + update_battery(&battery_state); + + // update clock + time_clock.tv_sec = stv.tv_sec; + time_clock.tv_sec -= time_clock.tv_sec % time_precision; int i; for (i=0 ; i < nb_panel ; i++) { panel1[i].clock.area.resize = 1; + panel1[i].battery.area.resize = 1; } - panel_refresh = 1; + panel_refresh = 1; } @@ -549,15 +553,17 @@ load_config: case UnmapNotify: case DestroyNotify: + if (!systray.area.on_screen) break; for (it = systray.list_icons; it; it = g_slist_next(it)) { if (((TrayWindow*)it->data)->id == e.xany.window) { - icon_remove((TrayWindow*)it->data); + remove_icon((TrayWindow*)it->data); break; } } break; case ClientMessage: + if (!systray.area.on_screen) break; //printf("ClientMessage\n"); if (e.xclient.message_type == server.atom._NET_SYSTEM_TRAY_OPCODE && e.xclient.format == 32 && e.xclient.window == net_sel_win) { net_message(&e.xclient);