#include <setting-display-main.h>
#include <Ecore_X.h>
#include <dd-display.h>
+#include <eventsystem.h>
#include <setting-common-draw-widget.h>
+#include <bundle_internal.h>
+#include <system_settings.h>
#define KEYSTR_SCREEN_ROTATION "IDS_ST_MBODY_SCREEN_ROTATION"
extern const char *str_in_arr[];
extern const char *str_out_arr[];
-const char *screen_capture_destination[] = {
- KeyStr_ScreenCapture_Ask,
- KeyStr_ScreenCapture_Gallery,
- KeyStr_ScreenCapture_KeepIt,
- NULL,
-};
-
/* ***************************************************
*
*basic func
*
***************************************************/
-static void
-__setting_display_main_exp_cb(void *data, Evas_Object *obj, void *event_info)
+static void __screen_timeout_cb(void *data, Evas_Object *obj, void *event_info)
+{
+ /* error check */
+ ret_if(data == NULL);
+ retm_if(event_info == NULL, "Invalid argument: event info is NULL");
+
+ Elm_Object_Item *item = (Elm_Object_Item *) event_info;
+ elm_genlist_item_selected_set(item, 0);
+
+ Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) elm_object_item_data_get(item);
+
+ SettingDisplayUG *ad = data;
+
+ SETTING_TRACE("clicking item[%s]", _(list_item->keyStr));
+
+ int value = 0;
+ if (!safeStrCmp(KeyStr_Backlight_15_SEC_STR, list_item->keyStr)) {
+ elm_radio_value_set(ad->screen_timeout_rdg, 0);
+ value = 15;
+ } else if (!safeStrCmp(KeyStr_Backlight_30_SEC_STR, list_item->keyStr)) {
+ elm_radio_value_set(ad->screen_timeout_rdg, 1);
+ value = 30;
+ } else if (!safeStrCmp(KeyStr_Backlight_1_MIN_STR, list_item->keyStr)) {
+ elm_radio_value_set(ad->screen_timeout_rdg, 2);
+ value = 60;
+ } else if (!safeStrCmp(KeyStr_Backlight_2_MIN_STR, list_item->keyStr)) {
+ elm_radio_value_set(ad->screen_timeout_rdg, 3);
+ value = 120;
+ } else if (!safeStrCmp(KeyStr_Backlight_5_MIN_STR, list_item->keyStr)) {
+ elm_radio_value_set(ad->screen_timeout_rdg, 4);
+ value = 300;
+ } else if (!safeStrCmp(KeyStr_Backlight_10_MIN_STR, list_item->keyStr)) {
+ elm_radio_value_set(ad->screen_timeout_rdg, 5);
+ value = 600;
+ }
+
+ int err;
+ setting_set_int_slp_key(ad->data_back->int_slp_setting_binded, value, &err);
+
+ if (ad->screen_timeout_popup) {
+ evas_object_del(ad->screen_timeout_popup);
+ ad->screen_timeout_popup = NULL;
+ }
+}
+
+static void setting_display_screen_timeout_popup(void *data)
{
- ret_if(NULL == data || NULL == event_info);
SETTING_TRACE_BEGIN;
+ setting_retm_if(data == NULL, "data is NULL");
+
SettingDisplayUG *ad = (SettingDisplayUG *) data;
- Elm_Object_Item *parentItem = event_info; /* parent item */
- Setting_GenGroupItem_Data *data_parentItem = elm_object_item_data_get(parentItem); /* parent data */
- Evas_Object *scroller = elm_object_item_widget_get(parentItem);
- Evas_Object *rgd;
+ Evas_Object *menu_glist = NULL;
+ ad->screen_timeout_popup = setting_create_popup_with_list(&menu_glist, ad, ad->win_get,
+ KeyStr_BacklightTime, NULL, 0, false, false, 0);
+ _P(ad->screen_timeout_popup);
+
+ Evas_Object *rdg = elm_radio_add(menu_glist);
+ elm_object_style_set(rdg, "list");
+ evas_object_propagate_events_set(rdg, EINA_TRUE);
+ elm_radio_state_value_set(rdg, -1);
+ evas_object_data_set(menu_glist, "radio", rdg);
+ ad->screen_timeout_rdg = rdg;
+
+ ad->data_backlight_15sec = setting_create_Gendial_field_1radio(menu_glist, &(ad->itc_1text_1icon),
+ __screen_timeout_cb, ad,
+ SWALLOW_Type_1RADIO_RIGHT,
+ rdg, 0, KeyStr_Backlight_15_SEC_STR,
+ NULL);
+ if (ad->data_backlight_15sec) {
+ ad->data_backlight_15sec->userdata = ad;
+ __BACK_POINTER_SET(ad->data_backlight_15sec);
+ } else {
+ SETTING_TRACE_ERROR("ad->data_backlight_15sec is NULL");
+ }
- if (ad->data_back) {
- ad->data_back->sub_desc = get_pa_backlight_time_str();
- elm_object_item_data_set(ad->data_back->item, ad->data_back);
- elm_genlist_item_update(ad->data_back->item);
+ ad->data_backlight_30sec = setting_create_Gendial_field_1radio(menu_glist, &(ad->itc_1text_1icon),
+ __screen_timeout_cb, ad,
+ SWALLOW_Type_1RADIO_RIGHT,
+ rdg, 1, KeyStr_Backlight_30_SEC_STR,
+ NULL);
+ if (ad->data_backlight_30sec) {
+ ad->data_backlight_30sec->userdata = ad;
+ __BACK_POINTER_SET(ad->data_backlight_30sec);
+ } else {
+ SETTING_TRACE_ERROR("ad->data_backlight_30sec is NULL");
}
- /* End */
-
- if (data_parentItem == ad->data_back) {
- /* Update backlight menu for MDM update */
- rgd = elm_radio_add(scroller);
- elm_radio_value_set(rgd, -1);
-
- /*evas_object_smart_callback_add(scroller, "realized", __gl_realized_cb, NULL); */
- /*elm_object_signal_emit(scroller, "realized", ""); */
-
- if (isEmulBin()) {
- ad->data_backlight_always_on = setting_create_Gendial_exp_sub_field(scroller,
- &(ad->itc_1icon_1text_sub),
- NULL, NULL, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- 0, /* Always ON */
- KeyStr_Backlight_Alays_On, NULL);
-
- if (ad->data_backlight_always_on) {
- ad->data_backlight_always_on->userdata = ad;
- /*ad->data_backlight_always_on->group_style = SETTING_GROUP_STYLE_CENTER; */
- setting_genlist_item_groupstyle_set(ad->data_backlight_always_on, SETTING_GROUP_STYLE_CENTER);
- __BACK_POINTER_SET(ad->data_backlight_always_on);
- } else {
- SETTING_TRACE_ERROR("ad->data_backlight_always_on is NULL");
- }
- }
- char backlight_time[MAX_DISPLAY_NAME_LEN_ON_UI] = {0, };
- snprintf(backlight_time, sizeof(backlight_time), "15 %s", (char *)(_("IDS_COM_BODY_SECONDS_LC")));
- ad->data_backlight_15sec = setting_create_Gendial_exp_sub_field(scroller,
- &(ad->itc_1icon_1text_sub),
- NULL, NULL, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- 15, /* 15 sec */
- KeyStr_Backlight_15_SEC_STR, NULL);
- if (ad->data_backlight_15sec) {
- ad->data_backlight_15sec->userdata = ad;
- setting_genlist_item_groupstyle_set(ad->data_backlight_15sec, SETTING_GROUP_STYLE_CENTER);
- __BACK_POINTER_SET(ad->data_backlight_15sec);
- } else {
- SETTING_TRACE_ERROR("ad->data_backlight_15sec is NULL");
- }
- snprintf(backlight_time, sizeof(backlight_time), "30 %s", (char *)(_("IDS_COM_BODY_SECONDS_LC")));
- ad->data_backlight_30sec = setting_create_Gendial_exp_sub_field(scroller,
- &(ad->itc_1icon_1text_sub),
- NULL, NULL, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- 30, /* 30 sec */
- KeyStr_Backlight_30_SEC_STR, NULL);
- if (ad->data_backlight_30sec) {
- ad->data_backlight_30sec->userdata = ad;
- setting_genlist_item_groupstyle_set(ad->data_backlight_30sec, SETTING_GROUP_STYLE_CENTER);
- __BACK_POINTER_SET(ad->data_backlight_30sec);
- } else {
- SETTING_TRACE_ERROR("ad->data_backlight_30sec is NULL");
- }
- snprintf(backlight_time, sizeof(backlight_time), "1 %s", (char *)(_("IDS_COM_BODY_MINUTES_LC")));
- ad->data_backlight_1min = setting_create_Gendial_exp_sub_field(scroller,
- &(ad->itc_1icon_1text_sub),
- NULL, NULL, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- 60, /* 60 sec */
- KeyStr_Backlight_1_MIN_STR, NULL);
- if (ad->data_backlight_1min) {
- ad->data_backlight_1min->userdata = ad;
- setting_genlist_item_groupstyle_set(ad->data_backlight_1min, SETTING_GROUP_STYLE_CENTER);
- __BACK_POINTER_SET(ad->data_backlight_1min);
- } else {
- SETTING_TRACE_ERROR("ad->data_backlight_1min is NULL");
- }
- snprintf(backlight_time, sizeof(backlight_time), "2 %s", (char *)(_("IDS_COM_BODY_MINUTES_LC")));
- ad->data_backlight_2min = setting_create_Gendial_exp_sub_field(scroller,
- &(ad->itc_1icon_1text_sub),
- NULL, NULL, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- 120, /* 2min */
- KeyStr_Backlight_2_MIN_STR, NULL);
- if (ad->data_backlight_2min) {
- ad->data_backlight_2min->userdata = ad;
- setting_genlist_item_groupstyle_set(ad->data_backlight_2min, SETTING_GROUP_STYLE_CENTER);
- __BACK_POINTER_SET(ad->data_backlight_2min);
- } else {
- SETTING_TRACE_ERROR("ad->data_backlight_2min is NULL");
- }
- snprintf(backlight_time, sizeof(backlight_time), "5 %s", (char *)(_("IDS_COM_BODY_MINUTES_LC")));
- ad->data_backlight_5min = setting_create_Gendial_exp_sub_field(scroller,
- &(ad->itc_1icon_1text_sub),
- NULL, NULL, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- 300, /* 5min */
- KeyStr_Backlight_5_MIN_STR, NULL);
- if (ad->data_backlight_5min) {
- ad->data_backlight_5min->userdata = ad;
- setting_genlist_item_groupstyle_set(ad->data_backlight_5min, SETTING_GROUP_STYLE_CENTER);
- __BACK_POINTER_SET(ad->data_backlight_5min);
- } else {
- SETTING_TRACE_ERROR("ad->data_backlight_5min is NULL");
- }
- snprintf(backlight_time, sizeof(backlight_time), "10 %s", (char *)(_("IDS_COM_BODY_MINUTES_LC")));
- ad->data_backlight_10min = setting_create_Gendial_exp_sub_field(scroller,
- &(ad->itc_1icon_1text_sub),
- NULL, NULL, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- 600, /* 10min */
- KeyStr_Backlight_10_MIN_STR, NULL);
- if (ad->data_backlight_10min) {
- ad->data_backlight_10min->userdata = ad;
- setting_genlist_item_groupstyle_set(ad->data_backlight_10min, SETTING_GROUP_STYLE_CENTER);
- __BACK_POINTER_SET(ad->data_backlight_10min);
- } else {
- SETTING_TRACE_ERROR("ad->data_backlight_10min is NULL");
- }
+ ad->data_backlight_1min = setting_create_Gendial_field_1radio(menu_glist, &(ad->itc_1text_1icon),
+ __screen_timeout_cb, ad,
+ SWALLOW_Type_1RADIO_RIGHT,
+ rdg, 2, KeyStr_Backlight_1_MIN_STR,
+ NULL);
+ if (ad->data_backlight_1min) {
+ ad->data_backlight_1min->userdata = ad;
+ __BACK_POINTER_SET(ad->data_backlight_1min);
+ } else {
+ SETTING_TRACE_ERROR("ad->data_backlight_1min is NULL");
+ }
- setting_update_chk_status(rgd,
- data_parentItem->int_slp_setting_binded);
+ ad->data_backlight_2min = setting_create_Gendial_field_1radio(menu_glist, &(ad->itc_1text_1icon),
+ __screen_timeout_cb, ad,
+ SWALLOW_Type_1RADIO_RIGHT,
+ rdg, 3, KeyStr_Backlight_2_MIN_STR,
+ NULL);
+ if (ad->data_backlight_2min) {
+ ad->data_backlight_2min->userdata = ad;
+ __BACK_POINTER_SET(ad->data_backlight_2min);
+ } else {
+ SETTING_TRACE_ERROR("ad->data_backlight_2min is NULL");
+ }
- } else if (data_parentItem == ad->data_touchkey_light_duration) {
- rgd = elm_radio_add(scroller);
- elm_radio_value_set(rgd, -1);
+ ad->data_backlight_5min = setting_create_Gendial_field_1radio(menu_glist, &(ad->itc_1text_1icon),
+ __screen_timeout_cb, ad,
+ SWALLOW_Type_1RADIO_RIGHT,
+ rdg, 4, KeyStr_Backlight_5_MIN_STR,
+ NULL);
+ if (ad->data_backlight_5min) {
+ ad->data_backlight_5min->userdata = ad;
+ __BACK_POINTER_SET(ad->data_backlight_5min);
+ } else {
+ SETTING_TRACE_ERROR("ad->data_backlight_5min is NULL");
+ }
- char duration[MAX_DISPLAY_NAME_LEN_ON_UI] = {0, };
- snprintf(duration, sizeof(duration), "1.5 %s", (char *)(_("IDS_COM_BODY_SECONDS_LC")));
- setting_create_Gendial_exp_sub_field_with_group_style(scroller,
- &(ad->itc_1icon_1text_sub),
- NULL, ad, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- 90, "IDS_ST_BODY_1_5_SECONDS",
- NULL, SETTING_GROUP_STYLE_CENTER);
-
- snprintf(duration, sizeof(duration), "6 %s", (char *)(_("IDS_COM_BODY_SECONDS_LC")));
- setting_create_Gendial_exp_sub_field_with_group_style(scroller,
- &(ad->itc_1icon_1text_sub),
- NULL, ad, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- 360, "IDS_COM_BODY_6_SECONDS",
- NULL, SETTING_GROUP_STYLE_CENTER);
- setting_create_Gendial_exp_sub_field_with_group_style(scroller,
- &(ad->itc_1icon_1text_sub),
- NULL, ad, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- 0, "IDS_ST_BODY_ALWAYS_OFF",
- NULL, SETTING_GROUP_STYLE_CENTER);
- setting_create_Gendial_exp_sub_field_with_group_style(scroller,
- &(ad->itc_1icon_1text_sub_touch),
- NULL, ad, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- -1, "IDS_ST_BODY_ALWAYS_ON",
- NULL, SETTING_GROUP_STYLE_BOTTOM);
-
- setting_update_chk_status(rgd, data_parentItem->int_slp_setting_binded);
- } else if (data_parentItem == ad->data_screencapture_dest) {
- rgd = elm_radio_add(scroller);
- elm_radio_value_set(rgd, -1);
- setting_create_Gendial_exp_sub_field_with_group_style(scroller,
- &itc_multiline_1text_1icon,
- NULL, ad, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- SETTING_SCREEN_CAPTURE_DESTINATION_ASK,
- KeyStr_ScreenCapture_Ask,
- NULL, SETTING_GROUP_STYLE_CENTER);
- setting_create_Gendial_exp_sub_field_with_group_style(scroller,
- &itc_multiline_1text_1icon,
- NULL, ad, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- SETTING_SCREEN_CAPTURE_DESTINATION_GALLERY,
- KeyStr_ScreenCapture_Gallery,
- NULL, SETTING_GROUP_STYLE_CENTER);
- setting_create_Gendial_exp_sub_field_with_group_style(scroller,
- &itc_multiline_1text_1icon,
- NULL, ad, parentItem,
- SWALLOW_Type_1RADIO, rgd,
- SETTING_SCREEN_CAPTURE_DESTINATION_KEEPIT,
- KeyStr_ScreenCapture_KeepIt,
- NULL, SETTING_GROUP_STYLE_BOTTOM);
-
- setting_update_chk_status(rgd, data_parentItem->int_slp_setting_binded);
+ ad->data_backlight_10min = setting_create_Gendial_field_1radio(menu_glist, &(ad->itc_1text_1icon),
+ __screen_timeout_cb, ad,
+ SWALLOW_Type_1RADIO_RIGHT,
+ rdg, 5, KeyStr_Backlight_10_MIN_STR,
+ NULL);
+ if (ad->data_backlight_10min) {
+ ad->data_backlight_10min->userdata = ad;
+ __BACK_POINTER_SET(ad->data_backlight_10min);
+ } else {
+ SETTING_TRACE_ERROR("ad->data_backlight_10min is NULL");
}
- evas_object_show(scroller);
+ /* update radio */
+ int value;
+ int err;
+ setting_get_int_slp_key(ad->data_back->int_slp_setting_binded, &value, &err);
+ if (15 == value) {
+ elm_radio_value_set(rdg, 0);
+ } else if (30 == value) {
+ elm_radio_value_set(rdg, 1);
+ } else if (60 == value) {
+ elm_radio_value_set(rdg, 2);
+ } else if (120 == value) {
+ elm_radio_value_set(rdg, 3);
+ } else if (300 == value) {
+ elm_radio_value_set(rdg, 4);
+ } else if (600 == value) {
+ elm_radio_value_set(rdg, 5);
+ }
}
+
#if !SUPPOR_SEPARATE_BRIGHTNESS
/* low battery */
static void setting_display_main_lowbat_cb(keynode_t *key, void *data)
}
#endif
-#if SUPPORT_AUTO_ADJUST_SCREEN_TONE
-static void setting_display_main_adjust_tone_cb(keynode_t *key, void *data)
-{
- SETTING_TRACE_BEGIN;
- ret_if(data == NULL);
- SettingDisplayUG *ad = (SettingDisplayUG *) data;
-
- char *vconf_key = vconf_keynode_get_name(key);
- SETTING_TRACE("the value of [ %s ] just changed", vconf_key);
-
- int value;
- vconf_get_bool(VCONFKEY_SETAPPL_BOOL_AUTO_ADJUST_SCREEN_TONE, &value);
-
- setting_update_gl_item_chk_status(ad->data_auto_adjust_scrn_tone, value);
- return;
-}
-#endif
static char *___touchkey_light_duration_sub_desc()
{
SETTING_TRACE_BEGIN;
return g_strdup("IDS_ST_BODY_1_5_SECONDS");
}
case 360: {
- return g_strdup("IDS_COM_BODY_6_SECONDS");
+ return g_strdup("IDS_MSG_OPT_6_SECONDS");
}
default:
return g_strdup("IDS_ST_BODY_ALWAYS_ON");
return g_strdup(_("IDS_ST_BODY_ALWAYS_ON"));
} else if (!safeStrCmp(temp, "1.5")) {
char duration[MAX_DISPLAY_NAME_LEN_ON_UI] = {0, };
- snprintf(duration, sizeof(duration), "%s %s", temp, (char *)(_("IDS_COM_BODY_SECONDS_LC")));
+ snprintf(duration, sizeof(duration), "%s %s", temp, (char *)(_("IDS_ST_BODY_SECONDS")));
return g_strdup(duration);
} else if (!safeStrCmp(temp, "6")) {
char duration[MAX_DISPLAY_NAME_LEN_ON_UI] = {0, };
- snprintf(duration, sizeof(duration), "%s %s", temp, (char *)(_("IDS_COM_BODY_SECONDS_LC")));
+ snprintf(duration, sizeof(duration), "%s %s", temp, (char *)(_("IDS_ST_BODY_SECONDS")));
return g_strdup(duration);
} else {
return g_strdup(_("IDS_ST_BODY_ALWAYS_ON"));
return NULL;
}
-char *__setting_display_screen_capture_destination_get()
-{
- SETTING_TRACE_BEGIN;
- int value = 0;
- int ret = vconf_get_int(VCONFKEY_SETAPPL_SCREEN_CAPTURE_DESTINATION, &value);
- if (ret != 0) {
- SETTING_TRACE_ERROR("get vconf failed");
- }
- char *temp = NULL;
- switch (value) {
- case SETTING_SCREEN_CAPTURE_DESTINATION_ASK:
- temp = (char *)(screen_capture_destination[SETTING_SCREEN_CAPTURE_DESTINATION_ASK]);
- break;
- case SETTING_SCREEN_CAPTURE_DESTINATION_GALLERY:
- temp = (char *)(screen_capture_destination[SETTING_SCREEN_CAPTURE_DESTINATION_GALLERY]);
- break;
- case SETTING_SCREEN_CAPTURE_DESTINATION_KEEPIT:
- temp = (char *)(screen_capture_destination[SETTING_SCREEN_CAPTURE_DESTINATION_KEEPIT]);
- break;
- default:
- SETTING_TRACE_ERROR("incorrect screen capture destination");
- temp = (char *)(screen_capture_destination[SETTING_SCREEN_CAPTURE_DESTINATION_ASK]);
- break;
- }
- return temp;
-}
-static void
-setting_display_main_chk_btn_cb(void *data, Evas_Object *obj,
- void *event_info)
-{
- /*SETTING_TRACE_BEGIN; */
- /* error check */
- retm_if(data == NULL, "Data parameter is NULL");
- Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
-
- list_item->chk_status = elm_check_state_get(obj); /* for genlist update status */
- if (!safeStrCmp(KeyStr_Dynamic_Status_Bar, list_item->keyStr)) {
- vconf_set_bool(VCONFKEY_SETAPPL_DYNAMIC_STATUS_BAR, list_item->chk_status);
- }
-}
-
-static void
-setting_display_main_screen_capture_edit_chk_btn_cb(void *data, Evas_Object *obj,
- void *event_info)
-{
- /*SETTING_TRACE_BEGIN; */
- /* error check */
- retm_if(data == NULL, "Data parameter is NULL");
- Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
-
- list_item->chk_status = elm_check_state_get(obj); /* for genlist update status */
- vconf_set_bool(VCONFKEY_SETAPPL_SCREEN_CAPTURE_EDIT_AFTER_CAPTURE, list_item->chk_status);
-}
char *__item_touch_duration_sub_item_text_get(void *data, Evas_Object *obj, const char *part)
{
/*SETTING_TRACE_BEGIN; */
}
} else if (!safeStrCmp(vconf_name, VCONFKEY_SETAPPL_LCD_AUTO_DISPLAY_ADJUSTMENT)) {
setting_update_gl_item_chk_status(ad->data_auto_adjust_scrn_tone, status);
- } else if (!safeStrCmp(vconf_name, VCONFKEY_SETAPPL_BATTERY_PERCENTAGE_BOOL)) {
- setting_update_gl_item_chk_status(ad->data_battery, status);
} else if (!safeStrCmp(vconf_name, VCONFKEY_SETAPPL_DYNAMIC_STATUS_BAR)) {
setting_update_gl_item_chk_status(ad->data_dynamic, status);
- } else if (!safeStrCmp(vconf_name, VCONFKEY_SETAPPL_SCREEN_CAPTURE_EDIT_AFTER_CAPTURE)) {
- setting_update_gl_item_chk_status(ad->data_screencapture_edit, status);
} else if (!safeStrCmp(vconf_name, VCONFKEY_SETAPPL_LCD_TIMEOUT_NORMAL)) {
if (ad->data_back) {
G_FREE(ad->data_back->sub_desc);
elm_object_item_data_set(ad->data_back->item, ad->data_back);
elm_genlist_item_update(ad->data_back->item);
}
- } else if (!safeStrCmp(vconf_name, VCONFKEY_SETAPPL_TOUCHKEY_LIGHT_DURATION)) {
- if (ad->data_touchkey_light_duration) {
- G_FREE(ad->data_touchkey_light_duration->sub_desc);
- ad->data_touchkey_light_duration->sub_desc = ___touchkey_light_duration_sub_desc();
- elm_object_item_data_set(ad->data_touchkey_light_duration->item, ad->data_touchkey_light_duration);
- elm_genlist_item_update(ad->data_touchkey_light_duration->item);
- }
}
+}
+
+void auto_rotate_event_handler(const char *event_name, bundle *data, void *user_data)
+{
+ const char *auto_rotate_set = NULL;
+ SETTING_TRACE("auto rotate set event(%s) received", event_name);
+ auto_rotate_set = bundle_get_val(data, EVT_KEY_SCREEN_AUTOROTATE_STATE);
+ SETTING_TRACE("auto_rotate_set(%s", auto_rotate_set);
}
+int auto_rotate_event_reg_id;
static int setting_display_main_create(void *cb)
{
int ret = 0;
/* add basic layout */
- char setBtnStr[MAX_DISPLAY_NAME_LEN_ON_UI];
- snprintf(setBtnStr, sizeof(setBtnStr), "%s",
- (char *)dgettext("sys_string", "IDS_COM_BODY_BACK"));
ad->ly_main =
setting_create_layout_navi_bar_genlist(ad->win_main_layout,
ad->win_get,
- KeyStr_Display, setBtnStr,
+ KeyStr_Display,
+ NULL,
NULL,
(setting_call_back_func)setting_display_main_click_softkey_back_cb,
NULL, ad, &scroller,
if (ret != 0) {
SETTING_TRACE_ERROR("vconf notifications Failed %d", ret);
}
- ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_BATTERY_PERCENTAGE_BOOL,
- setting_display_main_vconf_change_cb, ad);
- if (ret != 0) {
- SETTING_TRACE_ERROR("vconf notifications Failed %d", ret);
- }
ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_DYNAMIC_STATUS_BAR,
setting_display_main_vconf_change_cb, ad);
if (ret != 0) {
}
- setting_enable_expandable_genlist(scroller, ad, __setting_display_main_exp_cb, NULL);
- evas_object_smart_callback_add(ad->genlist, "realized", __gl_realized_cb, NULL);
-
- Elm_Object_Item *item = NULL;
-
- item =
- elm_genlist_item_append(scroller, &itc_seperator, NULL, NULL,
- ELM_GENLIST_ITEM_NONE, NULL, NULL);
- elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
/* BRIGHTNESS */
- ad->data_br =
- setting_create_Gendial_field_def(scroller, &(ad->itc_2text_2),
+ construct_brightness(ad, scroller);
+
+ /* FONT */
+ ad->data_font =
+ setting_create_Gendial_field_def(scroller, &(ad->itc_1text),
setting_display_main_mouse_up_Gendial_list_cb,
ad, SWALLOW_Type_INVALID, NULL,
- NULL, 0, "IDS_COM_OPT_BRIGHTNESS",
- get_brightness_mode_str(), NULL);
- if (ad->data_br) {
- ad->data_br->userdata = ad;
- ad->data_br->group_style = SETTING_GROUP_STYLE_TOP;
- __BACK_POINTER_SET(ad->data_br);
+ NULL, 0, KeyStr_Font,
+ NULL, NULL);
+ if (ad->data_font) {
+ ad->data_font->userdata = ad;
+ __BACK_POINTER_SET(ad->data_font);
} else {
- SETTING_TRACE_ERROR("ad->data_br is NULL");
+ SETTING_TRACE_ERROR("ad->data_font is NULL");
}
-
-
/* AUTO ROTATE */
ret = vconf_get_bool(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL, &value);
ad->data_auto_rotate =
setting_create_Gendial_field_def(scroller, &(ad->itc_1text_1icon),
setting_display_main_mouse_up_Gendial_list_cb,
ad, SWALLOW_Type_1ICON_1RADIO, NULL,
- NULL, value, KEYSTR_SCREEN_ROTATION,
+ NULL, value, "IDS_ST_HEADER_AUTO_ROTATE_SCREEN_ABB",
NULL,
setting_display_main_auto_rotate_chk_btn_cb);
if (ad->data_auto_rotate) {
ad->data_auto_rotate->userdata = ad;
__BACK_POINTER_SET(ad->data_auto_rotate);
- setting_genlist_item_groupstyle_set(ad->data_auto_rotate, SETTING_GROUP_STYLE_TOP);
} else {
SETTING_TRACE_ERROR("ad->data_battery is NULL");
}
- /* End */
/* BACKLIGHTTIME */
char *pa_backlight_time = get_pa_backlight_time_str();
ad->data_back =
- setting_create_Gendial_exp_parent_field(scroller,
- &itc_2text_3_parent,
- NULL, NULL,
- SWALLOW_Type_INVALID,
- KeyStr_BacklightTime,
- pa_backlight_time,
- SETTING_GROUP_STYLE_CENTER, SETTING_GROUP_STYLE_CENTER);
+ setting_create_Gendial_field_def(scroller,
+ &itc_2text_3_parent,
+ setting_display_main_mouse_up_Gendial_list_cb, ad,
+ SWALLOW_Type_INVALID, NULL, NULL,
+ 0, KeyStr_BacklightTime,
+ pa_backlight_time,
+ NULL);
if (ad->data_back) {
ad->data_back->int_slp_setting_binded = INT_SLP_SETTING_LCD_TIMEOUT_NORMAL;
- ad->data_back->group_style = SETTING_GROUP_STYLE_CENTER;
__BACK_POINTER_SET(ad->data_back);
} else {
SETTING_TRACE_ERROR("ad->data_back is NULL");
}
G_FREE(pa_backlight_time);
- /* BATT PERCENT */
- value = 0;
- vconf_get_bool(VCONFKEY_SETAPPL_BATTERY_PERCENTAGE_BOOL, &value);
- ad->data_battery =
- setting_create_Gendial_field_def(scroller, &(ad->itc_1text_1icon),
- setting_display_main_mouse_up_Gendial_list_cb,
- ad, SWALLOW_Type_1ICON_1RADIO, NULL,
- NULL, value, KeyStr_BatteryPercent,
- NULL,
- setting_display_main_battery_chk_btn_cb);
- if (ad->data_battery) {
- ad->data_battery->userdata = ad;
- ad->data_battery->group_style = SETTING_GROUP_STYLE_NONE;
- __BACK_POINTER_SET(ad->data_battery);
- setting_genlist_item_groupstyle_set(ad->data_battery, SETTING_GROUP_STYLE_BOTTOM);
- } else {
- SETTING_TRACE_ERROR("ad->data_battery is NULL");
- }
-
- ADD_GL_HELP_NO_SEP(scroller, LAUNCH_BATTERY_DESC);
-
#if !SUPPOR_SEPARATE_BRIGHTNESS
if (ad->data_br) {
int battery_value;
vconf_notify_key_changed(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW, setting_display_main_lowbat_cb, ad);
#endif
+ /* eventsystem */
+ if (eventsystem_register_event(SYS_EVENT_SCREEN_AUTOROTATE_STATE,
+ &auto_rotate_event_reg_id,
+ (eventsystem_handler)auto_rotate_event_handler, cb) != ES_R_OK) {
+ SETTING_TRACE_ERROR("error");
+ }
+
/* add separator in botton of view */
- item =
+ Elm_Object_Item *item =
elm_genlist_item_append(scroller, &itc_seperator, NULL, NULL,
ELM_GENLIST_ITEM_NONE, NULL, NULL);
elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
retv_if(!(setting_view_display_main.is_create), SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
SettingDisplayUG *ad = (SettingDisplayUG *) cb;
-
- /*evas_object_smart_callback_del(ad->genlist, "realized", __gl_realized_cb); */
-
-#if !SUPPOR_SEPARATE_BRIGHTNESS
+ destruct_brightness(ad);
+#if !SUPPORT_SEPARATE_BRIGHTNESS
/* low battery handler - registration */
vconf_ignore_key_changed(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW, setting_display_main_lowbat_cb);
#endif
-#if SUPPORT_AUTO_ADJUST_SCREEN_TONE
- vconf_ignore_key_changed(VCONFKEY_SETAPPL_BOOL_AUTO_ADJUST_SCREEN_TONE, setting_display_main_adjust_tone_cb);
-#endif
vconf_ignore_key_changed(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, __display_int_vconf_cb);
int ret = 0;
ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL,
if (ret != 0) {
SETTING_TRACE_ERROR("vconf ignore Failed %d", ret);
}
- ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_BATTERY_PERCENTAGE_BOOL,
- setting_display_main_vconf_change_cb);
- if (ret != 0) {
- SETTING_TRACE_ERROR("vconf ignore Failed %d", ret);
- }
ret = vconf_ignore_key_changed(VCONFKEY_SETAPPL_DYNAMIC_STATUS_BAR,
setting_display_main_vconf_change_cb);
if (ret != 0) {
}
setting_view_display_main.is_create = 0;
+ if (ES_R_OK != eventsystem_unregister_event(auto_rotate_event_reg_id)) {
+ SETTING_TRACE_ERROR("error");
+ }
return SETTING_RETURN_SUCCESS;
}
elm_genlist_realized_items_update(ad->genlist);
}
+
+Eina_Bool ___display_freeze_event_timer_cb(void *cb)
+{
+ SETTING_TRACE_BEGIN;
+ retv_if(cb == NULL, EINA_FALSE);
+
+ SettingDisplayUG *ad = (SettingDisplayUG *)cb;
+
+ evas_object_freeze_events_set(ad->navi_bar, EINA_FALSE);
+ ad->event_freeze_timer = NULL;
+ return EINA_FALSE;
+}
+
gboolean setting_display_create_font_sg(void *data)
{
+ SETTING_TRACE_BEGIN;
/* error check */
retv_if(data == NULL, FALSE);
SettingDisplayUG *ad = (SettingDisplayUG *) data; /* ad is point to data */
-
- if (ad->ug_font) {
- SETTING_TRACE("Font UG is already loaded.");
- return FALSE;
- }
- struct ug_cbs *cbs = (struct ug_cbs *)calloc(1, sizeof(struct ug_cbs));
-
- if (!cbs) {
- return FALSE;
- }
- cbs->layout_cb = setting_display_layout_ug_cb;
- cbs->result_cb = NULL;
- cbs->destroy_cb = setting_display_destroy_font_ug_cb;
- cbs->priv = (void *)ad;
-
- elm_object_tree_focus_allow_set(ad->ly_main, EINA_FALSE);
- ad->ug_font = setting_ug_create(ad->ug, "setting-font-efl", UG_MODE_FULLVIEW, NULL, cbs);
- if (NULL == ad->ug_font) { /* error handling */
- SETTING_TRACE_ERROR("NULL == ad->ug_font");
- evas_object_show(ad->ly_main);
+ if (0 == app_launcher("setting-font-efl")) {
+ if (ad->event_freeze_timer) {
+ ecore_timer_del(ad->event_freeze_timer);
+ ad->event_freeze_timer = NULL;
+ }
+ ad->event_freeze_timer = ecore_timer_add(1, ___display_freeze_event_timer_cb, ad);
+ evas_object_freeze_events_set(ad->navi_bar, EINA_TRUE);
}
-
- FREE(cbs);
-
return TRUE;
}
elm_genlist_item_selected_set(item, 0);
Setting_GenGroupItem_Data *list_item =
(Setting_GenGroupItem_Data *) elm_object_item_data_get(item);
+ setting_retm_if(NULL == list_item, "list_item is NULL");
SettingDisplayUG *ad = (SettingDisplayUG *) data;
SETTING_TRACE("clicking item[%s]", _(list_item->keyStr));
- if (!safeStrCmp("IDS_COM_OPT_BRIGHTNESS", list_item->keyStr)) {
+ if (!safeStrCmp("IDS_ST_BODY_BRIGHTNESS_M_POWER_SAVING", list_item->keyStr)) {
setting_view_change(&setting_view_display_main,
&setting_view_display_brightness, ad);
- }
-#if SUPPORT_AUTO_ADJUST_SCREEN_TONE
- else if (!safeStrCmp(KeyStr_AdjustScreenTone, list_item->keyStr)) {
- setting_update_gl_item_chk_status(list_item, !(list_item->chk_status));
- vconf_set_bool(VCONFKEY_SETAPPL_LCD_AUTO_DISPLAY_ADJUSTMENT, list_item->chk_status);
- setting_display_set_auto_adjust_tone(list_item->chk_status);
- }
-#endif
-#if SUPPORT_HIGH_TOUCH_SENS
- else if (!safeStrCmp(KeyStr_HighTouchSens, list_item->keyStr)) {
+ } else if (!safeStrCmp("IDS_ST_HEADER_AUTO_ROTATE_SCREEN_ABB", list_item->keyStr)) {
setting_update_gl_item_chk_status(list_item, !(list_item->chk_status));
- int err = display_set_enhanced_touch(list_item->chk_status);
- SETTING_TRACE("display_set_enhanced_touch[%d]", err);
- }
-#endif
-#if OPENING_EFFECT
- else if (!safeStrCmp(LAUNCH_EFFECT_STR, list_item->keyStr)) {
- setting_update_gl_item_chk_status(list_item, !(list_item->chk_status));
- setting_display_main_effect_set_value(list_item);
- }
-#endif
-#ifdef UNUSED_VCONFKEY
- else if (!safeStrCmp(LAUNCH_IMAGE_STR, list_item->keyStr)) {
- setting_update_gl_item_chk_status(list_item, !(list_item->chk_status));
- int err;
- setting_set_bool_slp_key(BOOL_SLP_SETTING_LAUNCH_IMAGE,
- list_item->chk_status, &err);
- }
-#endif
-
- else if (!safeStrCmp(KeyStr_BatteryPercent, list_item->keyStr)) {
- setting_update_gl_item_chk_status(list_item, !(list_item->chk_status));
- vconf_set_bool(VCONFKEY_SETAPPL_BATTERY_PERCENTAGE_BOOL, list_item->chk_status);
- } else if (!safeStrCmp(Keystr_ScreenMode, list_item->keyStr)) {
- /*setting_view_change(&setting_view_display_main, &setting_view_display_screen_mode, ad); */
- } else if (!safeStrCmp(Keystr_SmartScreen, list_item->keyStr)) {
- /*setting_view_change(&setting_view_display_main, &setting_view_display_smart_screen, ad); */
- } else if (!safeStrCmp(KEYSTR_SCREEN_ROTATION, list_item->keyStr)) {
- setting_update_gl_item_chk_status(list_item, !(list_item->chk_status));
-
- if (list_item->chk_status == 1) {
- int angle = elm_win_rotation_get(ad->win_main_layout);
- elm_win_rotation_with_resize_set(ad->win_main_layout, angle);
- } else {
- elm_win_rotation_with_resize_set(ad->win_main_layout, 0);
- }
-
vconf_set_bool(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL, list_item->chk_status);
} else if (!safeStrCmp(KeyStr_Font, list_item->keyStr)) {
setting_display_create_font_sg(ad);
- } else if (!safeStrCmp(keystr_LedIndicator, list_item->keyStr)) {
- setting_display_create_ledindicator_sg(ad);
- } else if (!safeStrCmp(KeyStr_ScreenCapture_Edit, list_item->keyStr)) {
- setting_update_gl_item_chk_status(list_item, !(list_item->chk_status));
- vconf_set_bool(VCONFKEY_SETAPPL_SCREEN_CAPTURE_EDIT_AFTER_CAPTURE, list_item->chk_status);
- } else if (!safeStrCmp(KeyStr_Dynamic_Status_Bar, list_item->keyStr)) {
- setting_update_gl_item_chk_status(list_item, !(list_item->chk_status));
- vconf_set_bool(VCONFKEY_SETAPPL_DYNAMIC_STATUS_BAR, list_item->chk_status);
+ } else if (!safeStrCmp(KeyStr_BacklightTime, list_item->keyStr)) {
+ setting_display_screen_timeout_popup(ad);
}
}
}
-#if SUPPORT_AUTO_ADJUST_SCREEN_TONE
-static void setting_display_main_auto_adjust_chk_btn_cb(void *data, Evas_Object *obj, void *event_info)
-{
- SETTING_TRACE_BEGIN;
- /* error check */
- retm_if(data == NULL, "Data parameter is NULL");
- Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
-
- list_item->chk_status = elm_check_state_get(obj); /* for genlist update status */
- vconf_set_bool(VCONFKEY_SETAPPL_LCD_AUTO_DISPLAY_ADJUSTMENT, list_item->chk_status);
- setting_display_set_auto_adjust_tone(list_item->chk_status);
-}
-#endif
-
static void setting_display_main_auto_rotate_chk_btn_cb(void *data, Evas_Object *obj, void *event_info)
{
SETTING_TRACE_BEGIN;
list_item->chk_status = elm_check_state_get(obj); /* for genlist update status */
+ #if FUNCTION_SYSTEM_SETTING
if (list_item->chk_status == 1) {
int angle = elm_win_rotation_get(ad->win_main_layout);
elm_win_rotation_with_resize_set(ad->win_main_layout, angle);
+ int ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO, true);
+ if (ret == SYSTEM_SETTINGS_ERROR_NONE) {
+ SETTING_TRACE("SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO is OK");
+ }
} else {
elm_win_rotation_with_resize_set(ad->win_main_layout, 0);
+ int ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO, false);
+ if (ret == SYSTEM_SETTINGS_ERROR_NONE) {
+ SETTING_TRACE("SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO is OK");
+ }
}
-
- vconf_set_bool(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL, list_item->chk_status);
-}
-
-
-static void
-setting_display_main_battery_chk_btn_cb(void *data, Evas_Object *obj,
- void *event_info)
-{
- SETTING_TRACE_BEGIN;
- /* error check */
- retm_if(data == NULL, "Data parameter is NULL");
- Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *) data;
-
- list_item->chk_status = elm_check_state_get(obj); /* for genlist update status */
- vconf_set_bool(VCONFKEY_SETAPPL_BATTERY_PERCENTAGE_BOOL, list_item->chk_status);
-}
-
-
-#if OPENING_EFFECT
-static void
-setting_display_main_launch_effect_chk_btn_cb(void *data, Evas_Object *obj,
- void *event_info)
-{
- SETTING_TRACE_BEGIN;
- /* error check */
- retm_if(data == NULL, "Data parameter is NULL");
- Setting_GenGroupItem_Data *list_item =
- (Setting_GenGroupItem_Data *) data;
-
- list_item->chk_status = elm_check_state_get(obj); /* for genlist update status */
- setting_display_main_effect_set_value(list_item);
- return;
-}
-#endif
-
-#ifdef UNUSED_VCONFKEY
-/* Fake image - launch effect*/
-static void
-setting_display_main_launch_image_chk_btn_cb(void *data, Evas_Object *obj,
- void *event_info)
-{
- SETTING_TRACE_BEGIN;
- /* error check */
- retm_if(data == NULL, "Data parameter is NULL");
- Setting_GenGroupItem_Data *list_item =
- (Setting_GenGroupItem_Data *) data;
-
- list_item->chk_status = elm_check_state_get(obj); /* for genlist update status */
-
- int err;
- setting_set_bool_slp_key(BOOL_SLP_SETTING_LAUNCH_IMAGE,
- list_item->chk_status, &err);
-}
-#endif
-#if OPENING_EFFECT
-static Ecore_X_Window setting_display_main_effect_get_root(Evas_Object *
- win_main)
-{
- Ecore_X_Window xwin = 0;
- Ecore_X_Window root = 0;
-
- retv_if(!win_main, root);
-
- xwin = elm_win_xwindow_get(win_main);
- retv_if(!xwin, root);
-
- root = ecore_x_window_root_get(xwin);
- return root;
-}
-
-static void setting_display_main_effect_set_value(void *data)
-{
- Setting_GenGroupItem_Data *list_item =
- (Setting_GenGroupItem_Data *) data;
- SettingDisplayUG *ad = list_item->userdata;
- Ecore_X_Window root = 0;
- Ecore_X_Atom effect_enable_atom = 0;
- unsigned int is_enable = 0; /* 0: effect disable, 1: effect enable */
-
- root = setting_display_main_effect_get_root(ad->win_main_layout);
- ret_if(!root);
- effect_enable_atom = ecore_x_atom_get("_NET_CM_EFFECT_ENABLE");
- ret_if(!effect_enable_atom);
-
- if (list_item->chk_status) {
- is_enable = 1;
+ #else
+ if (list_item->chk_status == 1) {
+ int angle = elm_win_rotation_get(ad->win_main_layout);
+ elm_win_rotation_with_resize_set(ad->win_main_layout, angle);
+ setting_set_event_system(SYS_EVENT_SCREEN_AUTOROTATE_STATE, EVT_KEY_SCREEN_AUTOROTATE_STATE, EVT_VAL_SCREEN_AUTOROTATE_ON);
+ } else {
+ elm_win_rotation_with_resize_set(ad->win_main_layout, 0);
+ setting_set_event_system(SYS_EVENT_SCREEN_AUTOROTATE_STATE, EVT_KEY_SCREEN_AUTOROTATE_STATE, EVT_VAL_SCREEN_AUTOROTATE_OFF);
}
- ecore_x_window_prop_card32_set(root, effect_enable_atom, &is_enable, 1);
- return;
+ vconf_set_bool(VCONFKEY_SETAPPL_AUTO_ROTATE_SCREEN_BOOL, list_item->chk_status);
+ #endif
}
-#endif