update_setting() is called from display init() and it updates pm related setting.
Actually, this function does a lot of work according to the incoming key value.
Also, it is necessary to change the initialization way, so it will be refactored after relocation.
To relocate, wrapper functions are added below display-plugin.
- bool display_plugin_is_there_update_pm_setting(void);
- int display_plugin_is_lcd_on_blocked(void);
- int display_plugin_set_power_save_mode_flag(int onoff);
-> This wrapper is added for wearable plugin.
New function is added below display/setting
- int display_setting_update_pm_setting(int key_idx, int val);
-> This is temporary function, it will be refactored.
Change-Id: I90564168f72df733e887e231fa8262a7a83f86ac
Signed-off-by: Yunhee Seo <yuni.seo@samsung.com>
return 0;
}
-static int update_setting(int key_idx, int val)
-{
- int ret;
-
- switch (key_idx) {
- case SETTING_TO_NORMAL:
- display_state_transition_update_display_state_timeout_by_priority();
- display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
- break;
- case SETTING_LOW_BATT:
- if (display_misc_is_low_battery_state(val)) {
- if (!(get_pm_status_flag() & CHRGR_FLAG))
- display_set_power_save_mode_flag(true);
- set_pm_status_flag(LOWBT_FLAG);
- } else {
- if (get_pm_status_flag() & PWRSV_FLAG)
- display_set_power_save_mode_flag(false);
- clear_pm_status_flag(LOWBT_FLAG);
- clear_pm_status_flag(BRTCH_FLAG);
- ret = vconf_set_bool(VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM, false);
- if (ret < 0)
- _E("Failed to set vconf value for brightness changed in lpm: %d", vconf_get_ext_errno());
- }
- break;
- case SETTING_CHARGING:
- if (val) {
- if (get_pm_status_flag() & LOWBT_FLAG) {
- display_set_power_save_mode_flag(false);
- clear_pm_status_flag(LOWBT_FLAG);
- }
- set_pm_status_flag(CHRGR_FLAG);
- } else {
- int bat_state;
- ret = vconf_get_int(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW,
- &bat_state);
- if (ret < 0) {
- bat_state = VCONFKEY_SYSMAN_BAT_NORMAL;
- _E("Failed to get vconf value for battery status low: %d", vconf_get_ext_errno());
- }
- if (display_misc_is_low_battery_state(bat_state)) {
- display_set_power_save_mode_flag(true);
- set_pm_status_flag(LOWBT_FLAG);
- }
- clear_pm_status_flag(CHRGR_FLAG);
- }
- break;
- case SETTING_BRT_LEVEL:
- if (get_pm_status_flag() & PWRSV_FLAG) {
- set_pm_status_flag(BRTCH_FLAG);
- ret = vconf_set_bool(VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM, true);
- if (ret < 0)
- _E("Failed to set vconf value for brightness changed in lpm: %d", vconf_get_ext_errno());
- _I("Brightness changed in low battery,"
- "escape dim state.");
- }
- display_backlight_set_default_brightness(val);
- break;
- case SETTING_LOCK_SCREEN:
- set_lock_screen_state(val);
- if (val == VCONFKEY_IDLE_UNLOCK)
- touchled_control_backlight(TOUCHLED_DIRECT_OFF);
-
- /* LCD on if lock screen show before waiting time */
- if ((get_pm_cur_state() == S_NORMAL) &&
- val == VCONFKEY_IDLE_LOCK &&
- display_panel_get_dpms_cached_state() != DPMS_ON &&
- is_lcdon_blocked() == LCDON_BLOCK_NONE)
- display_panel_lcd_on_procedure(LCD_NORMAL, LCD_ON_BY_EVENT);
- display_state_transition_update_display_state_timeout_by_priority();
- if (get_pm_cur_state() == S_NORMAL)
- display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
- break;
- case SETTING_LOCK_SCREEN_BG:
- set_lock_screen_bg_state(val);
- display_state_transition_update_display_state_timeout_by_priority();
- if (get_pm_cur_state() == S_NORMAL)
- display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
- break;
- case SETTING_POWER_CUSTOM_BRIGHTNESS:
- if (val == VCONFKEY_PM_CUSTOM_BRIGHTNESS_ON)
- display_backlight_set_custom_status(true);
- else
- display_backlight_set_custom_status(false);
- break;
-
- default:
- return -1;
- }
- return 0;
-}
-
static void check_seed_status(void)
{
int ret = -1;
dp->custom_lcd_off = NULL;
dp->display_on_by_reason = NULL;
dp->display_off_by_reason = NULL;
+ dp->default_saving_mode = NULL;
+ dp->is_lcdon_blocked = is_lcdon_blocked;
setup_display_plugin_backlight_ops(dp);
/* check display feature */
for (i = INIT_SETTING; i < INIT_END; i++) {
switch (i) {
case INIT_SETTING:
- ret = init_setting(update_setting);
+ ret = init_setting(NULL);
break;
case INIT_INTERFACE:
if (display_conf.timeout_enable)
return 0;
}
-static int update_setting(int key_idx, int val)
-{
- int ret;
-
- switch (key_idx) {
- case SETTING_TO_NORMAL:
- display_state_transition_update_display_state_timeout_by_priority();
- display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
- break;
- case SETTING_LOW_BATT:
- if (display_misc_is_low_battery_state(val)) {
- if (!(get_pm_status_flag() & CHRGR_FLAG))
- display_set_power_save_mode_flag(true);
- set_pm_status_flag(LOWBT_FLAG);
- } else {
- if (get_pm_status_flag() & PWRSV_FLAG)
- display_set_power_save_mode_flag(false);
- clear_pm_status_flag(LOWBT_FLAG);
- clear_pm_status_flag(BRTCH_FLAG);
- ret = vconf_set_bool(VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM, false);
- if (ret < 0)
- _E("Failed to set vconf value for brightness changed in lpm: %d", vconf_get_ext_errno());
- }
- break;
- case SETTING_CHARGING:
- if (val) {
- if (get_pm_status_flag() & LOWBT_FLAG) {
- display_set_power_save_mode_flag(false);
- clear_pm_status_flag(LOWBT_FLAG);
- }
- set_pm_status_flag(CHRGR_FLAG);
- } else {
- int bat_state;
- ret = vconf_get_int(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW,
- &bat_state);
- if (ret < 0) {
- bat_state = VCONFKEY_SYSMAN_BAT_NORMAL;
- _E("Failed to get vconf value for battery status low: %d", vconf_get_ext_errno());
- }
- if (display_misc_is_low_battery_state(bat_state)) {
- display_set_power_save_mode_flag(true);
- set_pm_status_flag(LOWBT_FLAG);
- }
- clear_pm_status_flag(CHRGR_FLAG);
- }
- break;
- case SETTING_BRT_LEVEL:
- if (get_pm_status_flag() & PWRSV_FLAG) {
- set_pm_status_flag(BRTCH_FLAG);
- ret = vconf_set_bool(VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM, true);
- if (ret < 0)
- _E("Failed to set vconf value for brightness changed in lpm: %d", vconf_get_ext_errno());
- _I("Brightness changed in low battery,"
- "escape dim state.");
- }
- display_backlight_set_default_brightness(val);
- break;
- case SETTING_LOCK_SCREEN:
- set_lock_screen_state(val);
- if (val == VCONFKEY_IDLE_UNLOCK)
- touchled_control_backlight(TOUCHLED_DIRECT_OFF);
-
- /* LCD on if lock screen show before waiting time */
- if ((get_pm_cur_state() == S_NORMAL) &&
- val == VCONFKEY_IDLE_LOCK &&
- display_panel_get_dpms_cached_state() != DPMS_ON &&
- is_lcdon_blocked() == LCDON_BLOCK_NONE)
- display_panel_lcd_on_procedure(LCD_NORMAL, LCD_ON_BY_EVENT);
- display_state_transition_update_display_state_timeout_by_priority();
- if (get_pm_cur_state() == S_NORMAL)
- display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
- break;
- case SETTING_LOCK_SCREEN_BG:
- set_lock_screen_bg_state(val);
- display_state_transition_update_display_state_timeout_by_priority();
- if (get_pm_cur_state() == S_NORMAL)
- display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
- break;
- case SETTING_POWER_CUSTOM_BRIGHTNESS:
- if (val == VCONFKEY_PM_CUSTOM_BRIGHTNESS_ON)
- display_backlight_set_custom_status(true);
- else
- display_backlight_set_custom_status(false);
- break;
-
- default:
- return -1;
- }
- return 0;
-}
-
static void check_seed_status(void)
{
int ret = -1;
dp->custom_lcd_off = NULL;
dp->display_on_by_reason = NULL;
dp->display_off_by_reason = NULL;
+ dp->default_saving_mode = NULL;
+ dp->is_lcdon_blocked = is_lcdon_blocked;
setup_display_plugin_backlight_ops(dp);
/**
for (i = INIT_SETTING; i < INIT_END; i++) {
switch (i) {
case INIT_SETTING:
- ret = init_setting(update_setting);
+ ret = init_setting(NULL);
break;
case INIT_INTERFACE:
if (display_conf.timeout_enable)
return 0;
}
-static int update_setting(int key_idx, int val)
-{
- int ret;
-
- switch (key_idx) {
- case SETTING_TO_NORMAL:
- display_state_transition_update_display_state_timeout_by_priority();
- display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
- break;
- case SETTING_LOW_BATT:
- if (display_misc_is_low_battery_state(val)) {
- if (!(get_pm_status_flag() & CHRGR_FLAG))
- display_set_power_save_mode_flag(true);
- set_pm_status_flag(LOWBT_FLAG);
- } else {
- if (get_pm_status_flag() & PWRSV_FLAG)
- display_set_power_save_mode_flag(false);
- clear_pm_status_flag(LOWBT_FLAG);
- clear_pm_status_flag(BRTCH_FLAG);
- ret = vconf_set_bool(VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM, false);
- if (ret < 0)
- _E("Failed to set vconf value for brightness changed in lpm: %d", vconf_get_ext_errno());
- }
- break;
- case SETTING_CHARGING:
- if (val) {
- if (get_pm_status_flag() & LOWBT_FLAG) {
- display_set_power_save_mode_flag(false);
- clear_pm_status_flag(LOWBT_FLAG);
- }
- set_pm_status_flag(CHRGR_FLAG);
- } else {
- int bat_state;
- ret = vconf_get_int(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW,
- &bat_state);
- if (ret < 0) {
- bat_state = VCONFKEY_SYSMAN_BAT_NORMAL;
- _E("Failed to get vconf value for battery status low: %d", vconf_get_ext_errno());
- }
- if (display_misc_is_low_battery_state(bat_state)) {
- display_set_power_save_mode_flag(true);
- set_pm_status_flag(LOWBT_FLAG);
- }
- clear_pm_status_flag(CHRGR_FLAG);
- }
- break;
- case SETTING_BRT_LEVEL:
- if (get_pm_status_flag() & PWRSV_FLAG) {
- set_pm_status_flag(BRTCH_FLAG);
- ret = vconf_set_bool(VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM, true);
- if (ret < 0)
- _E("Failed to set vconf value for brightness changed in lpm: %d", vconf_get_ext_errno());
- _I("Brightness changed in low battery,"
- "escape dim state.");
- }
- display_backlight_set_default_brightness(val);
- break;
- case SETTING_LOCK_SCREEN:
- set_lock_screen_state(val);
- if (val == VCONFKEY_IDLE_UNLOCK)
- touchled_control_backlight(TOUCHLED_DIRECT_OFF);
-
- /* LCD on if lock screen show before waiting time */
- if ((get_pm_cur_state() == S_NORMAL) &&
- val == VCONFKEY_IDLE_LOCK &&
- display_panel_get_dpms_cached_state() != DPMS_ON &&
- is_lcdon_blocked() == LCDON_BLOCK_NONE)
- display_panel_lcd_on_procedure(LCD_NORMAL, LCD_ON_BY_EVENT);
- display_state_transition_update_display_state_timeout_by_priority();
- if (get_pm_cur_state() == S_NORMAL)
- display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
- break;
- case SETTING_LOCK_SCREEN_BG:
- set_lock_screen_bg_state(val);
- display_state_transition_update_display_state_timeout_by_priority();
- if (get_pm_cur_state() == S_NORMAL)
- display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
- break;
- case SETTING_POWER_CUSTOM_BRIGHTNESS:
- if (val == VCONFKEY_PM_CUSTOM_BRIGHTNESS_ON)
- display_backlight_set_custom_status(true);
- else
- display_backlight_set_custom_status(false);
- break;
-
- default:
- return -1;
- }
- return 0;
-}
-
static void check_seed_status(void)
{
int ret = -1;
dp->custom_lcd_off = NULL;
dp->display_on_by_reason = NULL;
dp->display_off_by_reason = NULL;
+ dp->default_saving_mode = NULL;
+ dp->is_lcdon_blocked = is_lcdon_blocked;
setup_display_plugin_backlight_ops(dp);
/**
for (i = INIT_SETTING; i < INIT_END; i++) {
switch (i) {
case INIT_SETTING:
- ret = init_setting(update_setting);
+ ret = init_setting(NULL);
break;
case INIT_INTERFACE:
if (display_conf.timeout_enable)
static struct battery_plugin *battery_plgn;
static int (*fp_get_charging_status) (int *val);
-static void (*power_saving_func) (int onoff);
static enum device_ops_status status = DEVICE_OPS_STATUS_UNINIT;
static guint transit_timer;
case SETTING_LOW_BATT:
if (display_misc_is_low_battery_state(val)) {
if (!(get_pm_status_flag() & CHRGR_FLAG))
- power_saving_func(true);
+ default_saving_mode(true);
set_pm_status_flag(LOWBT_FLAG);
} else {
if (get_pm_status_flag() & PWRSV_FLAG)
- power_saving_func(false);
+ default_saving_mode(false);
clear_pm_status_flag(LOWBT_FLAG);
clear_pm_status_flag(BRTCH_FLAG);
ret = vconf_set_bool(VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM, false);
case SETTING_CHARGING:
if (val) {
if (get_pm_status_flag() & LOWBT_FLAG) {
- power_saving_func(false);
+ default_saving_mode(false);
clear_pm_status_flag(LOWBT_FLAG);
}
set_pm_status_flag(CHRGR_FLAG);
_E("Failed to get vconf value for battery status low: %d", vconf_get_ext_errno());
}
if (display_misc_is_low_battery_state(bat_state)) {
- power_saving_func(true);
+ default_saving_mode(true);
set_pm_status_flag(LOWBT_FLAG);
}
clear_pm_status_flag(CHRGR_FLAG);
}
if (display_misc_is_low_battery_state(bat_state)) {
if (!(get_pm_status_flag() & CHRGR_FLAG)) {
- power_saving_func(true);
+ default_saving_mode(true);
set_pm_status_flag(LOWBT_FLAG);
}
}
dp->custom_lcd_off = custom_lcdoff;
dp->display_on_by_reason = display_on_by_reason;
dp->display_off_by_reason = display_off_by_reason;
+ dp->default_saving_mode = default_saving_mode;
+ dp->is_lcdon_blocked = is_lcdon_blocked;
setup_display_plugin_backlight_ops(dp);
/**
signal(SIGHUP, sig_hup);
- power_saving_func = default_saving_mode;
-
/* load configutation */
ret = display_load_config(&display_conf);
if (ret < 0)
if (status != -1) {
result = status;
- display_plugin_update_pm_setting(SETTING_LOW_BATT, status);
+ display_setting_update_pm_setting(SETTING_LOW_BATT, status);
} else
result = vconf_state;
static void check_power_supply(int state)
{
pm_check_and_change(state);
- display_plugin_update_pm_setting(SETTING_CHARGING, state);
+ display_setting_update_pm_setting(SETTING_CHARGING, state);
}
static void charger_state_send_system_event(int state)
return 0;
}
+bool display_plugin_is_there_update_pm_setting(void)
+{
+ if (g_display_plugin.update_pm_setting)
+ return true;
+
+ return false;
+}
+
/* FIXME: return 0 can be value of get_lock_screen_state, it is hard to distinguish error or not */
int display_plugin_get_lock_screen_state(void)
{
return -EOPNOTSUPP;
}
+int display_plugin_set_power_save_mode_flag(int onoff)
+{
+ if (g_display_plugin.default_saving_mode) {
+ g_display_plugin.default_saving_mode(onoff);
+ return 0;
+ }
+
+ return -EOPNOTSUPP;
+}
+
+/** FIXME: is_lcdon_blocked() should be moved or refactored after plugin relocation
+ * Also, this is temporary wrapper function. It should be removed.
+ */
+int display_plugin_is_lcd_on_blocked(void)
+{
+ if (g_display_plugin.is_lcdon_blocked)
+ return g_display_plugin.is_lcdon_blocked();
+
+ return -EOPNOTSUPP;
+}
+
int display_plugin_backlight_get_lcd_power(void)
{
if (g_display_plugin.backlight && g_display_plugin.backlight->get_lcd_power)
int (*custom_lcd_off) (enum device_flags flag);
int (*display_on_by_reason) (const char *reason, int timeout);
int (*display_off_by_reason) (const char *reason);
+ void (*default_saving_mode) (int onoff);
+ int (*is_lcdon_blocked) (void);
struct display_config *config;
struct display_backlight_ops *backlight;
int display_plugin_pm_unlock_internal(pid_t pid, int s_bits, int flags);
int display_plugin_pm_change_internal(pid_t pid, int s_bits);
int display_plugin_update_pm_setting(int key_idx, int val);
+bool display_plugin_is_there_update_pm_setting(void);
int display_plugin_get_lock_screen_state(void);
int display_plugin_get_system_wakeup_flag(bool *flag);
int display_plugin_set_system_wakeup_flag(bool flag);
int display_plugin_custom_lcd_off(enum device_flags flag);
int dipslay_plugin_display_on_by_reason(const char *reason, int timeout);
int display_plugin_display_off_by_reason(const char *reason);
+int display_plugin_set_power_save_mode_flag(int onoff);
+int display_plugin_is_lcd_on_blocked(void);
int display_plugin_backlight_get_lcd_power(void);
int display_plugin_backlight_set_brightness(int brightness);
void display_set_power_save_mode_flag(int onoff)
{
+ if (display_plugin_set_power_save_mode_flag(onoff) == 0)
+ return;
+
if (onoff)
set_pm_status_flag(PWRSV_FLAG);
else
g_variant_get(param, "(s)", &on);
- if (!strcmp(on, "true")) {
- if (disp_plgn->update_pm_setting)
- disp_plgn->update_pm_setting(SETTING_LOCK_SCREEN_BG, true);
- } else if (!strcmp(on, "false")) {
- if (disp_plgn->update_pm_setting)
- disp_plgn->update_pm_setting(SETTING_LOCK_SCREEN_BG, false);
- } else
+ if (!strcmp(on, "true"))
+ display_setting_update_pm_setting(SETTING_LOCK_SCREEN_BG, true);
+ else if (!strcmp(on, "false"))
+ display_setting_update_pm_setting(SETTING_LOCK_SCREEN_BG, false);
+ else
ret = -EINVAL;
g_free(on);
#include "ambient-mode.h"
#include "core.h"
+#include "device-interface.h"
#include "util.h"
#include "setting.h"
+#include "display-misc.h"
#include "display-ops.h"
+#include "display-plugin.h"
+#include "display-state-transition.h"
+#include "led/touch-key.h"
#include "shared/eventsystem.h"
#include "shared/plugin.h"
vconf_keynode_get_name(tmp), index);
return -1;
}
- if (disp_plgn->update_pm_setting)
- disp_plgn->update_pm_setting(index, vconf_keynode_get_int(tmp));
+ display_setting_update_pm_setting(index, vconf_keynode_get_int(tmp));
+
+ return 0;
+}
+
+int display_setting_update_pm_setting(int key_idx, int val)
+{
+ int ret;
+
+ if (display_plugin_is_there_update_pm_setting())
+ return display_plugin_update_pm_setting(key_idx, val);
+
+ switch (key_idx) {
+ case SETTING_TO_NORMAL:
+ display_state_transition_update_display_state_timeout_by_priority();
+ display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
+ break;
+ case SETTING_LOW_BATT:
+ if (display_misc_is_low_battery_state(val)) {
+ if (!(get_pm_status_flag() & CHRGR_FLAG))
+ display_set_power_save_mode_flag(true);
+ set_pm_status_flag(LOWBT_FLAG);
+ } else {
+ if (get_pm_status_flag() & PWRSV_FLAG)
+ display_set_power_save_mode_flag(false);
+ clear_pm_status_flag(LOWBT_FLAG);
+ clear_pm_status_flag(BRTCH_FLAG);
+ ret = vconf_set_bool(VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM, false);
+ if (ret < 0)
+ _E("Failed to set vconf value for brightness changed in lpm: %d", vconf_get_ext_errno());
+ }
+ break;
+ case SETTING_CHARGING:
+ if (val) {
+ if (get_pm_status_flag() & LOWBT_FLAG) {
+ display_set_power_save_mode_flag(false);
+ clear_pm_status_flag(LOWBT_FLAG);
+ }
+ set_pm_status_flag(CHRGR_FLAG);
+ } else {
+ int bat_state;
+ ret = vconf_get_int(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW,
+ &bat_state);
+ if (ret < 0) {
+ bat_state = VCONFKEY_SYSMAN_BAT_NORMAL;
+ _E("Failed to get vconf value for battery status low: %d", vconf_get_ext_errno());
+ }
+ if (display_misc_is_low_battery_state(bat_state)) {
+ display_set_power_save_mode_flag(true);
+ set_pm_status_flag(LOWBT_FLAG);
+ }
+ clear_pm_status_flag(CHRGR_FLAG);
+ }
+ break;
+ case SETTING_BRT_LEVEL:
+ if (get_pm_status_flag() & PWRSV_FLAG) {
+ set_pm_status_flag(BRTCH_FLAG);
+ ret = vconf_set_bool(VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM, true);
+ if (ret < 0)
+ _E("Failed to set vconf value for brightness changed in lpm: %d", vconf_get_ext_errno());
+ _I("Brightness changed in low battery,"
+ "escape dim state.");
+ }
+ display_backlight_set_default_brightness(val);
+ break;
+ case SETTING_LOCK_SCREEN:
+ set_lock_screen_state(val);
+ if (val == VCONFKEY_IDLE_UNLOCK)
+ touchled_control_backlight(TOUCHLED_DIRECT_OFF);
+
+ /* LCD on if lock screen show before waiting time */
+ if ((get_pm_cur_state() == S_NORMAL) &&
+ val == VCONFKEY_IDLE_LOCK &&
+ display_panel_get_dpms_cached_state() != DPMS_ON &&
+ display_plugin_is_lcd_on_blocked() == LCDON_BLOCK_NONE)
+ display_panel_lcd_on_procedure(LCD_NORMAL, LCD_ON_BY_EVENT);
+ display_state_transition_update_display_state_timeout_by_priority();
+ if (get_pm_cur_state() == S_NORMAL)
+ display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
+ break;
+ case SETTING_LOCK_SCREEN_BG:
+ set_lock_screen_bg_state(val);
+ display_state_transition_update_display_state_timeout_by_priority();
+ if (get_pm_cur_state() == S_NORMAL)
+ display_state_transition_do_state_transition(get_pm_cur_state(), EVENT_INPUT);
+ break;
+ case SETTING_POWER_CUSTOM_BRIGHTNESS:
+ if (val == VCONFKEY_PM_CUSTOM_BRIGHTNESS_ON)
+ display_backlight_set_custom_status(true);
+ else
+ display_backlight_set_custom_status(false);
+ break;
+
+ default:
+ return -1;
+ }
return 0;
}
+/* FIXME: update_pm_setting functions initalization should be changed after relocation work */
int init_setting(int (*func) (int key_idx, int val))
{
int i;
SETTING_END
};
-extern int (*update_pm_setting) (int key_idx, int val);
+int display_setting_update_pm_setting(int key_idx, int val);
int set_force_lcdtimeout(int timeout);
int get_setting_brightness(int *level);