diff options
author | Youngjae Cho <y0.cho@samsung.com> | 2020-03-10 10:36:25 +0900 |
---|---|---|
committer | Hyotaek Shim <hyotaek.shim@samsung.com> | 2020-03-10 03:58:54 +0000 |
commit | ae94dbea1c7eb8dd10b41d60cf6a5bba620cf929 (patch) | |
tree | a3161e59225baf4196bce6f00d7b1ec5ab080738 | |
parent | ced9414c61842e30324b8e5f4cc63a7666aad0f2 (diff) | |
download | deviced-ae94dbea1c7eb8dd10b41d60cf6a5bba620cf929.tar.gz deviced-ae94dbea1c7eb8dd10b41d60cf6a5bba620cf929.tar.bz2 deviced-ae94dbea1c7eb8dd10b41d60cf6a5bba620cf929.zip |
Change bezel state when vconf changes in LCDOFF
Change-Id: I3209c2b1c797d47420acffe4e2dbc93426662dc3
Signed-off-by: Youngjae Cho <y0.cho@samsung.com>
(cherry picked from commit 836858e862deeb53959532714c5714cefc930b2f)
-rw-r--r-- | plugins/wearable/display/bezel.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/plugins/wearable/display/bezel.c b/plugins/wearable/display/bezel.c index 82f01321..9d9eb3cd 100644 --- a/plugins/wearable/display/bezel.c +++ b/plugins/wearable/display/bezel.c @@ -21,6 +21,7 @@ #include "core/device-notifier.h" #include "display/util.h" #include "display/poll.h" +#include "display/core.h" #include "display-ops.h" #include <hw/bezel.h> #include <assert.h> @@ -36,6 +37,8 @@ enum bezel_type { BEZEL_SOFT, }; +static enum bezel_state bezel_wakeup_control(void); + static struct bezel_device *bezel_dev; static int bezel_wakeup = 0; static int theater_mode = 0; @@ -57,18 +60,32 @@ static void bezel_changed_cb(keynode_t *key_nodes, void *data) static void theater_changed_cb(keynode_t *key_nodes, void *data) { + enum bezel_state state; + assert(key_nodes); theater_mode = vconf_keynode_get_bool(key_nodes); _I("Theater mode: %d.", theater_mode); + + if (pm_cur_state == LCD_OFF) { + state = bezel_wakeup_control(); + bezel_dev->set_state(state); + } } static void goodnight_changed_cb(keynode_t *key_nodes, void *data) { + enum bezel_state state; + assert(key_nodes); goodnight_mode = vconf_keynode_get_bool(key_nodes); _I("Goodnight mode: %d.", goodnight_mode); + + if (pm_cur_state == LCD_OFF) { + state = bezel_wakeup_control(); + bezel_dev->set_state(state); + } } static void bezel_rotary_event_cb(keynode_t *key_nodes, void *data) |