ringtone: Added ringtone is_default flag in selection result 62/103562/4
authorBartlomiej Uliasz <b.uliasz@samsung.com>
Thu, 8 Dec 2016 16:40:21 +0000 (17:40 +0100)
committerBartlomiej Uliasz <b.uliasz@samsung.com>
Fri, 9 Dec 2016 11:25:45 +0000 (12:25 +0100)
Change-Id: I9c5e1709c1c6798ae8e5591b610304b16cc286ee
Signed-off-by: Bartlomiej Uliasz <b.uliasz@samsung.com>
setting-ringtone/include/setting-ringtone.h
setting-ringtone/src/setting-ringtone-main.c

index 02942ee780189feaccc5dc5ba1dd5c99f2915955..23ac7b8d2615f88f05e1fdeb6441ddf26a9bd5bf 100644 (file)
@@ -63,6 +63,7 @@
 
        /*selected item data */
        const Setting_GenGroupItem_Data *selected_item_data;
+       const Setting_GenGroupItem_Data *default_item_data;
 } SettingRingtoneData;
 
 #endif                         /* __SETTING_RINGTONE_H__ */
index 5240de1cf6e3ccc76188a8247070f26f434aad19..57e136caa3815b76e4b30a5c487c30e46544092e 100755 (executable)
@@ -35,6 +35,7 @@
 #define RINGTONE_FILE_PATH_DEF _TZ_SYS_SHARE\
                                "/settings/Ringtones/Over_the_horizon.ogg"
 #define ALERT_FILE_PATH_DEF    _TZ_SYS_SHARE"/settings/Alerts/Beep_Once.ogg"
+#define RINGTONE_SELECTED_IS_DEFAULT_KEY       "is_default"
 
 static int setting_ringtone_create(void *cb);
 static int setting_ringtone_destroy(void *cb);
@@ -204,16 +205,20 @@ static void _cancel_click_cb(void *data, Evas_Object *obj, void *event_info)
 static void _done_click_cb(void *data, Evas_Object *obj,
                void *event_info)
 {
-       const char *selected_files_arr[1] = {NULL};
-
        SETTING_TRACE_BEGIN;
-       retm_if(data == NULL, "Data parameter is NULL");
+       const char *selected_file[1] = {NULL};
        SettingRingtoneData *ad = (SettingRingtoneData *)data;
+       retm_if(!ad, "Data parameter is NULL");
+
+       selected_file[0] = ad->selected_file_path;
 
-       selected_files_arr[0] = ad->selected_file_path;
        app_control_add_extra_data_array(ad->md.app_reply_svc,
-                       APP_CONTROL_DATA_SELECTED, selected_files_arr,
-                       sizeof(selected_files_arr)/sizeof(const char *));
+                       APP_CONTROL_DATA_SELECTED, selected_file,
+                       sizeof(selected_file)/sizeof(const char *));
+       app_control_add_extra_data(ad->md.app_reply_svc,
+                       RINGTONE_SELECTED_IS_DEFAULT_KEY,
+                       (ad->selected_item_data == ad->default_item_data) ?
+                                       "true" : "false");
        ui_app_exit();
        SETTING_TRACE_END;
 }
@@ -353,11 +358,10 @@ static char *_get_default_filepath(SettingRingtoneData *ad)
        char *default_ringtone = NULL;
        retv_if(ad == NULL, NULL);
 
-       if (ad->show_notification) {
+       if (ad->show_notification)
                default_ringtone = strdup(ALERT_FILE_PATH_DEF);
-       } else {
+       else
                default_ringtone = strdup(RINGTONE_FILE_PATH_DEF);
-       }
 
        return default_ringtone;
 }
@@ -638,6 +642,7 @@ static void _create_main_ui_list(SettingRingtoneData *ad)
                        item_data->keyStr = strdup("Default");
                        item_data->filepath = _get_default_filepath(ad);
                        ad->selected_file_path = _get_default_filepath(ad);
+                       ad->default_item_data = item_data;
                }
                cur_pos = cnt;
                cur_item = item_data->item;