fix crash popup issue 75/78875/1 submit/tizen/20160707.120414 submit/tizen/20160712.040059 submit/tizen/20160719.083630
authorjin0.kim <jin0.kim@samsung.com>
Thu, 7 Jul 2016 07:58:13 +0000 (16:28 +0830)
committerjin0.kim <jin0.kim@samsung.com>
Thu, 7 Jul 2016 07:58:56 +0000 (16:28 +0830)
Change-Id: I7984323d49c40ac530d04b22294159dc7d681330

inc/common-efl.h
src/allowed-calls.c [changed mode: 0644->0755]
src/common-efl.c
src/do-not-disturb-efl.c [changed mode: 0644->0755]
src/main.c
src/set-schedule-info.c [changed mode: 0644->0755]

index ab3971634f5318777728b938694399c48fd72bbc..d8b00853b498594784fb2f4a0306ace465b01af1 100755 (executable)
@@ -77,6 +77,9 @@ enum {
 };
 
 
+ug_data* get_app_ui_data() ;
+void set_app_ui_data(ug_data *data);
+
 Evas_Object *create_layout(Evas_Object *parent);
 Evas_Object *create_background(Evas_Object *parent);
 Evas_Object *create_naviframe(Evas_Object *parent);
old mode 100644 (file)
new mode 100755 (executable)
index 2c45c2b..611676d
@@ -17,8 +17,6 @@
 
 #include "allowed-calls.h"
 
-extern ug_data g_ug_data;
-
 static char *items[4] = {
     "IDS_QP_TAB4_ALL_M_RECEIVED_ALL",
     "IDS_CST_OPT_CONTACTS_ONLY",
@@ -53,7 +51,11 @@ static void create_reject_calls_popup(const char *title_text, const char *conten
     Evas_Object *scroller;
     Evas_Object *label;
     Evas_Object *check;
-    Evas_Object *win = g_ug_data.win;
+    Evas_Object *win;
+    ug_data *ug_main = get_app_ui_data();
+    ret_if(ug_main == NULL);
+
+    win = ug_main->win;
 
     popup = elm_popup_add(win);
     elm_popup_align_set(popup, ELM_NOTIFY_ALIGN_FILL, 1.0);
@@ -172,7 +174,11 @@ static void create_allow_calls_from_popup()
     Evas_Object *box;
     Evas_Object *genlist;
     int i;
-    Evas_Object *win = g_ug_data.win;
+    Evas_Object *win;
+    ug_data *ug_main = get_app_ui_data();
+    ret_if(ug_main == NULL);
+
+    win = ug_main->win;
 
     popup = elm_popup_add(win);
     elm_popup_orient_set(popup, ELM_POPUP_ORIENT_BOTTOM);
index be64963e1ffe23109488a9ee372e95ffc2a6bdcc..3887b807bb8eb20ae0a4ace7e62167881ff37671 100755 (executable)
 
 #define ICON_SIZE 82
 
-extern ug_data g_ug_data;
+static ug_data *g_ug_data = NULL;
+
+ug_data* get_app_ui_data() {
+       return g_ug_data;
+}
+
+void set_app_ui_data(ug_data *data) {
+       g_ug_data = data;
+}
 
 Evas_Object *create_layout(Evas_Object *parent)
 {
@@ -114,7 +122,7 @@ void gl_selected_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info)
        }
 
        if(data && !strcmp(data, "set-schedule-multiline")) {
-           gl_set_schedule_selected(&g_ug_data);
+           gl_set_schedule_selected(g_ug_data);
     }
 
        if(data && !strcmp(data, "allowed-calls")) {
@@ -241,7 +249,7 @@ static void _allow_to_nofity_check_changed_cb(void *data, Evas_Object *obj, void
        set_allow_to_nofity(data_list->appid, state);
        data_list->allow_to_notify = state;
        /* Update allow all item*/
-       elm_genlist_item_update(elm_genlist_first_item_get(g_ug_data.list_main));
+       elm_genlist_item_update(elm_genlist_first_item_get(g_ug_data->list_main));
        NOTISET_DBG("appid = %s state = %d", data_list->appid, state);
 }
 
old mode 100644 (file)
new mode 100755 (executable)
index ea4040e..a244433
@@ -32,8 +32,6 @@
 #define APP_LAYOUT_HEADER 95 + 64
 #define ITEMS_PER_ROW 5
 
-extern ug_data g_ug_data;
-
 void do_not_disturb_append_item_in_list(Evas_Object* genlist)
 {
     append_gl_start_option(genlist, "multiline", "do-not-disturb");
@@ -45,6 +43,9 @@ void do_not_disturb_append_item_in_list(Evas_Object* genlist)
 
 Evas_Object *do_not_disturb_allowed_apps_cont_cb(Evas_Object* parent, void *data)
 {
+       ug_data *ug_main = get_app_ui_data();
+       retv_if(ug_main == NULL, NULL);
+
     Evas_Object *full_layout = create_custom_layout(parent, ALLOWED_LAYOUT_NAME);
     elm_object_part_text_set(full_layout, ALLOWED_LAYOUT_TEXT_PART, APP_STRING("IDS_QP_HEADER_ALLOW_NOTIFICATIONS_FROM_ABB"));
 
@@ -52,7 +53,8 @@ Evas_Object *do_not_disturb_allowed_apps_cont_cb(Evas_Object* parent, void *data
     evas_object_size_hint_weight_set(select_button, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
     evas_object_size_hint_align_set(select_button, EVAS_HINT_FILL, EVAS_HINT_FILL);
     elm_object_text_set(select_button, APP_STRING("IDS_ST_SK_SELECT_LITE"));
-    evas_object_smart_callback_add(select_button, "clicked", exception_application_clicked_cb, &g_ug_data);
+
+    evas_object_smart_callback_add(select_button, "clicked", exception_application_clicked_cb, ug_main);
     evas_object_show(select_button);
 
     elm_object_part_content_set(full_layout, ALLOWED_LAYOUT_BUTTON_PART,select_button);
index deb3dbf791adf6cd11798319f00d3c009059deec..3adf805733be1e836c99aedb33f1c1466839f65a 100755 (executable)
@@ -33,7 +33,6 @@ typedef enum
        DO_NOT_DISTURB_APP_TYPE
 } app_type;
 
-ug_data g_ug_data;
 
 static Evas_Object *_create_win()
 {
@@ -253,7 +252,11 @@ static void on_language(app_event_info_h event_info, void *user_data)
 
 int main(int argc, char *argv[])
 {
-    NOTISET_TRACE_BEGIN;
+       NOTISET_TRACE_BEGIN;
+
+       ug_data *ug_main = calloc(1, sizeof(ug_data));
+
+       set_app_ui_data(ug_main);
 
        ui_app_lifecycle_callback_s event_callback;
        memset(&event_callback, 0x00, sizeof(ui_app_lifecycle_callback_s));
@@ -263,7 +266,7 @@ int main(int argc, char *argv[])
        event_callback.app_control = on_app_control;
 
        app_event_handler_h ev = NULL;
-       ui_app_add_event_handler(&ev, APP_EVENT_LANGUAGE_CHANGED, on_language, &g_ug_data);
+       ui_app_add_event_handler(&ev, APP_EVENT_LANGUAGE_CHANGED, on_language, ug_main);
 
-       return ui_app_main(argc, argv, &event_callback, &g_ug_data);
+       return ui_app_main(argc, argv, &event_callback, ug_main);
 }
old mode 100644 (file)
new mode 100755 (executable)
index 0e41c15..c51e55a
@@ -18,8 +18,6 @@
 #include "set-scedule-info.h"
 #include <system_settings.h>
 
-extern ug_data g_ug_data;
-
 enum TimeFormat
     {
         time_format_unknown,
@@ -59,11 +57,13 @@ void set_schedule_check_changed_cb(void *data, Evas_Object *obj, void *event_inf
 {
     NOTISET_TRACE_BEGIN;
     //TODO: Will be done, after receiving API
+    ug_data *ug_main = get_app_ui_data();
+    ret_if(ug_main == NULL);
 
     unsigned int i = 0;
     Eina_Bool check = !elm_check_state_get(obj);
-    unsigned int size = elm_genlist_items_count(g_ug_data.list_sub);
-    Elm_Object_Item *item = elm_genlist_first_item_get(g_ug_data.list_sub);
+    unsigned int size = elm_genlist_items_count(ug_main->list_sub);
+    Elm_Object_Item *item = elm_genlist_first_item_get(ug_main->list_sub);
     for(i = 1; i < size; ++i)
     {
         Elm_Object_Item *next = elm_genlist_item_next_get(item);
@@ -229,8 +229,10 @@ static void popup_set_btn_clicked_cb(void *data , Evas_Object *obj , void *event
 static void create_datetime_popup(datetime_s *dt)
 {
     Evas_Object *set_btn, *cancel_btn;
+    ug_data *ug_main = get_app_ui_data();
+    ret_if(ug_main == NULL);
 
-    dt->popup = elm_popup_add(g_ug_data.naviframe);
+    dt->popup = elm_popup_add(ug_main->naviframe);
     eext_object_event_callback_add(dt->popup, EEXT_CALLBACK_BACK, eext_popup_back_cb, NULL);
     evas_object_size_hint_weight_set(dt->popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
     elm_popup_align_set(dt->popup, ELM_NOTIFY_ALIGN_FILL, 0.5);
@@ -254,8 +256,10 @@ static void launch_popup_cb(void *data , Evas_Object *obj , void *event_info)
     datetime_s *dt = data;
     create_datetime_popup(dt);
     Evas_Object *box = elm_box_add(dt->popup);
+    ug_data *ug_main = get_app_ui_data();
+    ret_if(ug_main == NULL);
 
-    dt->datetime = elm_datetime_add(g_ug_data.naviframe);
+    dt->datetime = elm_datetime_add(ug_main->naviframe);
 
     format = evas_object_data_get(obj, "format");
     bool fmt12hours = !strcmp(format, TIME_12_FORMAT);