From ed520d31a1a85601c25a8aba32ded7d611c5eb49 Mon Sep 17 00:00:00 2001 From: Sebastian Dransfeld Date: Wed, 6 Nov 2013 06:09:04 +0100 Subject: [PATCH] e_acpi: Add function to get lid status So we can know lid status without waiting for a lid event. --- src/bin/e_acpi.c | 17 +++++++++++++++++ src/bin/e_acpi.h | 2 ++ 2 files changed, 19 insertions(+) diff --git a/src/bin/e_acpi.c b/src/bin/e_acpi.c index 516295152..dc67a39f4 100644 --- a/src/bin/e_acpi.c +++ b/src/bin/e_acpi.c @@ -174,6 +174,23 @@ e_acpi_shutdown(void) return 1; } +EINTERN E_Acpi_Lid_Status +e_acpi_lid_status_get(void) +{ + int i; + + for (i = 0; _devices_simple[i].name; i++) + { + if (_devices_simple[i].type == E_ACPI_TYPE_LID) + { + /* TODO: Can bus be anything other than LID? */ + return _e_acpi_lid_status_get(_devices_simple[i].name, "LID"); + } + } + + return E_ACPI_LID_UNKNOWN; +} + EAPI void e_acpi_events_freeze(void) { diff --git a/src/bin/e_acpi.h b/src/bin/e_acpi.h index 4a411d54b..50440c166 100644 --- a/src/bin/e_acpi.h +++ b/src/bin/e_acpi.h @@ -71,6 +71,8 @@ struct _E_Event_Acpi EINTERN int e_acpi_init(void); EINTERN int e_acpi_shutdown(void); +EINTERN E_Acpi_Lid_Status e_acpi_lid_status_get(void); + EAPI void e_acpi_events_freeze(void); EAPI void e_acpi_events_thaw(void);