fix to work touch sounds well
[apps/core/preloaded/settings.git] / setting-profile / src / setting-profile-sound-main.c
index 8dd3cbc..37c3a58 100755 (executable)
@@ -532,6 +532,9 @@ static Evas_Object *__get_main_list(void *data)
                                         ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
 
        /* Touch sounds */
+       if (vconf_get_bool(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL, &vconf_value) < 0)
+               vconf_value = TRUE;     /*  default value of touch sounds : on */
+
        ad->data_touch_sounds =
            setting_create_Gendial_field_def(genlist, &(ad->itc_1text_1icon),
                                             setting_profile_sound_main_mouse_up_Gendial_list_cb,
@@ -1132,6 +1135,12 @@ setting_profile_sound_main_Gendial_chk_cb(void *data, Evas_Object *obj,
                        elm_check_state_set(list_item->eo_check, !state);
                }
        }
+       else if (!safeStrCmp("IDS_ST_BODY_TOUCH_SOUNDS", list_item->keyStr)) {
+               if (vconf_set_bool(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL, list_item->chk_status) < 0) {
+                       list_item->chk_status = !state;
+                       elm_check_state_set(list_item->eo_check, !state);
+               }
+       }
 
        /* end */
 
@@ -1186,9 +1195,11 @@ setting_profile_sound_main_mouse_up_Gendial_list_cb(void *data,
        else if (!safeStrCmp("IDS_ST_BODY_TOUCH_SOUNDS", list_item->keyStr)) {
                int old_status = elm_check_state_get(list_item->eo_check);
                /* To do : set vconfkey for touch sounds */
-
-               list_item->chk_status = !old_status;
-               elm_check_state_set(list_item->eo_check, list_item->chk_status);
+               if (vconf_set_bool(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL, !old_status) == 0) {
+                       /* new status */
+                       list_item->chk_status = !old_status;
+                       elm_check_state_set(list_item->eo_check, list_item->chk_status);
+               }
        }
        /* end */
        else if (ad->data_msg_alert_repeat == list_item