TizenRefApp-6134 String IDs in Call Application 76/66576/1 accepted/tizen/mobile/20160420.044001 submit/tizen/20160419.143251 submit/tizen_mobile/20160425.082809
authorIgor Olshevskyi <i.olshevskyi@samsung.com>
Tue, 19 Apr 2016 12:29:48 +0000 (15:29 +0300)
committerIgor Olshevskyi <i.olshevskyi@samsung.com>
Tue, 19 Apr 2016 12:29:48 +0000 (15:29 +0300)
Change-Id: I6c952c3789ad25048a31aae1af8d9a798e8e070f

16 files changed:
CMake/CMakeLists.txt
inc/callui-common-def.h
inc/callui-common.h
src/callui-action-bar.c
src/callui-common.c
src/callui-view-callend.c
src/callui-view-circle.c
src/callui-view-elements.c
src/callui-view-incoming-call-noti.c
src/callui-view-incoming-call.c
src/callui-view-lock-screen.c
src/callui-view-manager.c
src/callui-view-multi-call-list.c
src/callui-view-multi-call-split.c
src/callui-view-quickpanel.c
src/callui.c

index 4ac1af8..fc033ba 100755 (executable)
@@ -8,7 +8,7 @@ SET(PKG_NAME ${CMAKE_PKG_NAME})
 SET(BIN_DIR ${CMAKE_BIN_DIR})
 SET(RES_DIR ${CMAKE_RES_DIR})
 
-SET(LOCALE_DIR "${RES_DIR}/po")
+SET(LOCALE_DIR "${RES_DIR}/locale")
 SET(EDJ_DIR "${RES_DIR}/edje")
 SET(IMG_DIR "${RES_DIR}/images")
 
index 65f35a1..331a95c 100644 (file)
@@ -26,8 +26,6 @@
 
 #define PACKAGE        "org.tizen.call-ui"
 
-#define CALLUI_TEXT_DOMAIN     "call-ui"
-
 #define CALL_EDJ_NAME          "/edje/call.edj"
 #define CALL_THEME_EDJ_NAME    "/edje/call_theme.edj"
 
@@ -41,7 +39,7 @@
 #define MSG_PKG                "org.tizen.message"
 
 #undef _
-#define _(s) dgettext(CALLUI_TEXT_DOMAIN, s)
+#define _(s) gettext(s)
 
 #define GRP_MAIN_LY "main_ly"
 #define GRP_KEYPAD "keypad"
index bd07c74..29be66a 100644 (file)
@@ -236,21 +236,4 @@ char *_callui_common_get_time_string(struct tm *time);
  */
 struct tm *_callui_common_get_current_time_diff_in_tm(long time);
 
-/**
- * @brief Set the text for an object's part, marking it translatable for call app domain
- * @param[in] obj                      Evas object containing the text part
- * @param[in] part                     name of the part to set
- * @param[in] ids_string       IDS string to for text part
- */
-void _callui_common_eo_txt_part_set_translatable_text(Evas_Object *obj,
-               const char *part,
-               const char *ids_string);
-
-/**
- * @brief Set the text to Eas_object marking it translatable for call app domain
- * @param[in] obj                      Evas object to set text
- * @param[in] ids_string       IDS string to set into the object
- */
-void _callui_common_eo_set_translatable_text(Evas_Object *obj, const char *ids_string);
-
 #endif /*__CALLUI_COMMON_H_ */
index fcdaa11..b7d7db7 100644 (file)
@@ -405,7 +405,7 @@ static Evas_Object *__create_action_button(
                CALLUI_RETURN_NULL_IF_FAIL(res == CALLUI_RESULT_OK);
        }
 
-       _callui_common_eo_set_translatable_text(btn, btn_params[type].txt);
+       elm_object_translatable_text_set(btn, btn_params[type].txt);
        evas_object_smart_callback_add(btn, "clicked", btn_params[type].click_cb_func, action_bar->ad);
        elm_object_part_content_set(parent, btn_params[type].part, btn);
        evas_object_show(btn);
@@ -556,7 +556,7 @@ static void __update_btns_txt(callui_action_bar_h action_bar)
 {
        int i = 0;
        for (; i < CALLUI_ACTION_BTN_COUNT; i++) {
-               _callui_common_eo_set_translatable_text(action_bar->buttons[i], btn_params[i].txt);
+               elm_object_translatable_text_set(action_bar->buttons[i], btn_params[i].txt);
        }
 }
 
index 8b64216..13945d3 100755 (executable)
@@ -694,23 +694,3 @@ struct tm *_callui_common_get_current_time_diff_in_tm(long time)
 
        return time_tm;
 }
-
-void _callui_common_eo_txt_part_set_translatable_text(Evas_Object *obj,
-               const char *part,
-               const char *ids_string)
-{
-       CALLUI_RETURN_IF_FAIL(obj);
-       CALLUI_RETURN_IF_FAIL(part);
-       CALLUI_RETURN_IF_FAIL(ids_string);
-
-       elm_object_domain_translatable_part_text_set(obj, part, CALLUI_TEXT_DOMAIN, ids_string);
-}
-
-void _callui_common_eo_set_translatable_text(Evas_Object *obj, const char *ids_string)
-{
-       CALLUI_RETURN_IF_FAIL(obj);
-       CALLUI_RETURN_IF_FAIL(ids_string);
-
-       elm_object_domain_translatable_text_set(obj, CALLUI_TEXT_DOMAIN, ids_string);
-
-}
index 87a9662..b50b52f 100644 (file)
@@ -154,7 +154,7 @@ static callui_result_e __create_call_back_btn(callui_view_callend_h vd)
        Evas_Object *button_call_back = _callui_load_edj(vd->base_view.contents, EDJ_NAME, GRP_ENDCALL_CALL_BACK_BTN);
        CALLUI_RETURN_VALUE_IF_FAIL(button_call_back, CALLUI_RESULT_ALLOCATION_FAIL);
        edje_object_signal_callback_add(_EDJ(button_call_back), "clicked", "edje", __call_back_btn_click_cb, vd);
-       _callui_common_eo_txt_part_set_translatable_text(button_call_back,
+       elm_object_translatable_part_text_set(button_call_back,
                        "end_btn_text", "IDS_CALL_BUTTON_CALL");
        elm_object_part_content_set(vd->base_view.contents, "button_call_back", button_call_back);
 
@@ -166,7 +166,7 @@ static callui_result_e __create_message_btn(callui_view_callend_h vd)
        Evas_Object *button_message = _callui_load_edj(vd->base_view.contents, EDJ_NAME, GRP_ENDCALL_MSG_BTN);
        CALLUI_RETURN_VALUE_IF_FAIL(button_message,  CALLUI_RESULT_ALLOCATION_FAIL);
        edje_object_signal_callback_add(_EDJ(button_message), "clicked", "edje", __msg_btn_click_cb, vd);
-       _callui_common_eo_txt_part_set_translatable_text(button_message,
+       elm_object_translatable_part_text_set(button_message,
                        "end_btn_text", "IDS_COM_BODY_MESSAGE");
        elm_object_part_content_set(vd->base_view.contents, "button_message_back", button_message);
 
@@ -184,7 +184,7 @@ static callui_result_e __create_single_contact_info(callui_view_callend_h vd, co
                elm_object_part_content_set(vd->base_view.contents, "swallow.create_contact", button_create);
 
                elm_object_part_text_set(vd->base_view.contents, "contact_name", vd->call_number);
-               _callui_common_eo_txt_part_set_translatable_text(vd->base_view.contents, "contact_number", "IDS_COM_OPT_ADD_TO_CONTACTS");
+               elm_object_translatable_part_text_set(vd->base_view.contents, "contact_number", "IDS_COM_OPT_ADD_TO_CONTACTS");
        } else {
                elm_object_part_text_set(vd->base_view.contents, "contact_name", call_name);
                elm_object_part_text_set(vd->base_view.contents, "contact_number", vd->call_number);
@@ -214,7 +214,7 @@ static callui_result_e __set_single_call_info(callui_view_callend_h vd, const ca
        }
 
        if (!(call_name && call_name[0] != '\0') && !(call_number && call_number[0] != '\0')) {
-               _callui_common_eo_txt_part_set_translatable_text(vd->base_view.contents,
+               elm_object_translatable_part_text_set(vd->base_view.contents,
                                "contact_name", "IDS_CALL_BODY_UNKNOWN");
                return CALLUI_RESULT_OK;
        }
@@ -236,13 +236,13 @@ static callui_result_e __set_single_call_info(callui_view_callend_h vd, const ca
 static void __set_emergency_call_info(callui_view_callend_h vd, const callui_call_data_t *call_data)
 {
        elm_object_signal_emit(vd->base_view.contents, "set_emergency_mode", "main_end_call");
-       _callui_common_eo_txt_part_set_translatable_text(vd->base_view.contents, "contact_name", "IDS_COM_BODY_EMERGENCY_NUMBER");
+       elm_object_translatable_part_text_set(vd->base_view.contents, "contact_name", "IDS_COM_BODY_EMERGENCY_NUMBER");
 }
 
 static void __set_conference_call_info(callui_view_callend_h vd, const callui_call_data_t *call_data)
 {
        elm_object_signal_emit(vd->base_view.contents, "set_conference_mode", "main_end_call");
-       _callui_common_eo_txt_part_set_translatable_text(vd->base_view.contents,
+       elm_object_translatable_part_text_set(vd->base_view.contents,
                        "contact_name", "IDS_CALL_BODY_CONFERENCE");
 
        char *status = _("IDS_CALL_BODY_WITH_PD_PEOPLE_M_CONFERENCE_CALL_ABB");
@@ -466,7 +466,7 @@ static Eina_Bool __ending_timer_blink_cb(void *data)
        if (vd->blink_cnt == BLINKING_MAX_COUNT) {
                /* Run a timer of 2 sec for destroying the end selection menu */
                DELETE_ECORE_TIMER(vd->ending_timer);
-               _callui_common_eo_txt_part_set_translatable_text(vd->base_view.contents,
+               elm_object_translatable_part_text_set(vd->base_view.contents,
                                "call_txt_status", "IDS_CALL_BODY_CALL_ENDE_M_STATUS_ABB");
                vd->ending_timer = ecore_timer_add(ENDING_TIMER_INTERVAL, __ending_timer_expired_cb, vd);
 
index 2a66533..d5b7b3e 100755 (executable)
@@ -385,7 +385,7 @@ callui_result_e _callui_view_circle_create_reject_layout(callui_app_data_t *ad,
 
        elm_object_signal_emit(lock_reject, "outer_circle,hide", "outer-circle");
 
-       _callui_common_eo_txt_part_set_translatable_text(lock_reject,
+       elm_object_translatable_part_text_set(lock_reject,
                        "reject_text", "IDS_CALL_BUTTON_REJECT");
 
        evas_object_data_set(lock_reject, CALLUI_CIRCLE_LAYOUT_DATA, vd);
@@ -445,7 +445,7 @@ callui_result_e _callui_view_circle_create_accept_layout(callui_app_data_t *ad,
 
        evas_object_data_set(lock_accept, CALLUI_CIRCLE_LAYOUT_DATA, vd);
 
-       _callui_common_eo_txt_part_set_translatable_text(lock_accept,
+       elm_object_translatable_part_text_set(lock_accept,
                        "accept_text", "IDS_CALL_BUTTON_ACCEPT");
        evas_object_event_callback_add(lock_accept, EVAS_CALLBACK_MOUSE_DOWN, __callui_view_circle_mouse_down_cb, ad);
        evas_object_event_callback_add(lock_accept, EVAS_CALLBACK_MOUSE_MOVE, __callui_view_circle_mouse_move_cb, ad);
index 002943b..110cbb6 100755 (executable)
@@ -171,7 +171,7 @@ Evas_Object *_callui_create_thumbnail_with_size(Evas_Object *parent, const char
 void _callui_show_caller_info_name(void *data, const char *name)
 {
        Evas_Object *layout = __callui_get_caller_info_layout(data);
-       _callui_common_eo_txt_part_set_translatable_text(layout, "txt_call_name", name);
+       elm_object_translatable_part_text_set(layout, "txt_call_name", name);
 }
 
 /* Caller info number */
@@ -186,7 +186,7 @@ Evas_Object *_callui_show_caller_info_status(void *data, const char *status)
 {
        callui_app_data_t *ad = (callui_app_data_t *)data;
        Evas_Object *layout = elm_object_part_content_get(ad->main_ly, "elm.swallow.content");
-       _callui_common_eo_txt_part_set_translatable_text(layout, "call_txt_status", status);
+       elm_object_translatable_part_text_set(layout, "call_txt_status", status);
 
        return layout;
 }
@@ -455,7 +455,7 @@ void _callui_load_second_call_popup(callui_app_data_t *ad)
        ad->second_call_popup = elm_popup_add(ad->win);
        CALLUI_RETURN_IF_FAIL(ad->second_call_popup);
        elm_popup_align_set(ad->second_call_popup, ELM_NOTIFY_ALIGN_FILL, 1.0);
-       elm_object_domain_translatable_part_text_set(ad->second_call_popup, "title,text", CALLUI_TEXT_DOMAIN, "IDS_CALL_HEADER_ANSWER_CALL_ABB");
+       elm_object_translatable_part_text_set(ad->second_call_popup, "title,text", "IDS_CALL_HEADER_ANSWER_CALL_ABB");
        evas_object_size_hint_weight_set(ad->second_call_popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
 
        box = elm_box_add(ad->second_call_popup);
@@ -718,18 +718,18 @@ void _callui_load_bluetooth_popup(callui_app_data_t *ad)
        elm_popup_align_set(ad->bt_popup, ELM_NOTIFY_ALIGN_FILL, 1.0);
        evas_object_size_hint_weight_set(ad->bt_popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
 
-       elm_object_domain_translatable_part_text_set(ad->bt_popup, "title,text", CALLUI_TEXT_DOMAIN, "IDS_CALL_HEADER_TURN_ON_BLUETOOTH_ABB");
-       _callui_common_eo_set_translatable_text(ad->bt_popup, "IDS_CALL_POP_TO_SWITCH_TO_USING_YOUR_BLUETOOTH_DEVICE_BLUETOOTH_WILL_BE_TURNED_ON");
+       elm_object_translatable_part_text_set(ad->bt_popup, "title,text", "IDS_CALL_HEADER_TURN_ON_BLUETOOTH_ABB");
+       elm_object_translatable_text_set(ad->bt_popup, "IDS_CALL_POP_TO_SWITCH_TO_USING_YOUR_BLUETOOTH_DEVICE_BLUETOOTH_WILL_BE_TURNED_ON");
 
        btn_cancel = elm_button_add(ad->bt_popup);
        elm_object_style_set(btn_cancel, "popup");
-       _callui_common_eo_set_translatable_text(btn_cancel, "IDS_COM_SK_CANCEL");
+       elm_object_translatable_text_set(btn_cancel, "IDS_COM_SK_CANCEL");
        elm_object_part_content_set(ad->bt_popup, "button1", btn_cancel);
        evas_object_smart_callback_add(btn_cancel, "clicked", __callui_bt_popup_cancel_btn_cb, ad);
 
        btn_ok = elm_button_add(ad->bt_popup);
        elm_object_style_set(btn_ok, "popup");
-       _callui_common_eo_set_translatable_text(btn_ok, "IDS_COM_SK_OK");
+       elm_object_translatable_text_set(btn_ok, "IDS_COM_SK_OK");
        elm_object_part_content_set(ad->bt_popup, "button2", btn_ok);
        evas_object_smart_callback_add(btn_ok, "clicked", __callui_bt_popup_ok_btn_cb, ad);
 
@@ -763,7 +763,7 @@ int _callui_create_reject_msg_button(void *app_data, Evas_Object *parent, const
        CALLUI_RETURN_VALUE_IF_FAIL(msg_button, CALLUI_RESULT_ALLOCATION_FAIL);
 
        elm_object_style_set(msg_button, "default");
-       _callui_common_eo_set_translatable_text(msg_button,  "IDS_CALL_BUTTON_COMPOSE_MESSAGE_TO_SEND_ABB");
+       elm_object_translatable_text_set(msg_button,  "IDS_CALL_BUTTON_COMPOSE_MESSAGE_TO_SEND_ABB");
        evas_object_smart_callback_add(msg_button, "clicked", __callui_create_new_msg_btn_click_cb, app_data);
        elm_object_part_content_set(parent, part, msg_button);
        evas_object_show(msg_button);
index c8c3491..0ce2394 100644 (file)
@@ -448,7 +448,7 @@ static callui_result_e __update_displayed_data(callui_view_incoming_call_noti_h
 
        if (!(call_name && call_name[0] != '\0') && !(call_number && call_number[0] != '\0')) {
                elm_object_signal_emit(vd->base_view.contents, "big_buttons", "main_active_noti_call");
-               _callui_common_eo_txt_part_set_translatable_text(vd->base_view.contents,
+               elm_object_translatable_part_text_set(vd->base_view.contents,
                                "text.contact_name", "IDS_CALL_BODY_UNKNOWN");
        } else if (!(call_name && call_name[0] != '\0')) {
                elm_object_signal_emit(vd->base_view.contents, "small_buttons", "main_active_noti_call");
index c8c725d..4278f99 100644 (file)
@@ -760,7 +760,7 @@ static void __create_reject_msg_layout(callui_view_incoming_call_h vd)
        evas_object_event_callback_add(reject_msg_bg, EVAS_CALLBACK_MOUSE_MOVE, __reject_msg_bg_mouse_move_cb, vd);
        evas_object_event_callback_add(reject_msg_bg, EVAS_CALLBACK_MOUSE_UP, __reject_msg_bg_mouse_up_cb, vd);
 
-       _callui_common_eo_txt_part_set_translatable_text(vd->reject_msg_layout,
+       elm_object_translatable_part_text_set(vd->reject_msg_layout,
                        "reject_msg_text", "IDS_VCALL_BUTTON2_REJECT_CALL_WITH_MESSAGE");
 
        elm_object_signal_emit(vd->reject_msg_layout, "show-up-arrow", "reject_msg");
index 730c78c..cb9df62 100755 (executable)
@@ -222,7 +222,7 @@ static bool __callui_lock_screen_create_layout(lock_screen_data_t *priv)
 
        evas_object_resize(layout, ad->root_w, ad->root_h);
        evas_object_move(layout, 0, 0);
-       elm_object_domain_translatable_part_text_set(layout, "lock-text", CALLUI_TEXT_DOMAIN, "IDS_CALL_NPBODY_DOUBLE_TAP_THE_LOCK_ICON_TO_UNLOCK_YOUR_DEVICE");
+       elm_object_translatable_part_text_set(layout, "lock-text", "IDS_CALL_NPBODY_DOUBLE_TAP_THE_LOCK_ICON_TO_UNLOCK_YOUR_DEVICE");
 
        edje_object_signal_callback_add(_EDJ(layout), "mouse,down,1,double", "lock-icon", __callui_lock_screen_icon_double_clicked_cb, priv);
 
index 0bf2a72..12b7006 100644 (file)
@@ -389,7 +389,7 @@ static void __update_cur_view(callui_vm_h vm)
 {
        call_view_data_base_t *cur_view = vm->cur_view;
 
-       if (cur_view->update && cur_view->update_flags) {
+       if (cur_view && cur_view->update && cur_view->update_flags) {
                cur_view->update(vm->cur_view);
                cur_view->update_flags = 0;
        }
index fe75712..75a9009 100755 (executable)
@@ -193,7 +193,7 @@ static callui_result_e __create_main_content(callui_view_mc_list_h vd)
        Evas_Object *back_btn = elm_button_add(vd->base_view.contents);
        CALLUI_RETURN_VALUE_IF_FAIL(back_btn, CALLUI_RESULT_ALLOCATION_FAIL);
        elm_object_style_set(back_btn, "bottom");
-       _callui_common_eo_set_translatable_text(back_btn, "IDS_CALL_BUTTON_RETURN_TO_CALL_SCREEN_ABB");
+       elm_object_translatable_text_set(back_btn, "IDS_CALL_BUTTON_RETURN_TO_CALL_SCREEN_ABB");
        elm_object_part_content_set(vd->base_view.contents, "bottom_btn", back_btn);
        evas_object_smart_callback_add(back_btn, "clicked", __back_btn_click_cb, ad);
        evas_object_show(back_btn);
index 0ffdab2..b3ed801 100755 (executable)
@@ -200,7 +200,7 @@ static Evas_Object *__create_merge_swap_btn(Evas_Object *parent, const char *nam
        Evas_Object *layout = elm_layout_add(parent);
        elm_layout_file_set(layout, EDJ_NAME, name);
 
-       _callui_common_eo_txt_part_set_translatable_text(layout, MERGE_SWAP_BTN_PART_TEXT, text);
+       elm_object_translatable_part_text_set(layout, MERGE_SWAP_BTN_PART_TEXT, text);
 
        return layout;
 }
@@ -237,7 +237,7 @@ static void __fill_conference_layout(Evas_Object *parent, const callui_call_data
        Evas_Object *thumbnail = _callui_create_thumbnail(parent, NULL, CONFERENCE_THUMBNAIL_138);
        elm_object_part_content_set(parent, PART_SWALLOW_CALLER_ID, thumbnail);
 
-       _callui_common_eo_txt_part_set_translatable_text(parent,
+       elm_object_translatable_part_text_set(parent,
                        PART_TEXT_MAIN, "IDS_CALL_BODY_CONFERENCE");
 
        char buffer[BUF_SIZE] = { 0 };
@@ -248,7 +248,7 @@ static void __fill_conference_layout(Evas_Object *parent, const callui_call_data
 
 static void __set_hold_info(Evas_Object *parent, Evas_Object *content)
 {
-       _callui_common_eo_txt_part_set_translatable_text(content,
+       elm_object_translatable_part_text_set(content,
                        PART_TEXT_STATUS, "IDS_CALL_BODY_ON_HOLD_ABB");
 
        elm_object_part_content_set(parent, PART_SWALLOW_HOLD_INFO, content);
@@ -256,7 +256,7 @@ static void __set_hold_info(Evas_Object *parent, Evas_Object *content)
 
 static void __set_active_info(Evas_Object *parent, Evas_Object *content, callui_app_data_t *ad)
 {
-       _callui_common_eo_txt_part_set_translatable_text(content,
+       elm_object_translatable_part_text_set(content,
                        PART_TEXT_STATUS, "IDS_CALL_BODY_CONNECTED_M_STATUS_ABB");
 
        elm_object_part_content_set(parent, PART_SWALLOW_ACTIVE_INFO, content);
index 3bcc95c..6f26d5a 100755 (executable)
@@ -329,7 +329,7 @@ static void __update_caller_info(Evas_Object *eo, const callui_call_data_t *call
 
        if (strlen(call_name) == 0) {
                if (strlen(call_number) == 0) {
-                       _callui_common_eo_txt_part_set_translatable_text(eo,
+                       elm_object_translatable_part_text_set(eo,
                                        "txt_call_name", "IDS_CALL_BODY_UNKNOWN");
                } else {
                        elm_object_part_text_set(eo, "txt_call_name", call_number);
@@ -674,7 +674,7 @@ static void __update_text_components(char *txt_status, int count, Evas_Object *e
                elm_object_part_text_set(eo, "txt_timer", txt_status);
        }
        if (count > 1) {
-               _callui_common_eo_txt_part_set_translatable_text(eo,
+               elm_object_translatable_part_text_set(eo,
                                "txt_call_name", "IDS_CALL_OPT_CONFERENCE_CALL");
        }
 }
index 26a9444..7b63829 100755 (executable)
@@ -50,8 +50,6 @@ static Evas_Object *__create_main_layout(Evas_Object *conf);
 
 static void __init_app_event_handlers(callui_app_data_t *ad);
 
-static void __main_win_delete_request_cb(void *data, Evas_Object *obj, void *event_info);
-
 static Eina_Bool __hard_key_down_cb(void *data, int type, void *event);
 static Eina_Bool __hard_key_up_cb(void *data, int type, void *event);
 
@@ -314,7 +312,7 @@ static bool __app_init(callui_app_data_t *ad)
        __bt_init();
 
        ad->call_manager = _callui_manager_create();
-       CALLUI_RETURN_VALUE_IF_FAIL(ad->call_manager, __app_deinit(ad));
+       CALLUI_RETURN_VALUE_IF_FAIL(ad->call_manager, false);
 
        ad->state_provider = _callui_manager_get_state_provider(ad->call_manager);
        ad->sound_manager = _callui_manager_get_sound_manager(ad->call_manager);
@@ -323,25 +321,25 @@ static bool __app_init(callui_app_data_t *ad)
        _callui_stp_add_call_state_event_cb(ad->state_provider, __call_state_change_cb, ad);
        _callui_sdm_add_audio_state_changed_cb(ad->sound_manager, __audio_state_changed_cb, ad);
 
-       CALLUI_RETURN_VALUE_IF_FAIL(__create_main_gui_elem(ad), __app_deinit(ad));
+       CALLUI_RETURN_VALUE_IF_FAIL(__create_main_gui_elem(ad), false);
 
        ad->view_manager = _callui_vm_create(ad);
-       CALLUI_RETURN_VALUE_IF_FAIL(ad->view_manager, __app_deinit(ad));
+       CALLUI_RETURN_VALUE_IF_FAIL(ad->view_manager, false);
 
        ad->action_bar = _callui_action_bar_create(ad);
-       CALLUI_RETURN_VALUE_IF_FAIL(ad->action_bar, __app_deinit(ad));
+       CALLUI_RETURN_VALUE_IF_FAIL(ad->action_bar, false);
 
        ad->keypad = _callui_keypad_create(ad);
-       CALLUI_RETURN_VALUE_IF_FAIL(ad->keypad, __app_deinit(ad));
+       CALLUI_RETURN_VALUE_IF_FAIL(ad->keypad, false);
 
        ad->qp_minicontrol =_callui_qp_mc_create(ad);
-       CALLUI_RETURN_VALUE_IF_FAIL(ad->qp_minicontrol, __app_deinit(ad));
+       CALLUI_RETURN_VALUE_IF_FAIL(ad->qp_minicontrol, false);
 
        ad->display = _callui_display_create(ad);
-       CALLUI_RETURN_VALUE_IF_FAIL(ad->display, __app_deinit(ad));
+       CALLUI_RETURN_VALUE_IF_FAIL(ad->display, false);
 
        ad->lock_handle = _callui_lock_manager_create();
-       CALLUI_RETURN_VALUE_IF_FAIL(ad->lock_handle, __app_deinit(ad));
+       CALLUI_RETURN_VALUE_IF_FAIL(ad->lock_handle, false);
 
        __set_main_win_key_grab(ad);
 
@@ -362,7 +360,11 @@ static bool __app_create(void *data)
 
        elm_config_accel_preference_set("3d");
 
-       return __app_init(data);
+       bool res = __app_init(data);
+       if (!res) {
+               __app_deinit(data);
+       }
+       return res;
 }
 
 static void __app_lang_changed_cb(app_event_info_h event_info, void *user_data)
@@ -381,11 +383,6 @@ static void __app_lang_changed_cb(app_event_info_h event_info, void *user_data)
        _callui_vm_update_language(ad->view_manager);
 }
 
-static void __main_win_delete_request_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       elm_exit();
-}
-
 static void __main_win_screen_mode_error_cb(Evas_Object *window, int error_code, void *user_data)
 {
        err("__main_win_screen_mode_error_cb() return res[%d]", error_code);
@@ -400,8 +397,6 @@ static Evas_Object *__create_main_window(callui_app_data_t *ad)
        elm_win_fullscreen_set(eo, EINA_FALSE);
        elm_win_alpha_set(eo, EINA_TRUE);
 
-       elm_win_title_set(eo, PACKAGE);
-       evas_object_smart_callback_add(eo, "delete,request", __main_win_delete_request_cb, NULL);
        efl_util_set_window_screen_mode_error_cb(eo, __main_win_screen_mode_error_cb, NULL);
 
        elm_win_screen_size_get(eo, NULL, NULL, &ad->root_w, &ad->root_h);
@@ -631,7 +626,6 @@ static Eina_Bool __hard_key_up_cb(void *data, int type, void *event)
 
        callui_app_data_t *ad = (callui_app_data_t *)data;
        Ecore_Event_Key *ev = event;
-       const callui_call_data_t *call_data = NULL;
 
        if (ev == NULL) {
                err("ERROR!!! ========= Event is NULL!!!");
@@ -640,7 +634,7 @@ static Eina_Bool __hard_key_up_cb(void *data, int type, void *event)
 
        callui_view_type_e view_type = _callui_vm_get_cur_view_type(ad->view_manager);
 
-       dbg("Top view(%d)", view_type);
+       dbg("Current view type [%d]", view_type);
 
        const callui_call_data_t *incom = _callui_stp_get_call_data(ad->state_provider,
                                        CALLUI_CALL_DATA_INCOMING);
@@ -649,7 +643,7 @@ static Eina_Bool __hard_key_up_cb(void *data, int type, void *event)
        const callui_call_data_t *held = _callui_stp_get_call_data(ad->state_provider,
                                        CALLUI_CALL_DATA_HELD);
 
-       /*power key case */
+       /* power key case */
        if (!strcmp(ev->keyname, CALLUI_KEY_POWER)) {
                dbg("in keypower");
                int is_powerkey_enabled = _callui_common_is_powerkey_mode_on();
@@ -659,42 +653,21 @@ static Eina_Bool __hard_key_up_cb(void *data, int type, void *event)
 
                        if (view_type == CALLUI_VIEW_DIALLING) {
                                if (active) {
-                                       call_data = _callui_stp_get_call_data(ad->state_provider, CALLUI_CALL_DATA_ACTIVE);
-                                       if (call_data) {
-                                               _callui_manager_end_call(ad->call_manager, call_data->call_id,
-                                                               CALLUI_CALL_RELEASE_BY_CALL_HANDLE);
-                                       }
+                                       _callui_manager_end_call(ad->call_manager,
+                                                       active->call_id, CALLUI_CALL_RELEASE_BY_CALL_HANDLE);
                                }
                        } else if (view_type == CALLUI_VIEW_INCOMING_CALL ||
                                        view_type == CALLUI_VIEW_INCOMING_CALL_NOTI) {
                                if (incom) {
-                                       call_data = _callui_stp_get_call_data(ad->state_provider, CALLUI_CALL_DATA_INCOMING);
-                                       if (call_data) {
-                                               _callui_manager_end_call(ad->call_manager, call_data->call_id,
-                                                               CALLUI_CALL_RELEASE_BY_CALL_HANDLE);
-                                       }
-                               }
-                       } else if (view_type == CALLUI_VIEW_SINGLECALL ||
-                                       view_type == CALLUI_VIEW_MULTICALL_CONF ||
-                                       view_type == CALLUI_VIEW_MULTICALL_LIST) {
-
-                               call_data = _callui_stp_get_call_data(ad->state_provider, CALLUI_CALL_DATA_ACTIVE);
-                               if (call_data) {
-                                        _callui_manager_end_call(ad->call_manager, call_data->call_id,
-                                                       CALLUI_CALL_RELEASE_ALL);
-                               } else {
-                                       call_data = _callui_stp_get_call_data(ad->state_provider, CALLUI_CALL_DATA_HELD);
-                                       if (call_data) {
-                                               _callui_manager_end_call(ad->call_manager, call_data->call_id,
-                                                               CALLUI_CALL_RELEASE_ALL);
-                                       }
-                               }
-                       } else if (view_type == CALLUI_VIEW_MULTICALL_SPLIT) {
-                               call_data = _callui_stp_get_call_data(ad->state_provider, CALLUI_CALL_DATA_ACTIVE);
-                               if (call_data) {
-                                       _callui_manager_end_call(ad->call_manager, call_data->call_id,
-                                                       CALLUI_CALL_RELEASE_ALL_ACTIVE);
+                                       _callui_manager_end_call(ad->call_manager,
+                                                       incom->call_id, CALLUI_CALL_RELEASE_BY_CALL_HANDLE);
                                }
+                       } else if (view_type == CALLUI_VIEW_SINGLECALL
+                                       || view_type == CALLUI_VIEW_MULTICALL_CONF) {
+                               _callui_manager_end_call(ad->call_manager, 0, CALLUI_CALL_RELEASE_ALL);
+                       } else if (view_type == CALLUI_VIEW_MULTICALL_SPLIT
+                                       || view_type == CALLUI_VIEW_MULTICALL_LIST) {
+                               _callui_manager_end_call(ad->call_manager, 0, CALLUI_CALL_RELEASE_ALL_ACTIVE);
                        }
                } else {
                        if (incom && !active && !held) {
@@ -712,8 +685,7 @@ static Eina_Bool __hard_key_up_cb(void *data, int type, void *event)
                dbg("in key-media");
        } else if (!strcmp(ev->keyname, CALLUI_KEY_VOLUMEUP) || !strcmp(ev->keyname, CALLUI_KEY_VOLUMEDOWN)) {
                dbg("Handle Volume Up or Down key");
-               call_data = _callui_stp_get_call_data(ad->state_provider, CALLUI_CALL_DATA_INCOMING);
-               if (call_data) {
+               if (incom) {
                        _callui_manager_stop_alert(ad->call_manager);
                }
        } else if (!strcmp(ev->keyname,  CALLUI_KEY_SELECT) || !strcmp(ev->keyname,  CALLUI_KEY_HOME)) {
@@ -722,8 +694,6 @@ static Eina_Bool __hard_key_up_cb(void *data, int type, void *event)
                result = elm_win_keygrab_unset(ad->win, CALLUI_KEY_SELECT, 0, 0);
                if (!result) {
                        dbg("KEY_SELECT key ungrab failed");
-               } else {
-                       dbg("KEY_SELECT key ungrab success");
                }
                if (view_type == CALLUI_VIEW_INCOMING_CALL ||
                                view_type == CALLUI_VIEW_INCOMING_CALL_NOTI) {