From c3fb0b1412112927a38b1eaca6a3b3a7a02c0088 Mon Sep 17 00:00:00 2001 From: Andreas Fink Date: Thu, 17 Dec 2009 18:25:51 +0000 Subject: [PATCH] *fix* tooltip fixed *fix* send battery low command if below the value, not exactly the value --- src/battery/battery.c | 12 +++++++++--- src/tooltip/tooltip.c | 5 ++++- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/battery/battery.c b/src/battery/battery.c index 5c1f6cc..b1f1913 100644 --- a/src/battery/battery.c +++ b/src/battery/battery.c @@ -43,6 +43,7 @@ static char buf_bat_time[20]; int8_t battery_low_status; char *battery_low_cmd=0; +unsigned char battery_low_cmd_send=0; char *path_energy_now=0; char *path_energy_full=0; char *path_current_now=0; @@ -266,10 +267,15 @@ void update_battery() { if(energy_full > 0) new_percentage = (energy_now*100)/energy_full; - if(battery_low_status != 0 && battery_low_status == new_percentage && battery_state.percentage > new_percentage) { - //printf("battery low, executing: %s\n", battery_low_cmd); - if (battery_low_cmd) system(battery_low_cmd); + if(battery_low_status > new_percentage && battery_state.state == BATTERY_DISCHARGING && !battery_low_cmd_send) { + printf("battery low, executing: %s\n", battery_low_cmd); + if (battery_low_cmd) + system(battery_low_cmd); + battery_low_cmd_send = 1; } + if(battery_low_status < new_percentage && battery_state.state == BATTERY_CHARGING && battery_low_cmd_send) { + battery_low_cmd_send = 0; + } battery_state.percentage = new_percentage; diff --git a/src/tooltip/tooltip.c b/src/tooltip/tooltip.c index fe88662..ba1acfe 100644 --- a/src/tooltip/tooltip.c +++ b/src/tooltip/tooltip.c @@ -108,7 +108,10 @@ void tooltip_trigger_show(Area* area, Panel* p, int x_root, int y_root) void tooltip_show() { - Area* area = click_area(g_tooltip.panel, x, y); + int mx, my; + Window w; + XTranslateCoordinates( server.dsp, server.root_win, g_tooltip.panel->main_win, x, y, &mx, &my, &w); + Area* area = click_area(g_tooltip.panel, mx, my); stop_timeouts(); if (!g_tooltip.mapped && area->_get_tooltip_text) { tooltip_copy_text(area); -- 2.45.2