diff options
| author | Leandro A. F. Pereira <leandro@hardinfo.org> | 2007-02-27 15:52:45 +0000 | 
|---|---|---|
| committer | Leandro A. F. Pereira <leandro@hardinfo.org> | 2007-02-27 15:52:45 +0000 | 
| commit | 6209464ea2c3bc3763bf6170bb4c54a2bfe2d1f4 (patch) | |
| tree | ea315c7f824b4d3a5b200876fe5a7907f8bbed1e /hardinfo2/arch | |
| parent | a5a465f6633112226ad64566d7146c2e44488dc5 (diff) | |
Add APM battery info
Diffstat (limited to 'hardinfo2/arch')
| -rw-r--r-- | hardinfo2/arch/linux/common/battery.h | 34 | 
1 files changed, 33 insertions, 1 deletions
| diff --git a/hardinfo2/arch/linux/common/battery.h b/hardinfo2/arch/linux/common/battery.h index 8be133ee..7b47fa90 100644 --- a/hardinfo2/arch/linux/common/battery.h +++ b/hardinfo2/arch/linux/common/battery.h @@ -17,7 +17,7 @@   */  static void -__scan_battery(void) +__scan_battery_acpi(void)  {      gchar *acpi_path; @@ -125,5 +125,37 @@ __scan_battery(void)      }      g_free(acpi_path); +} + +static void +__scan_battery_apm(void) +{ +    FILE *procapm; +    int percentage; +    char trash[10]; +     +    procapm = fopen("/proc/apm", "r"); +    if (!procapm) +        return; + +    fscanf(procapm, "%s %s %s %s %s %s %d%%", +           trash, trash, trash, trash, trash, trash, &percentage); +    fclose(procapm); + +    battery_list = g_strdup_printf("%s\n[Battery (APM)]\n" +                                   "Charge=%d%%\n", +                                   battery_list, +                                   percentage); +} + +static void +__scan_battery(void) +{ +    if (battery_list) { +      g_free(battery_list); +    } +    battery_list = g_strdup(""); +    __scan_battery_acpi(); +    __scan_battery_apm();  } | 
