From 5579c4ee23c4f4ca02a75e6f7f40b51e9f017117 Mon Sep 17 00:00:00 2001 From: Thierry Lorthiois Date: Tue, 19 Jan 2010 19:29:28 +0000 Subject: [PATCH] lower battery drawing : update to 10s and battery_hide config --- src/battery/battery.c | 23 +++++++++++++++++++++-- src/battery/battery.h | 1 + src/config.c | 7 +++++++ 3 files changed, 29 insertions(+), 2 deletions(-) diff --git a/src/battery/battery.c b/src/battery/battery.c index 8d64f82..d10c101 100644 --- a/src/battery/battery.c +++ b/src/battery/battery.c @@ -37,6 +37,7 @@ PangoFontDescription *bat1_font_desc=0; PangoFontDescription *bat2_font_desc=0; struct batstate battery_state; int battery_enabled; +int percentage_hide = 101; static timeout* battery_timeout=0; static char buf_bat_percentage[10]; @@ -54,8 +55,26 @@ void update_batterys(void* arg) { int i; update_battery(); - for (i=0 ; i < nb_panel ; i++) + for (i=0 ; i < nb_panel ; i++) { + if (battery_state.percentage >= percentage_hide) { + if (panel1[i].battery.area.on_screen == 1) { + panel1[i].battery.area.on_screen = 0; + // force resize on panel + panel1[i].area.resize = 1; + panel_refresh = 1; + } + continue; + } + else { + if (panel1[i].battery.area.on_screen == 0) { + panel1[i].battery.area.on_screen = 1; + // force resize on panel + panel1[i].area.resize = 1; + panel_refresh = 1; + } + } panel1[i].battery.area.resize = 1; + } } @@ -133,7 +152,7 @@ void init_battery() g_free(battery_dir); if (battery_enabled && battery_timeout==0) - battery_timeout = add_timeout(10, 5000, update_batterys, 0); + battery_timeout = add_timeout(10, 10000, update_batterys, 0); } diff --git a/src/battery/battery.h b/src/battery/battery.h index 0fcedb5..39f9b11 100644 --- a/src/battery/battery.h +++ b/src/battery/battery.h @@ -51,6 +51,7 @@ extern struct batstate battery_state; extern PangoFontDescription *bat1_font_desc; extern PangoFontDescription *bat2_font_desc; extern int battery_enabled; +extern int percentage_hide; extern int8_t battery_low_status; extern char *battery_low_cmd; diff --git a/src/config.c b/src/config.c index 9977574..c159a30 100644 --- a/src/config.c +++ b/src/config.c @@ -358,6 +358,13 @@ void add_entry (char *key, char *value) panel_config.battery.area.bg = &g_array_index(backgrounds, Background, id); #endif } + else if (strcmp (key, "battery_hide") == 0) { +#ifdef ENABLE_BATTERY + percentage_hide = atoi (value); + if (percentage_hide == 0) + percentage_hide = 101; +#endif + } /* Clock */ else if (strcmp (key, "time1_format") == 0) { -- 2.45.2