This is an automated email from the git hooks/post-receive script.
git pushed a commit to branch master
in repository enlightenment.
View the commit online.
commit 4d8d0ce453e8ab97a7a2e44620387f5f1a4d12ba
Author: Carsten Haitzler <ras...@rasterman.com>
AuthorDate: Tue Dec 10 10:24:22 2024 +0000
battery - move poll to fixed every 10 sec
---
src/modules/battery/batget.c | 115 ++-----------------------------------
src/modules/battery/e_mod_config.c | 20 ++-----
src/modules/battery/e_mod_main.c | 8 +--
src/modules/battery/e_mod_main.h | 3 +-
src/modules/battery/e_mod_sysctl.c | 13 +----
src/modules/battery/e_mod_udev.c | 11 +---
6 files changed, 18 insertions(+), 152 deletions(-)
diff --git a/src/modules/battery/batget.c b/src/modules/battery/batget.c
index f36ae7fce..d4ae107e5 100644
--- a/src/modules/battery/batget.c
+++ b/src/modules/battery/batget.c
@@ -31,8 +31,7 @@
static void init(void);
static Eina_Bool poll_cb(void *data);
-static int poll_interval = 512;
-static Ecore_Poller *poller = NULL;
+static Ecore_Timer *timer = NULL;
static int mode = CHECK_NONE;
@@ -233,11 +232,6 @@ darwin_check(void)
/***---***/
/* new linux power class api to get power info - brand new and this code
* may have bugs, but it is a good attempt to get it right */
-#if 0
-static Eina_Bool linux_sys_class_power_supply_cb_event_fd_active(void *data,
- Ecore_Fd_Handler *fd_handler);
-static void linux_sys_class_power_supply_check(void);
-#endif
static void linux_sys_class_power_supply_init(void);
typedef struct _Sys_Class_Power_Supply_Uevent Sys_Class_Power_Supply_Uevent;
@@ -264,90 +258,6 @@ struct _Sys_Class_Power_Supply_Uevent
static Eina_List *events = NULL;
-#if 0
-static Ecore_Timer *sys_class_delay_check = NULL;
-
-static Eina_Bool
-linux_sys_class_power_supply_cb_delay_check(void *data)
-{
- linux_sys_class_power_supply_init();
- poll_cb(NULL);
- sys_class_delay_check = NULL;
- return ECORE_CALLBACK_CANCEL;
-}
-
-static Ecore_Timer *re_init_timer = NULL;
-
-static Eina_Bool
-linux_sys_class_power_supply_cb_re_init(void *data)
-{
- Sys_Class_Power_Supply_Uevent *sysev;
-
- if (events)
- {
- EINA_LIST_FREE(events, sysev)
- {
-// if (sysev->fd_handler)
-// ecore_main_fd_handler_del(sysev->fd_handler);
-// if (sysev->fd >= 0) close(sysev->fd);
- free(sysev->name);
- free(sysev);
- }
- }
- linux_sys_class_power_supply_init();
- re_init_timer = NULL;
- return ECORE_CALLBACK_CANCEL;
-}
-
-static Eina_Bool
-linux_sys_class_power_supply_cb_event_fd_active(void *data,
- Ecore_Fd_Handler *fd_handler)
-{
- Sys_Class_Power_Supply_Uevent *sysev;
-
- sysev = data;
- if (ecore_main_fd_handler_active_get(fd_handler, ECORE_FD_READ))
- {
- int lost = 0;
- for (;; )
- {
- char buf[1024];
- int num;
-
- if ((num = read(sysev->fd, buf, sizeof(buf))) < 1)
- {
- lost = ((errno == EIO) ||
- (errno == EBADF) ||
- (errno == EPIPE) ||
- (errno == EINVAL) ||
- (errno == ENOSPC) ||
- (errno == ENODEV));
- if (num <= 0) break;
- }
- }
- if (lost)
- {
- events = eina_list_remove(events, sysev);
-
-// if (sysev->fd_handler)
-// ecore_main_fd_handler_del(sysev->fd_handler);
-// if (sysev->fd >= 0) close(sysev->fd);
- free(sysev->name);
- free(sysev);
-
- if (re_init_timer) ecore_timer_del(re_init_timer);
- re_init_timer = ecore_timer_loop_add(1.0, linux_sys_class_power_supply_cb_re_init, NULL);
- }
- else
- {
- if (sys_class_delay_check) ecore_timer_del(sys_class_delay_check);
- sys_class_delay_check = ecore_timer_loop_add(0.2, linux_sys_class_power_supply_cb_delay_check, NULL);
- }
- }
- return ECORE_CALLBACK_CANCEL;
-}
-
-#endif
static void
linux_sys_class_power_supply_sysev_init(Sys_Class_Power_Supply_Uevent *sysev)
{
@@ -477,10 +387,8 @@ linux_sys_class_power_supply_init(void)
{
Eina_List *bats;
char *name;
-// char buf[4096];
bats = ecore_file_ls("/sys/class/power_supply/");
-// bats = ecore_file_ls("./TST");
if (bats)
{
events = NULL;
@@ -497,14 +405,6 @@ linux_sys_class_power_supply_init(void)
sysev = (Sys_Class_Power_Supply_Uevent *)calloc(1, sizeof(Sys_Class_Power_Supply_Uevent));
sysev->name = name;
-// snprintf(buf, sizeof(buf), "/sys/class/power_supply/%s/uevent", name);
-// sysev->fd = open(buf, O_RDONLY);
-// if (sysev->fd >= 0)
-// sysev->fd_handler = ecore_main_fd_handler_add(sysev->fd,
-// ECORE_FD_READ,
-// linux_sys_class_power_supply_cb_event_fd_active,
-// sysev,
-// NULL, NULL);
events = eina_list_append(events, sysev);
linux_sys_class_power_supply_sysev_init(sysev);
}
@@ -1315,22 +1215,15 @@ poll_cb(void *data EINA_UNUSED)
}
int
-main(int argc,
- char *argv[])
+main(int argc EINA_UNUSED, char **argv EINA_UNUSED)
{
- if (argc != 2)
- {
- printf("ARGS INCORRECT!\n");
- return 0;
- }
- poll_interval = atoi(argv[1]);
-
+ // argv[1] used to be poll_interval
ecore_init();
ecore_file_init();
ecore_con_init();
init();
- poller = ecore_poller_add(ECORE_POLLER_CORE, poll_interval, poll_cb, NULL);
+ timer = ecore_timer_add(10.0, poll_cb, NULL);
poll_cb(NULL);
ecore_main_loop_begin();
diff --git a/src/modules/battery/e_mod_config.c b/src/modules/battery/e_mod_config.c
index e0d30e28f..cda24492b 100644
--- a/src/modules/battery/e_mod_config.c
+++ b/src/modules/battery/e_mod_config.c
@@ -4,7 +4,6 @@
struct _E_Config_Dialog_Data
{
int show_alert;
- int poll_interval;
#ifdef HAVE_EEZE
int fuzzy;
#endif
@@ -72,7 +71,6 @@ _fill_data(E_Config_Dialog_Data *cfdata)
if (!battery_config) return;
cfdata->alert_time = battery_config->alert;
cfdata->alert_percent = battery_config->alert_p;
- cfdata->poll_interval = battery_config->poll_interval;
cfdata->alert_timeout = battery_config->alert_timeout;
cfdata->suspend_below = battery_config->suspend_below;
cfdata->suspend_method = battery_config->suspend_method;
@@ -220,27 +218,21 @@ _advanced_create_widgets(E_Config_Dialog *cfd EINA_UNUSED, Evas *evas, E_Config_
/* Use Sliders for both cfg options */
o = e_widget_table_add(e_win_evas_win_get(evas), 0);
- ob = e_widget_label_add(evas, _("Check every:"));
- e_widget_table_object_append(o, ob, 0, 0, 1, 1, 1, 0, 1, 0);
- ob = e_widget_slider_add(evas, 1, 0, _("%1.0f ticks"), 1, 256, 4, 0,
- NULL, &(cfdata->poll_interval), 100);
- e_widget_table_object_append(o, ob, 0, 1, 1, 1, 1, 0, 1, 0);
-
rg = e_widget_radio_group_new(&(cfdata->suspend_method));
ob = e_widget_radio_add(evas, _("Suspend when below:"), 0, rg);
e_widget_on_change_hook_set(ob, _cb_radio_changed, cfdata);
- e_widget_table_object_append(o, ob, 0, 2, 1, 1, 1, 0, 1, 0);
+ e_widget_table_object_append(o, ob, 0, 0, 1, 1, 1, 0, 1, 0);
ob = e_widget_radio_add(evas, _("Hibernate when below:"), 1, rg);
e_widget_on_change_hook_set(ob, _cb_radio_changed, cfdata);
- e_widget_table_object_append(o, ob, 0, 3, 1, 1, 1, 0, 1, 0);
+ e_widget_table_object_append(o, ob, 0, 1, 1, 1, 1, 0, 1, 0);
ob = e_widget_radio_add(evas, _("Shutdown when below:"), 2, rg);
e_widget_on_change_hook_set(ob, _cb_radio_changed, cfdata);
- e_widget_table_object_append(o, ob, 0, 4, 1, 1, 1, 0, 1, 0);
+ e_widget_table_object_append(o, ob, 0, 2, 1, 1, 1, 0, 1, 0);
ob = e_widget_slider_add(evas, 1, 0, _("%1.0f %%"), 0, 50, 1, 0,
NULL, &(cfdata->suspend_below), 100);
- e_widget_table_object_append(o, ob, 0, 5, 1, 1, 1, 0, 1, 0);
+ e_widget_table_object_append(o, ob, 0, 3, 1, 1, 1, 0, 1, 0);
- e_widget_toolbook_page_append(otb, NULL, _("Polling"), o, 1, 0, 1, 0,
+ e_widget_toolbook_page_append(otb, NULL, _("Limits"), o, 1, 0, 1, 0,
0.5, 0.0);
o = e_widget_table_add(e_win_evas_win_get(evas), 0);
@@ -308,7 +300,6 @@ _advanced_apply_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfd
{
if (!battery_config) return 0;
- battery_config->poll_interval = cfdata->poll_interval;
#ifdef HAVE_EEZE
battery_config->fuzzy = cfdata->fuzzy;
#endif
@@ -348,7 +339,6 @@ _advanced_check_changed(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *
return (cfdata->alert_time != battery_config->alert) ||
(cfdata->alert_percent != battery_config->alert_p) ||
- (cfdata->poll_interval != battery_config->poll_interval) ||
(cfdata->alert_timeout != battery_config->alert_timeout) ||
(cfdata->suspend_below != battery_config->suspend_below) ||
(cfdata->suspend_method != battery_config->suspend_method) ||
diff --git a/src/modules/battery/e_mod_main.c b/src/modules/battery/e_mod_main.c
index 5b7031e85..9cb1b9105 100644
--- a/src/modules/battery/e_mod_main.c
+++ b/src/modules/battery/e_mod_main.c
@@ -943,9 +943,8 @@ _battery_config_updated(void)
if ((battery_config->force_mode == UNKNOWN) ||
(battery_config->force_mode == NOSUBSYSTEM))
{
- snprintf(buf, sizeof(buf), "%s/%s/batget %i",
- e_module_dir_get(battery_config->module), MODULE_ARCH,
- battery_config->poll_interval);
+ snprintf(buf, sizeof(buf), "%s/%s/batget",
+ e_module_dir_get(battery_config->module), MODULE_ARCH);
battery_config->batget_exe =
ecore_exe_pipe_run(buf, ECORE_EXE_PIPE_READ |
@@ -1374,7 +1373,6 @@ e_modapi_init(E_Module *m)
#undef D
#define T Config
#define D conf_edd
- E_CONFIG_VAL(D, T, poll_interval, INT);
E_CONFIG_VAL(D, T, alert, INT);
E_CONFIG_VAL(D, T, alert_p, INT);
E_CONFIG_VAL(D, T, alert_timeout, INT);
@@ -1389,7 +1387,6 @@ e_modapi_init(E_Module *m)
if (!battery_config)
{
battery_config = E_NEW(Config, 1);
- battery_config->poll_interval = 512;
battery_config->alert = 30;
battery_config->alert_p = 10;
battery_config->alert_timeout = 0;
@@ -1400,7 +1397,6 @@ e_modapi_init(E_Module *m)
#endif
battery_config->desktop_notifications = 0;
}
- E_CONFIG_LIMIT(battery_config->poll_interval, 4, 4096);
E_CONFIG_LIMIT(battery_config->alert, 0, 60);
E_CONFIG_LIMIT(battery_config->alert_p, 0, 100);
E_CONFIG_LIMIT(battery_config->alert_timeout, 0, 300);
diff --git a/src/modules/battery/e_mod_main.h b/src/modules/battery/e_mod_main.h
index 91c1c6422..724c02c9e 100644
--- a/src/modules/battery/e_mod_main.h
+++ b/src/modules/battery/e_mod_main.h
@@ -27,7 +27,6 @@ typedef struct _Config Config;
struct _Config
{
/* saved / loaded config values */
- int poll_interval;
int alert; /* Alert on minutes remaining */
int alert_p; /* Alert on percentage remaining */
int alert_timeout; /* Popup dismissal timeout */
@@ -93,7 +92,7 @@ struct _Battery
{
const char *udi;
#if defined HAVE_EEZE || defined __OpenBSD__ || defined __DragonFly__ || defined __FreeBSD__ || defined __NetBSD__
- Ecore_Poller *poll;
+ Ecore_Timer *timer;
Eina_Bool present E_BITFIELD;
Eina_Bool charging E_BITFIELD;
Eina_Bool is_micro_watts E_BITFIELD;
diff --git a/src/modules/battery/e_mod_sysctl.c b/src/modules/battery/e_mod_sysctl.c
index d97c2f2b8..7a800b11d 100644
--- a/src/modules/battery/e_mod_sysctl.c
+++ b/src/modules/battery/e_mod_sysctl.c
@@ -62,9 +62,7 @@ _battery_sysctl_start(void)
bat->technology = eina_stringshare_add("Unknown");
bat->model = eina_stringshare_add("Unknown");
bat->vendor = eina_stringshare_add("Unknown");
- bat->poll = ecore_poller_add(ECORE_POLLER_CORE,
- battery_config->poll_interval,
- _battery_sysctl_battery_update_poll, NULL);
+ bat->timer = ecore_timer_add(10.0, _battery_sysctl_battery_update_poll, NULL);
device_batteries = eina_list_append(device_batteries, bat);
}
else if (!strcmp("acpiac0", snsrdev.xname))
@@ -107,9 +105,7 @@ _battery_sysctl_start(void)
bat->model = eina_stringshare_add(battio.bix.model);
bat->design_charge = battio.bix.dcap;
bat->last_full_charge = battio.bix.lfcap;
- bat->poll = ecore_poller_add(ECORE_POLLER_CORE,
- battery_config->poll_interval,
- _battery_sysctl_battery_update_poll, NULL);
+ bat->timer = ecore_timer_add(10.0, _battery_sysctl_battery_update_poll, NULL);
bat->unit = i;
device_batteries = eina_list_append(device_batteries, bat);
}
@@ -154,7 +150,7 @@ _battery_sysctl_stop(void)
eina_stringshare_del(bat->technology);
eina_stringshare_del(bat->model);
eina_stringshare_del(bat->vendor);
- ecore_poller_del(bat->poll);
+ ecore_timer_del(bat->timer);
#if defined(__OpenBSD__)
E_FREE(bat->mib);
#endif
@@ -190,9 +186,6 @@ _battery_sysctl_battery_update(Battery *bat)
if (bat)
{
- /* update the poller interval */
- ecore_poller_poller_interval_set(bat->poll,
- battery_config->poll_interval);
# if defined(__OpenBSD__)
charge = 0;
diff --git a/src/modules/battery/e_mod_udev.c b/src/modules/battery/e_mod_udev.c
index 7e58a802c..fbfa6b3e1 100644
--- a/src/modules/battery/e_mod_udev.c
+++ b/src/modules/battery/e_mod_udev.c
@@ -61,7 +61,7 @@ _battery_udev_stop(void)
eina_stringshare_del(bat->technology);
eina_stringshare_del(bat->model);
eina_stringshare_del(bat->vendor);
- ecore_poller_del(bat->poll);
+ ecore_timer_del(bat->timer);
_battery_history_close(bat);
free(bat);
}
@@ -162,9 +162,7 @@ _battery_udev_battery_add(const char *syspath)
bat->design_voltage = voltage_min_design;
bat->last_update = ecore_time_get();
bat->udi = eina_stringshare_add(syspath);
- bat->poll = ecore_poller_add(ECORE_POLLER_CORE,
- battery_config->poll_interval,
- _battery_udev_battery_update_poll, bat);
+ bat->timer = ecore_timer_add(10.0, _battery_udev_battery_update_poll, bat);
device_batteries = eina_list_append(device_batteries, bat);
_battery_udev_battery_update(syspath, bat);
}
@@ -208,7 +206,7 @@ _battery_udev_battery_del(const char *syspath)
eina_stringshare_del(bat->technology);
eina_stringshare_del(bat->model);
eina_stringshare_del(bat->vendor);
- ecore_poller_del(bat->poll);
+ ecore_timer_del(bat->timer);
free(bat);
}
@@ -265,9 +263,6 @@ _battery_udev_battery_update(const char *syspath, Battery *bat)
return;
}
}
- /* update the poller interval */
- ecore_poller_poller_interval_set(bat->poll, battery_config->poll_interval);
-
GET_NUM(bat, present, POWER_SUPPLY_PRESENT);
if (!bat->got_prop) /* only need to get these once */
{
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.