all repos — tint2 @ 33645f9b5aaa97f7bbc84fd5242da1ddb730744b

fork of the tint2 desktop panel for my custom setup - only minimized windows across all desktops for the taskbar

Battery: refactoring
o9000 mrovi9000@gmail.com
commit

33645f9b5aaa97f7bbc84fd5242da1ddb730744b

parent

8df91bd475b20d7f25bcb0251bfd163d72bba2c7

M src/battery/battery.csrc/battery/battery.c

@@ -33,7 +33,7 @@ #include "common.h"

PangoFontDescription *bat1_font_desc; PangoFontDescription *bat2_font_desc; -struct batstate battery_state; +struct BatteryState battery_state; gboolean battery_enabled; gboolean battery_tooltip_enabled; int percentage_hide;

@@ -43,7 +43,7 @@ static char buf_bat_percentage[10];

static char buf_bat_time[20]; int8_t battery_low_status; -unsigned char battery_low_cmd_sent; +gboolean battery_low_cmd_sent; char *ac_connected_cmd; char *ac_disconnected_cmd; char *battery_low_cmd;

@@ -52,14 +52,14 @@ char *battery_mclick_command;

char *battery_rclick_command; char *battery_uwheel_command; char *battery_dwheel_command; -int battery_found; +gboolean battery_found; void update_battery_tick(void *arg) { if (!battery_enabled) return; - int old_found = battery_found; + gboolean old_found = battery_found; int old_percentage = battery_state.percentage; gboolean old_ac_connected = battery_state.ac_connected; int16_t old_hours = battery_state.time.hours;

@@ -106,7 +106,7 @@ hide(&panels[i].battery.area);

panel_refresh = TRUE; } } else { - if (panels[i].battery.area.on_screen == 0) { + if (!panels[i].battery.area.on_screen) { show(&panels[i].battery.area); panel_refresh = TRUE; }

@@ -125,11 +125,11 @@ }

void default_battery() { - battery_enabled = 0; - battery_tooltip_enabled = 1; - battery_found = 0; + battery_enabled = FALSE; + battery_tooltip_enabled = TRUE; + battery_found = FALSE; percentage_hide = 101; - battery_low_cmd_sent = 0; + battery_low_cmd_sent = FALSE; battery_timeout = NULL; bat1_font_desc = NULL; bat2_font_desc = NULL;

@@ -172,7 +172,7 @@ free(ac_disconnected_cmd);

ac_disconnected_cmd = NULL; stop_timeout(battery_timeout); battery_timeout = NULL; - battery_found = 0; + battery_found = FALSE; battery_os_free(); }

@@ -239,7 +239,7 @@ /* reset */

battery_state.state = BATTERY_UNKNOWN; battery_state.percentage = 0; battery_state.ac_connected = FALSE; - batstate_set_time(&battery_state, 0); + battery_state_set_time(&battery_state, 0); err = battery_os_update(&battery_state);
M src/battery/battery.hsrc/battery/battery.h

@@ -26,22 +26,27 @@ int bat1_posy;

int bat2_posy; } Battery; -enum chargestate { BATTERY_UNKNOWN, BATTERY_CHARGING, BATTERY_DISCHARGING, BATTERY_FULL }; +typedef enum ChargeState { + BATTERY_UNKNOWN = 0, + BATTERY_CHARGING, + BATTERY_DISCHARGING, + BATTERY_FULL, +} ChargeState; -typedef struct battime { +typedef struct BatteryTime { int16_t hours; int8_t minutes; int8_t seconds; -} battime; +} BatteryTime; -typedef struct batstate { +typedef struct BatteryState { int percentage; - struct battime time; - enum chargestate state; + BatteryTime time; + ChargeState state; gboolean ac_connected; -} batstate; +} BatteryState; -extern struct batstate battery_state; +extern struct BatteryState battery_state; extern PangoFontDescription *bat1_font_desc; extern PangoFontDescription *bat2_font_desc; extern gboolean battery_enabled;

@@ -60,7 +65,7 @@ extern char *battery_rclick_command;

extern char *battery_uwheel_command; extern char *battery_dwheel_command; -static inline gchar *chargestate2str(enum chargestate state) +static inline gchar *chargestate2str(ChargeState state) { switch (state) { case BATTERY_CHARGING:

@@ -75,7 +80,7 @@ return "Unknown";

}; } -static inline void batstate_set_time(struct batstate *state, int seconds) +static inline void battery_state_set_time(BatteryState *state, int seconds) { state->time.hours = seconds / 3600; seconds -= 3600 * state->time.hours;

@@ -106,7 +111,7 @@

/* operating system specific functions */ gboolean battery_os_init(); void battery_os_free(); -int battery_os_update(struct batstate *state); +int battery_os_update(BatteryState *state); char *battery_os_tooltip(); #endif
M src/battery/dummy.csrc/battery/dummy.c

@@ -33,7 +33,7 @@ {

return; } -int battery_os_update(struct batstate *state) +int battery_os_update(BatteryState *state) { return -1; }
M src/battery/freebsd.csrc/battery/freebsd.c

@@ -39,7 +39,7 @@ {

return; } -int battery_os_update(struct batstate *state) +int battery_os_update(BatteryState *state) { int sysctl_out = 0; size_t len = sizeof(sysctl_out);

@@ -63,7 +63,7 @@ err = -1;

} if (sysctlbyname("hw.acpi.battery.time", &sysctl_out, &len, NULL, 0) == 0) - batstate_set_time(state, sysctl_out * 60); + battery_state_set_time(state, sysctl_out * 60); else err = -1;
M src/battery/linux.csrc/battery/linux.c

@@ -34,6 +34,7 @@

struct psy_battery { /* generic properties */ gchar *name; + /* monotonic time, in microseconds */ gint64 timestamp; /* sysfs files */ gchar *path_present;

@@ -49,7 +50,7 @@ gboolean present;

gint energy_now; gint energy_full; gint power_now; - enum chargestate status; + ChargeState status; }; struct psy_mains {

@@ -382,7 +383,7 @@

return TRUE; } -int battery_os_update(struct batstate *state) +int battery_os_update(BatteryState *state) { GList *l;

@@ -430,7 +431,7 @@ seconds = 3600 * (total_energy_full - total_energy_now) / total_power_now;

else if (state->state == BATTERY_DISCHARGING) seconds = 3600 * total_energy_now / total_power_now; } - batstate_set_time(state, seconds); + battery_state_set_time(state, seconds); /* calculate percentage */ state->percentage = energy_to_percent(total_energy_now, total_energy_full);
M src/battery/openbsd.csrc/battery/openbsd.c

@@ -51,7 +51,7 @@ warn("cannot close /dev/apm");

apm_fd = -1; } -int battery_os_update(struct batstate *state) +int battery_os_update(BatteryState *state) { struct apm_power_info info;

@@ -73,7 +73,7 @@ state->state = BATTERY_FULL;

state->percentage = info.battery_life; if (info.minutes_left != -1) - batstate_set_time(state, info.minutes_left * 60); + battery_state_set_time(state, info.minutes_left * 60); state->ac_connected = info.ac_state == APM_AC_ON; } else {