fix focus problem in other account setup
authorMinsoo Kim <minnsoo.kim@samsung.com>
Tue, 9 Oct 2012 06:19:42 +0000 (15:19 +0900)
committerMinsoo Kim <minnsoo.kim@samsung.com>
Tue, 9 Oct 2012 06:19:42 +0000 (15:19 +0900)
setting/src/email-view-account-setup.c

index 99e6e2e..3131dc5 100755 (executable)
@@ -335,6 +335,7 @@ static void _push_naviframe(struct viewdata *vd)
 
        p->l_button = elm_button_add(vd->ugd->navi_bar);
        elm_object_style_set(p->l_button, "naviframe/title/default");
+       elm_object_focus_allow_set(p->l_button, EINA_FALSE);
        evas_object_show(p->l_button);
 
        if (vd->ugd->account_info == OTHERS) {
@@ -789,12 +790,20 @@ static void _next_cb(void *data, Evas_Object *obj, void *event_info)
                return;
        }
 
+       struct priv_data *p = NULL;
        EmailSettingUGD *ugd = NULL;
        char *buf = NULL;
        int ret = 0;
 
+       p = vd->priv;
        ugd = vd->ugd;
 
+       Ecore_IMF_Context *imf_context = NULL;
+       imf_context = elm_entry_imf_context_get(p->clicked_object);
+       if (imf_context) {
+               ecore_imf_context_input_panel_hide(imf_context);
+       }
+
        /* Save the Account Data */
        _read_all_entries(vd);
        email_account_t *account = vd->ugd->new_account;
@@ -867,7 +876,9 @@ static void _save_cb(void *data, Evas_Object *obj, void *event_info)
 
        Ecore_IMF_Context *imf_context = NULL;
        imf_context = elm_entry_imf_context_get(p->clicked_object);
-       ecore_imf_context_input_panel_hide(imf_context);
+       if (imf_context) {
+               ecore_imf_context_input_panel_hide(imf_context);
+       }
 
        /* Save the data */
        _read_all_entries(vd);