X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fbattery%2Fbattery.c;h=04c993486b8740c7938cbb401ac194a7580f783e;hb=5ba60d0bf84eeb901ac0eaeb376e00f116b75c28;hp=46eb539a650fc1c66c7feb8c40a90575f35e7655;hpb=8d750383484f27560c11b627cd52caea0c2d937d;p=chaz%2Ftint2 diff --git a/src/battery/battery.c b/src/battery/battery.c index 46eb539..04c9934 100644 --- a/src/battery/battery.c +++ b/src/battery/battery.c @@ -79,14 +79,14 @@ void update_batterys(void* arg) 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; - panel1[i].area.resize = 1; + hide(&panel1[i].battery.area); panel_refresh = 1; } } else { if (panel1[i].battery.area.on_screen == 0) { - panel1[i].battery.area.on_screen = 1; + show(&panel1[i].battery.area); + panel_refresh = 1; } } if (panel1[i].battery.area.on_screen == 1) { @@ -194,8 +194,14 @@ void init_battery() } g_free(path2); } - if (path_energy_now && path_energy_full) { + + path_current_now = g_build_filename(battery_dir, "power_now", NULL); + if (!g_file_test (path_current_now, G_FILE_TEST_EXISTS)) { + g_free(path_current_now); path_current_now = g_build_filename(battery_dir, "current_now", NULL); + } + + if (path_energy_now && path_energy_full) { path_status = g_build_filename(battery_dir, "status", NULL); // check file @@ -237,9 +243,8 @@ void init_battery_panel(void *p) battery->area._draw_foreground = draw_battery; battery->area.size_mode = SIZE_BY_CONTENT; battery->area._resize = resize_battery; - battery->area.resize = 1; - battery->area.redraw = 1; battery->area.on_screen = 1; + battery->area.resize = 1; } @@ -455,21 +460,20 @@ int resize_battery(void *obj) if (new_size > battery->area.width || new_size < (battery->area.width-2)) { // we try to limit the number of resize battery->area.width = new_size; - battery->bat1_posy = ((battery->area.height - bat_percentage_height) / 2) - ((bat_time_height_ink + 2) / 2); - battery->bat2_posy = battery->bat1_posy + bat_percentage_height + 2 - (bat_percentage_height - bat_percentage_height_ink)/2 - (bat_time_height - bat_time_height_ink)/2; + battery->bat1_posy = (battery->area.height - bat_percentage_height - bat_time_height)/2; + battery->bat2_posy = battery->bat1_posy + bat_percentage_height; ret = 1; } } else { int new_size = bat_percentage_height + bat_time_height + (2 * (battery->area.paddingxlr + battery->area.bg->border.width)); - if (new_size != battery->area.height) { + if (new_size > battery->area.height || new_size < (battery->area.height-2)) { battery->area.height = new_size; - battery->bat1_posy = ((battery->area.height - bat_percentage_height) / 2) - ((bat_time_height_ink + 2) / 2); - battery->bat2_posy = battery->bat1_posy + bat_percentage_height + 2 - (bat_percentage_height - bat_percentage_height_ink)/2 - (bat_time_height - bat_time_height_ink)/2; + battery->bat1_posy = (battery->area.height - bat_percentage_height - bat_time_height - 2)/2; + battery->bat2_posy = battery->bat1_posy + bat_percentage_height + 2; ret = 1; } } - return ret; }