merge changes with beta branch
authorMinsoo Kim <minnsoo.kim@samsung.com>
Mon, 8 Oct 2012 11:47:33 +0000 (20:47 +0900)
committerMinsoo Kim <minnsoo.kim@samsung.com>
Mon, 8 Oct 2012 12:01:07 +0000 (21:01 +0900)
setting/include/email-setting-utils.h
setting/include/email-setting.h
setting/src/email-setting-utils.c
setting/src/email-view-account-edit.c
setting/src/email-view-account-setup.c
setting/src/email-view-initial.c
setting/src/email-view-manual-setup.c
setting/src/email-view-sync-schedule.c
setting/src/email-view-sync-setup.c
setting/theme/email-setting-theme-macro.edc
setting/theme/email-setting-theme.edc

index 6fe5572..7631e46 100755 (executable)
@@ -41,6 +41,9 @@ Evas_Object *setting_get_notify(struct viewdata *vd, char *header,
 Evas_Object *setting_get_pb_notify(struct viewdata *vd, char *header,
                int btn_num, char *btn1_lb, popup_cb resp_cb1,
                char *btn2_lb, popup_cb resp_cb2);
+Evas_Object *setting_get_pb_process_notify(struct viewdata *vd, char *header,
+               int btn_num, char *btn1_lb, popup_cb resp_cb1,
+               char *btn2_lb, popup_cb resp_cb2);
 Evas_Object *setting_get_list_notify(struct viewdata *vd, char *header,
                int btn_num, char *btn1_lb, popup_cb resp_cb1,
                char *btn2_lb, popup_cb resp_cb2, Evas_Object *content);
index 5536f5d..684b4e6 100755 (executable)
@@ -126,7 +126,7 @@ struct ug_data {
        int wds_account_creation;
        int manual_setup;
 
-       unsigned int handle;
+       int handle;
 
        Ecore_Timer *preset_vc_timer;
        Ecore_Timer *other_vc_timer;
index 974cb63..60c8f81 100755 (executable)
@@ -129,6 +129,60 @@ Evas_Object *setting_get_pb_notify(struct viewdata *vd, char *header,
        return notify;
 }
 
+Evas_Object *setting_get_pb_process_notify(struct viewdata *vd, char *header,
+               int btn_num, char *btn1_lb, popup_cb resp_cb1,
+               char *btn2_lb, popup_cb resp_cb2)
+{
+       debug_log("");
+
+       Evas_Object *notify, *progressbar;
+
+       notify = elm_popup_add(vd->ugd->win);
+       if (!notify) {
+               debug_log("elm_popup_add returns NULL");
+               return NULL;
+       }
+       evas_object_size_hint_weight_set(notify, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+
+       if (header) {
+               elm_object_part_text_set(notify, "title,text", header);
+       }
+
+       progressbar = elm_progressbar_add(notify);
+       elm_object_style_set(progressbar, "list_process");
+       evas_object_size_hint_align_set(progressbar, EVAS_HINT_FILL, 0.5);
+       evas_object_size_hint_weight_set(progressbar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+       evas_object_show(progressbar);
+       elm_progressbar_pulse(progressbar, EINA_TRUE);
+
+       elm_object_content_set(notify, progressbar);
+
+       if (btn_num == 1) {
+               Evas_Object *btn1 = elm_button_add(notify);
+               elm_object_style_set(btn1, "popup_button/default");
+               elm_object_text_set(btn1, btn1_lb);
+               elm_object_part_content_set(notify, "button1", btn1);
+               evas_object_smart_callback_add(btn1, "clicked", resp_cb1, vd);
+       }
+       if (btn_num == 2) {
+               Evas_Object *btn1 = elm_button_add(notify);
+               elm_object_style_set(btn1, "popup_button/default");
+               elm_object_text_set(btn1, btn1_lb);
+               elm_object_part_content_set(notify, "button1", btn1);
+               evas_object_smart_callback_add(btn1, "clicked", resp_cb1, vd);
+
+               Evas_Object *btn2 = elm_button_add(notify);
+               elm_object_style_set(btn2, "popup_button/default");
+               elm_object_text_set(btn2, btn2_lb);
+               elm_object_part_content_set(notify, "button2", btn2);
+               evas_object_smart_callback_add(btn2, "clicked", resp_cb2, vd);
+       }
+
+       evas_object_show(notify);
+
+       return notify;
+}
+
 Evas_Object *setting_get_list_notify(struct viewdata *vd, char *header,
                int btn_num, char *btn1_lb, popup_cb resp_cb1,
                char *btn2_lb, popup_cb resp_cb2, Evas_Object *content)
index 9caf9bd..1492f53 100755 (executable)
@@ -139,7 +139,7 @@ struct priv_data {
        int account_deleted;
        int b_first_focus_on_pw;
        int b_first_focus_on_sending_pw;
-       unsigned int handle;
+       int handle;
 };
 
 void setting_init_account_edit_view(struct viewdata *vd)
@@ -420,13 +420,15 @@ static void _push_naviframe(struct viewdata *vd)
        evas_object_show(p->cbar);
 
        p->c_item[0] = elm_toolbar_item_append(p->cbar, NULL,
-                       dgettext("sys_string", "IDS_COM_SK_SAVE"), _save_cb, vd);
+                       dgettext("sys_string", "IDS_COM_SK_SET"), _save_cb, vd);
        elm_object_item_disabled_set(elm_toolbar_item_append(p->cbar, NULL, "", NULL, NULL), EINA_TRUE);
        elm_object_item_disabled_set(elm_toolbar_item_append(p->cbar, NULL, "", NULL, NULL), EINA_TRUE);
 
        p->l_button = elm_button_add(vd->ugd->navi_bar);
+       elm_object_style_set(p->l_button, "naviframe/title/default");
+       elm_object_text_set(p->l_button, dgettext("sys_string", "IDS_COM_SK_CANCEL"));
        evas_object_smart_callback_add(p->l_button, "clicked", _back_cb, vd);
-       elm_object_style_set(p->l_button, "naviframe/back_btn/default");
+       /*elm_object_style_set(p->l_button, "naviframe/back_btn/default");*/
        evas_object_show(p->l_button);
 
        /*p->r_button1 = elm_button_add(vd->ugd->navi_bar);
@@ -486,6 +488,7 @@ static void _create_list(struct viewdata *vd)
        Elm_Object_Item *git = NULL;
 
        p->genlist = elm_genlist_add(ugd->navi_bar);
+       elm_genlist_mode_set(p->genlist, ELM_LIST_COMPRESS);
        elm_object_style_set(p->genlist, "dialogue");
 
        p->sending_secure_radio_grp = elm_radio_add(p->genlist);
@@ -1442,24 +1445,18 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        p->ef_account_name = elm_layout_add(p->genlist);
                        elm_layout_theme_set(p->ef_account_name, "layout", "editfield", "title");
                        p->entry_account_name = elm_entry_add(p->genlist);
-                       elm_entry_scrollable_set(p->entry_account_name, EINA_TRUE);
                        elm_entry_single_line_set(p->entry_account_name, EINA_TRUE);
                        elm_entry_input_panel_return_key_disabled_set(p->entry_account_name, EINA_TRUE);
                        elm_entry_cnp_mode_set(p->entry_account_name, ELM_CNP_MODE_PLAINTEXT);
                        elm_entry_input_panel_layout_set(p->entry_account_name, ELM_INPUT_PANEL_LAYOUT_EMAIL);
-                       elm_entry_editable_set(p->entry_account_name, TRUE);
                        evas_object_smart_callback_add(p->entry_account_name, "changed", _backup_input_cb, p->ef_account_name);
                        evas_object_smart_callback_add(p->entry_account_name, "focused", _entry_focused_cb, p->ef_account_name);
                        evas_object_smart_callback_add(p->entry_account_name, "unfocused", _entry_unfocused_cb, p->ef_account_name);
-                       evas_object_show(p->entry_account_name);
 
                        elm_object_part_content_set(p->ef_account_name, "elm.swallow.content", p->entry_account_name);
                        elm_object_part_text_set(p->ef_account_name, "elm.text", _("IDS_EMAIL_BODY_ACCOUNT_NAME"));
                        elm_object_signal_callback_add(p->ef_account_name, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_account_name);
 
-                       evas_object_size_hint_weight_set(p->ef_account_name, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_show(p->ef_account_name);
-
                        if (p->str_account_name)
                                elm_entry_entry_set(p->entry_account_name, p->str_account_name);
 
@@ -1469,7 +1466,6 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        p->ef_email_address = elm_layout_add(p->genlist);
                        elm_layout_theme_set(p->ef_email_address, "layout", "editfield", "title");
                        p->entry_email_address = elm_entry_add(p->genlist);
-                       elm_entry_scrollable_set(p->entry_email_address, EINA_TRUE);
                        elm_entry_single_line_set(p->entry_email_address, EINA_TRUE);
                        elm_entry_input_panel_return_key_disabled_set(p->entry_email_address, EINA_TRUE);
                        elm_entry_cnp_mode_set(p->entry_email_address, ELM_CNP_MODE_PLAINTEXT);
@@ -1478,15 +1474,11 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_email_address, "changed", _backup_input_cb, p->ef_email_address);
                        evas_object_smart_callback_add(p->entry_email_address, "focused", _entry_focused_cb, p->ef_email_address);
                        evas_object_smart_callback_add(p->entry_email_address, "unfocused", _entry_unfocused_cb, p->ef_email_address);
-                       evas_object_show(p->entry_email_address);
 
                        elm_object_part_content_set(p->ef_email_address, "elm.swallow.content", p->entry_email_address);
                        elm_object_part_text_set(p->ef_email_address, "elm.text", dgettext("sys_string", "IDS_COM_BODY_EMAIL_ADDRESS"));
                        elm_object_signal_callback_add(p->ef_email_address, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_email_address);
 
-                       evas_object_size_hint_weight_set(p->ef_email_address, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_show(p->ef_email_address);
-
                        if (p->str_email_address)
                                elm_entry_entry_set(p->entry_email_address, p->str_email_address);
 
@@ -1496,7 +1488,6 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        p->ef_user_name = elm_layout_add(p->genlist);
                        elm_layout_theme_set(p->ef_user_name, "layout", "editfield", "title");
                        p->entry_user_name = elm_entry_add(p->genlist);
-                       elm_entry_scrollable_set(p->entry_user_name, EINA_TRUE);
                        elm_entry_single_line_set(p->entry_user_name, EINA_TRUE);
                        elm_entry_input_panel_return_key_disabled_set(p->entry_user_name, EINA_TRUE);
                        elm_entry_cnp_mode_set(p->entry_user_name, ELM_CNP_MODE_PLAINTEXT);
@@ -1505,15 +1496,11 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_user_name, "changed", _backup_input_cb, p->ef_user_name);
                        evas_object_smart_callback_add(p->entry_user_name, "focused", _entry_focused_cb, p->ef_user_name);
                        evas_object_smart_callback_add(p->entry_user_name, "unfocused", _entry_unfocused_cb, p->ef_user_name);
-                       evas_object_show(p->entry_user_name);
 
                        elm_object_part_content_set(p->ef_user_name, "elm.swallow.content", p->entry_user_name);
                        elm_object_part_text_set(p->ef_user_name, "elm.text", dgettext("sys_string", "IDS_COM_BODY_USER_NAME"));
                        elm_object_signal_callback_add(p->ef_user_name, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_user_name);
 
-                       evas_object_size_hint_weight_set(p->ef_user_name, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_show(p->ef_user_name);
-
                        if (p->str_user_name)
                                elm_entry_entry_set(p->entry_user_name, p->str_user_name);
 
@@ -1523,26 +1510,20 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        p->ef_password = elm_layout_add(p->genlist);
                        elm_layout_theme_set(p->ef_password, "layout", "editfield", "title");
                        p->entry_password = elm_entry_add(p->genlist);
-                       elm_entry_scrollable_set(p->entry_password, EINA_TRUE);
                        elm_entry_single_line_set(p->entry_password, EINA_TRUE);
                        elm_entry_input_panel_return_key_disabled_set(p->entry_password, EINA_TRUE);
                        elm_entry_password_set(p->entry_password, 1);
                        elm_entry_cnp_mode_set(p->entry_password, ELM_CNP_MODE_PLAINTEXT);
                        elm_entry_input_panel_layout_set(p->entry_password, ELM_INPUT_PANEL_LAYOUT_EMAIL);
-                       elm_entry_editable_set(p->entry_password, TRUE);
                        evas_object_smart_callback_add(p->entry_password, "changed", _backup_input_cb, p->ef_password);
                        evas_object_smart_callback_add(p->entry_password, "focused", _entry_focused_cb, p->ef_password);
                        evas_object_smart_callback_add(p->entry_password, "unfocused", _entry_unfocused_cb, p->ef_password);
                        evas_object_smart_callback_add(p->entry_password, "focused", _password_focused_cb, p->entry_password);
-                       evas_object_show(p->entry_password);
 
                        elm_object_part_content_set(p->ef_password, "elm.swallow.content", p->entry_password);
                        elm_object_part_text_set(p->ef_password, "elm.text", dgettext("sys_string", "IDS_COM_BODY_PASSWORD"));
                        elm_object_signal_callback_add(p->ef_password, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_password);
 
-                       evas_object_size_hint_weight_set(p->ef_password, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_show(p->ef_password);
-
                        if (p->str_password)
                                elm_entry_entry_set(p->entry_password, p->str_password);
 
@@ -1552,24 +1533,18 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        p->ef_smtp_server = elm_layout_add(p->genlist);
                        elm_layout_theme_set(p->ef_smtp_server, "layout", "editfield", "title");
                        p->entry_smtp_server = elm_entry_add(p->genlist);
-                       elm_entry_scrollable_set(p->entry_smtp_server, EINA_TRUE);
                        elm_entry_single_line_set(p->entry_smtp_server, EINA_TRUE);
                        elm_entry_input_panel_return_key_disabled_set(p->entry_smtp_server, EINA_TRUE);
                        elm_entry_cnp_mode_set(p->entry_smtp_server, ELM_CNP_MODE_PLAINTEXT);
                        elm_entry_input_panel_layout_set(p->entry_smtp_server, ELM_INPUT_PANEL_LAYOUT_EMAIL);
-                       elm_entry_editable_set(p->entry_smtp_server, TRUE);
                        evas_object_smart_callback_add(p->entry_smtp_server, "changed", _backup_input_cb, p->ef_smtp_server);
                        evas_object_smart_callback_add(p->entry_smtp_server, "focused", _entry_focused_cb, p->ef_smtp_server);
                        evas_object_smart_callback_add(p->entry_smtp_server, "unfocused", _entry_unfocused_cb, p->ef_smtp_server);
-                       evas_object_show(p->entry_smtp_server);
 
                        elm_object_part_content_set(p->ef_smtp_server, "elm.swallow.content", p->entry_smtp_server);
                        elm_object_part_text_set(p->ef_smtp_server, "elm.text", _("IDS_EMAIL_BODY_OUTGOING_SERVER"));
                        elm_object_signal_callback_add(p->ef_smtp_server, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_smtp_server);
 
-                       evas_object_size_hint_weight_set(p->ef_smtp_server, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_show(p->ef_smtp_server);
-
                        if (p->str_smtp_server)
                                elm_entry_entry_set(p->entry_smtp_server, p->str_smtp_server);
 
@@ -1579,24 +1554,18 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        p->ef_smtp_port = elm_layout_add(p->genlist);
                        elm_layout_theme_set(p->ef_smtp_port, "layout", "editfield", "title");
                        p->entry_smtp_port = elm_entry_add(p->genlist);
-                       elm_entry_scrollable_set(p->entry_smtp_port, EINA_TRUE);
                        elm_entry_single_line_set(p->entry_smtp_port, EINA_TRUE);
                        elm_entry_input_panel_return_key_disabled_set(p->entry_smtp_port, EINA_TRUE);
                        elm_entry_cnp_mode_set(p->entry_smtp_port, ELM_CNP_MODE_PLAINTEXT);
                        elm_entry_input_panel_layout_set(p->entry_smtp_port, ELM_INPUT_PANEL_LAYOUT_NUMBERONLY);
-                       elm_entry_editable_set(p->entry_smtp_port, TRUE);
                        evas_object_smart_callback_add(p->entry_smtp_port, "changed", _backup_input_cb, p->ef_smtp_port);
                        evas_object_smart_callback_add(p->entry_smtp_port, "focused", _entry_focused_cb, p->ef_smtp_port);
                        evas_object_smart_callback_add(p->entry_smtp_port, "unfocused", _entry_unfocused_cb, p->ef_smtp_port);
-                       evas_object_show(p->entry_smtp_port);
 
                        elm_object_part_content_set(p->ef_smtp_port, "elm.swallow.content", p->entry_smtp_port);
                        elm_object_part_text_set(p->ef_smtp_port, "elm.text", _("IDS_EMAIL_BODY_OUTGOING_PORT"));
                        elm_object_signal_callback_add(p->ef_smtp_port, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_smtp_port);
 
-                       evas_object_size_hint_weight_set(p->ef_smtp_port, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_show(p->ef_smtp_port);
-
                        if (p->str_smtp_port)
                                elm_entry_entry_set(p->entry_smtp_port, p->str_smtp_port);
 
@@ -1606,16 +1575,13 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        p->ef_incoming_server = elm_layout_add(p->genlist);
                        elm_layout_theme_set(p->ef_incoming_server, "layout", "editfield", "title");
                        p->entry_incoming_server = elm_entry_add(p->genlist);
-                       elm_entry_scrollable_set(p->entry_incoming_server, EINA_TRUE);
                        elm_entry_single_line_set(p->entry_incoming_server, EINA_TRUE);
                        elm_entry_input_panel_return_key_disabled_set(p->entry_incoming_server, EINA_TRUE);
                        elm_entry_cnp_mode_set(p->entry_incoming_server, ELM_CNP_MODE_PLAINTEXT);
                        elm_entry_input_panel_layout_set(p->entry_incoming_server, ELM_INPUT_PANEL_LAYOUT_EMAIL);
-                       elm_entry_editable_set(p->entry_incoming_server, TRUE);
                        evas_object_smart_callback_add(p->entry_incoming_server, "changed", _backup_input_cb, p->ef_incoming_server);
                        evas_object_smart_callback_add(p->entry_incoming_server, "focused", _entry_focused_cb, p->ef_incoming_server);
                        evas_object_smart_callback_add(p->entry_incoming_server, "unfocused", _entry_unfocused_cb, p->ef_incoming_server);
-                       evas_object_show(p->entry_incoming_server);
 
                        elm_object_part_content_set(p->ef_incoming_server, "elm.swallow.content", p->entry_incoming_server);
                        if (account->incoming_server_type == EMAIL_SERVER_TYPE_IMAP4) {
@@ -1627,9 +1593,6 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        }
                        elm_object_signal_callback_add(p->ef_incoming_server, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_incoming_server);
 
-                       evas_object_size_hint_weight_set(p->ef_incoming_server, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_show(p->ef_incoming_server);
-
                        if (p->str_incoming_server)
                                elm_entry_entry_set(p->entry_incoming_server, p->str_incoming_server);
 
@@ -1639,16 +1602,13 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        p->ef_incoming_port = elm_layout_add(p->genlist);
                        elm_layout_theme_set(p->ef_incoming_port, "layout", "editfield", "title");
                        p->entry_incoming_port = elm_entry_add(p->genlist);
-                       elm_entry_scrollable_set(p->entry_incoming_port, EINA_TRUE);
                        elm_entry_single_line_set(p->entry_incoming_port, EINA_TRUE);
                        elm_entry_input_panel_return_key_disabled_set(p->entry_incoming_port, EINA_TRUE);
                        elm_entry_cnp_mode_set(p->entry_incoming_port, ELM_CNP_MODE_PLAINTEXT);
                        elm_entry_input_panel_layout_set(p->entry_incoming_port, ELM_INPUT_PANEL_LAYOUT_NUMBERONLY);
-                       elm_entry_editable_set(p->entry_incoming_port, TRUE);
                        evas_object_smart_callback_add(p->entry_incoming_port, "changed", _backup_input_cb, p->ef_incoming_port);
                        evas_object_smart_callback_add(p->entry_incoming_port, "focused", _entry_focused_cb, p->ef_incoming_port);
                        evas_object_smart_callback_add(p->entry_incoming_port, "unfocused", _entry_unfocused_cb, p->ef_incoming_port);
-                       evas_object_show(p->entry_incoming_port);
 
                        elm_object_part_content_set(p->ef_incoming_port, "elm.swallow.content", p->entry_incoming_port);
                        if (account->incoming_server_type == EMAIL_SERVER_TYPE_IMAP4) {
@@ -1660,19 +1620,14 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        }
                        elm_object_signal_callback_add(p->ef_incoming_port, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_incoming_port);
 
-                       evas_object_size_hint_weight_set(p->ef_incoming_port, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_show(p->ef_incoming_port);
-
                        if (p->str_incoming_port)
                                elm_entry_entry_set(p->entry_incoming_port, p->str_incoming_port);
-
                        return p->ef_incoming_port;
 
                case 9:
                        p->ef_sending_username = elm_layout_add(p->genlist);
                        elm_layout_theme_set(p->ef_sending_username, "layout", "editfield", "title");
                        p->entry_sending_username = elm_entry_add(p->genlist);
-                       elm_entry_scrollable_set(p->entry_sending_username, EINA_TRUE);
                        elm_entry_single_line_set(p->entry_sending_username, EINA_TRUE);
                        elm_entry_input_panel_return_key_disabled_set(p->entry_sending_username, EINA_TRUE);
                        elm_entry_cnp_mode_set(p->entry_sending_username, ELM_CNP_MODE_PLAINTEXT);
@@ -1686,15 +1641,11 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_sending_username, "changed", _backup_input_cb, p->ef_sending_username);
                        evas_object_smart_callback_add(p->entry_sending_username, "focused", _entry_focused_cb, p->ef_sending_username);
                        evas_object_smart_callback_add(p->entry_sending_username, "unfocused", _entry_unfocused_cb, p->ef_sending_username);
-                       evas_object_show(p->entry_sending_username);
 
                        elm_object_part_content_set(p->ef_sending_username, "elm.swallow.content", p->entry_sending_username);
                        elm_object_part_text_set(p->ef_sending_username, "elm.text", dgettext("sys_string", "IDS_COM_BODY_USER_NAME"));
                        elm_object_signal_callback_add(p->ef_sending_username, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_sending_username);
 
-                       evas_object_size_hint_weight_set(p->ef_sending_username, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_show(p->ef_sending_username);
-
                        if (p->str_sending_username)
                                elm_entry_entry_set(p->entry_sending_username, p->str_sending_username);
 
@@ -1704,7 +1655,6 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        p->ef_sending_password = elm_layout_add(p->genlist);
                        elm_layout_theme_set(p->ef_sending_password, "layout", "editfield", "title");
                        p->entry_sending_password = elm_entry_add(p->genlist);
-                       elm_entry_scrollable_set(p->entry_sending_password, EINA_TRUE);
                        elm_entry_single_line_set(p->entry_sending_password, EINA_TRUE);
                        elm_entry_input_panel_return_key_disabled_set(p->entry_sending_password, EINA_TRUE);
                        elm_entry_password_set(p->entry_sending_password, 1);
@@ -1720,15 +1670,11 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_sending_password, "focused", _entry_focused_cb, p->ef_sending_password);
                        evas_object_smart_callback_add(p->entry_sending_password, "unfocused", _entry_unfocused_cb, p->ef_sending_password);
                        evas_object_smart_callback_add(p->entry_sending_password, "focused", _sending_password_focused_cb, p->entry_sending_password);
-                       evas_object_show(p->entry_sending_password);
 
                        elm_object_part_content_set(p->ef_sending_password, "elm.swallow.content", p->entry_sending_password);
                        elm_object_part_text_set(p->ef_sending_password, "elm.text", dgettext("sys_string", "IDS_COM_BODY_PASSWORD"));
                        elm_object_signal_callback_add(p->ef_sending_password, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_sending_password);
 
-                       evas_object_size_hint_weight_set(p->ef_sending_password, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       evas_object_show(p->ef_sending_password);
-
                        if (p->str_sending_password)
                                elm_entry_entry_set(p->entry_sending_password, p->str_sending_password);
 
index e1b8664..99e6e2e 100755 (executable)
@@ -54,6 +54,7 @@ static void _backup_input_cb(void *data, Evas_Object *obj, void *event_info);
 static void _entry_focused_cb(void *data, Evas_Object *obj, void *event_info);
 static void _entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info);
 static void _eraser_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
+static void _input_panel_state_changed_cb(void *data, Ecore_IMF_Context *ctx, int value);
 static void _gl_ef_sel_cb(void *data, Evas_Object *obj, void *event_info);
 static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const char *part);
 
@@ -61,7 +62,7 @@ static struct viewdata *g_vd = NULL;
 
 struct priv_data {
        struct viewdata *vd;
-       unsigned int handle;
+       int handle;
 
        char *str_account_name;
        char *str_display_name;
@@ -101,6 +102,7 @@ struct priv_data {
 
        Evas_Object *cbar;
        Elm_Object_Item * c_item[4];
+       Elm_Object_Item *navi_it;
 
        int icon_get_cnt1;
        int icon_get_cnt2;
@@ -251,12 +253,16 @@ static int _destroy(struct viewdata *vd)
 
        Ecore_IMF_Context *imf_context = NULL;
        imf_context = elm_entry_imf_context_get(p->clicked_object);
-       if (imf_context)
+       if (imf_context) {
                ecore_imf_context_input_panel_hide(imf_context);
+               ecore_imf_context_input_panel_event_callback_del(imf_context,
+                               ECORE_IMF_INPUT_PANEL_STATE_EVENT, _input_panel_state_changed_cb);
+       }
 
        evas_object_del(p->l_button);
        evas_object_del(p->r_button);
        evas_object_del(p->genlist);
+       evas_object_del(p->cbar);
 
        if (ugd->preset_vc_timer) {
                ecore_timer_del(ugd->preset_vc_timer);
@@ -311,6 +317,22 @@ static void _push_naviframe(struct viewdata *vd)
        debug_log("");
        struct priv_data *p = vd->priv;
 
+       p->cbar = elm_toolbar_add(vd->ugd->navi_bar);
+       elm_toolbar_shrink_mode_set(p->cbar, ELM_TOOLBAR_SHRINK_EXPAND);
+       elm_object_style_set(p->cbar, "naviframe");
+       evas_object_show(p->cbar);
+
+       if (vd->ugd->account_info == OTHERS) {
+               p->c_item[0] = elm_toolbar_item_append(p->cbar, NULL,
+                               dgettext("sys_string", "IDS_COM_BUTTON_LOGIN"), _next_cb, vd);
+       } else if (vd->ugd->account_info != ACTIVESYNC) {
+               p->c_item[0] = elm_toolbar_item_append(p->cbar, NULL,
+                               dgettext("sys_string", "IDS_COM_BUTTON_LOGIN"), _save_cb, vd);
+       }
+       elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
+       elm_object_item_disabled_set(elm_toolbar_item_append(p->cbar, NULL, "", NULL, NULL), EINA_TRUE);
+       elm_object_item_disabled_set(elm_toolbar_item_append(p->cbar, NULL, "", NULL, NULL), EINA_TRUE);
+
        p->l_button = elm_button_add(vd->ugd->navi_bar);
        elm_object_style_set(p->l_button, "naviframe/title/default");
        evas_object_show(p->l_button);
@@ -332,8 +354,10 @@ static void _push_naviframe(struct viewdata *vd)
        evas_object_show(p->r_button);
 
        p->r_button2 = elm_button_add(vd->ugd->navi_bar);
+       elm_object_style_set(p->r_button2, "naviframe/title/default");
+       elm_object_text_set(p->r_button2, dgettext("sys_string", "IDS_COM_SK_CANCEL"));
        evas_object_smart_callback_add(p->r_button2, "clicked", _back_cb, vd);
-       elm_object_style_set(p->r_button2, "naviframe/back_btn/default");
+       /*elm_object_style_set(p->r_button2, "naviframe/back_btn/default");*/
        evas_object_show(p->r_button2);
 
 
@@ -362,6 +386,8 @@ static void _push_naviframe(struct viewdata *vd)
        elm_object_item_part_content_set(navi_it, "icon", title_ic);
        elm_object_item_part_content_set(navi_it, "title_left_btn", p->l_button);
        elm_object_item_part_content_set(navi_it, "title_right_btn", p->r_button);
+       elm_object_item_part_content_set(navi_it, "controlbar", p->cbar);
+       p->navi_it = navi_it;
        evas_object_show(vd->ugd->navi_bar);
 }
 
@@ -555,6 +581,7 @@ static void _create_validation_popup(struct viewdata *vd, int account_id)
        elm_object_disabled_set(p->r_button, EINA_TRUE);
        elm_object_disabled_set(p->r_button2, EINA_TRUE);
        elm_object_disabled_set(p->manual_btn, EINA_TRUE);
+       elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
 
        debug_log("Start Account Validation");
        ugd->popup_validate = setting_get_pb_notify(vd,
@@ -1031,12 +1058,17 @@ static void _back_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);
+               ecore_imf_context_input_panel_event_callback_del(imf_context,
+                               ECORE_IMF_INPUT_PANEL_STATE_EVENT, _input_panel_state_changed_cb);
+       }
 
        elm_object_disabled_set(p->l_button, EINA_TRUE);
        elm_object_disabled_set(p->r_button, EINA_TRUE);
        elm_object_disabled_set(p->r_button2, EINA_TRUE);
        elm_object_disabled_set(p->manual_btn, EINA_TRUE);
+       elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
 
        if (!strcmp(vd->ugd->start_view_type, "account-add")) {
                ug_destroy_me(vd->ugd->ug);
@@ -1221,6 +1253,7 @@ static void _popup_ok_cb(void *data, Evas_Object *obj, void *event_info)
        elm_object_disabled_set(p->r_button, EINA_FALSE);
        elm_object_disabled_set(p->r_button2, EINA_FALSE);
        elm_object_disabled_set(p->manual_btn, EINA_FALSE);
+       elm_object_item_disabled_set(p->c_item[0], EINA_FALSE);
 }
 
 static void _popup_cancel_validation_cb(void *data, Evas_Object *obj, void *event_info)
@@ -1253,6 +1286,7 @@ static void _popup_cancel_validation_cb(void *data, Evas_Object *obj, void *even
        elm_object_disabled_set(p->r_button, EINA_FALSE);
        elm_object_disabled_set(p->r_button2, EINA_FALSE);
        elm_object_disabled_set(p->manual_btn, EINA_FALSE);
+       elm_object_item_disabled_set(p->c_item[0], EINA_FALSE);
 }
 
 static void _backup_input_cb(void *data, Evas_Object *obj, void *event_info)
@@ -1324,12 +1358,14 @@ static void _backup_input_cb(void *data, Evas_Object *obj, void *event_info)
                if (p->str_account_name == NULL) {
                        elm_object_disabled_set(p->l_button, EINA_TRUE);
                        elm_object_disabled_set(p->manual_btn, EINA_TRUE);
+                       elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
                        return;
                }
 
                if (g_strcmp0(p->str_account_name, "") == 0) {
                        elm_object_disabled_set(p->l_button, EINA_TRUE);
                        elm_object_disabled_set(p->manual_btn, EINA_TRUE);
+                       elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
                        return;
                }
        }
@@ -1337,15 +1373,18 @@ static void _backup_input_cb(void *data, Evas_Object *obj, void *event_info)
        if (p->str_email_address == NULL || p->str_password == NULL) {
                elm_object_disabled_set(p->l_button, EINA_TRUE);
                elm_object_disabled_set(p->manual_btn, EINA_TRUE);
+               elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
                return;
        }
 
        if (g_strcmp0(p->str_email_address, "") == 0 || g_strcmp0(p->str_password, "") == 0) {
                elm_object_disabled_set(p->l_button, EINA_TRUE);
                elm_object_disabled_set(p->manual_btn, EINA_TRUE);
+               elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
        } else {
                elm_object_disabled_set(p->l_button, EINA_FALSE);
                elm_object_disabled_set(p->manual_btn, EINA_FALSE);
+               elm_object_item_disabled_set(p->c_item[0], EINA_FALSE);
        }
 }
 
@@ -1389,6 +1428,33 @@ static void _eraser_clicked_cb(void *data, Evas_Object *obj, const char *emissio
        elm_entry_entry_set(data, "");
 }
 
+static void _input_panel_state_changed_cb(void *data, Ecore_IMF_Context *ctx, int value)
+{
+       debug_log("");
+
+       if (!data) {
+               debug_log("data is NULL");
+               return;
+       }
+
+       struct viewdata *vd = (struct viewdata *)data;
+       struct priv_data *p = vd->priv;
+
+       if (value == ECORE_IMF_INPUT_PANEL_STATE_SHOW) {
+               debug_log("input panel show");
+               evas_object_show(p->l_button);
+               evas_object_show(p->r_button);
+               elm_object_item_part_content_set(p->navi_it, "title_left_btn", p->l_button);
+               elm_object_item_part_content_set(p->navi_it, "title_right_btn", p->r_button);
+       } else if (value == ECORE_IMF_INPUT_PANEL_STATE_HIDE) {
+               debug_log("input panel hide");
+               elm_object_item_part_content_unset(p->navi_it, "title_left_btn");
+               elm_object_item_part_content_unset(p->navi_it, "title_right_btn");
+               evas_object_hide(p->l_button);
+               evas_object_hide(p->r_button);
+       }
+}
+
 static void _gl_ef_sel_cb(void *data, Evas_Object *obj, void *event_info)
 {
        debug_log("");
@@ -1419,6 +1485,7 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
        struct viewdata *vd = g_vd;
        struct priv_data *p = vd->priv;
        EmailSettingUGD *ugd = vd->ugd;
+       Ecore_IMF_Context *imf_context = NULL;
 
        if (!strcmp(part, "elm.icon")) {
                if (index == 1) {
@@ -1439,6 +1506,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_account_name, "unfocused", _entry_unfocused_cb, p->ef_account_name);
                        evas_object_show(p->entry_account_name);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_account_name);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_account_name, "elm.swallow.content", p->entry_account_name);
                        /*elm_object_part_text_set(p->ef_account_name, "elm.guidetext", str);*/
                        elm_object_part_text_set(p->ef_account_name, "elm.text", _("IDS_EMAIL_BODY_ACCOUNT_NAME"));
@@ -1481,6 +1554,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_user_id, "unfocused", _entry_unfocused_cb, p->ef_user_id);
                        evas_object_show(p->entry_user_id);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_user_id);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_user_id, "elm.swallow.content", p->entry_user_id);
                        /*elm_object_part_text_set(p->ef_user_id, "elm.guidetext", dgettext("sys_string", "IDS_COM_BODY_USER_NAME"));*/
                        elm_object_part_text_set(p->ef_user_id, "elm.text", dgettext("sys_string", "IDS_COM_BODY_USER_NAME"));
@@ -1509,6 +1588,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_display_name, "unfocused", _entry_unfocused_cb, p->ef_display_name);
                        evas_object_show(p->entry_display_name);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_display_name);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_display_name, "elm.swallow.content", p->entry_display_name);
                        /*elm_object_part_text_set(p->ef_display_name, "elm.guidetext", _("IDS_EMAIL_BODY_YOUR_NAME"));*/
                        elm_object_part_text_set(p->ef_display_name, "elm.text", dgettext("sys_string", "IDS_COM_BODY_DETAILS_NAME"));
@@ -1539,6 +1624,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_email_address, "unfocused", _entry_unfocused_cb, p->ef_email_address);
                        evas_object_show(p->entry_email_address);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_email_address);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_email_address, "elm.swallow.content", p->entry_email_address);
                        /*_set_help_string(p->ef_email_address, vd);*/
                        elm_object_part_text_set(p->ef_email_address, "elm.text", dgettext("sys_string", "IDS_COM_BODY_EMAIL_ADDRESS"));
@@ -1585,6 +1676,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_password, "unfocused", _entry_unfocused_cb, p->ef_password);
                        evas_object_show(p->entry_password);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_password);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_password, "elm.swallow.content", p->entry_password);
                        /*elm_object_part_text_set(p->ef_password, "elm.guidetext", _("IDS_EMAIL_BODY_USER_PASSWORD"));*/
                        elm_object_part_text_set(p->ef_password, "elm.text", dgettext("sys_string", "IDS_COM_BODY_PASSWORD"));
index 3260683..306dcff 100755 (executable)
@@ -254,15 +254,15 @@ static void _create_list(struct viewdata *vd)
        p->itc.func.state_get = _gl_state_get_cb;
        p->itc.func.del = _gl_del_cb;
 
-       p->itc2.item_style = "dialogue/separator";
+       p->itc2.item_style = "dialogue/separator/11/with_line";
        p->itc2.func.text_get = NULL;
        p->itc2.func.content_get = NULL;
-       p->itc2.func.state_get = _gl_state_get_cb;
-       p->itc2.func.del = _gl_del_cb;
+       p->itc2.func.state_get = NULL;
+       p->itc2.func.del = NULL;
 
-       /*git = elm_genlist_item_append(p->list, &(p->itc2), NULL, NULL,
+       git = elm_genlist_item_append(p->list, &(p->itc2), NULL, NULL,
                        ELM_GENLIST_ITEM_GROUP, NULL, NULL);
-       elm_genlist_item_display_only_set(git, EINA_TRUE);*/
+       elm_genlist_item_select_mode_set(git, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
 
        for (index = HOTMAIL; index <= OTHERS; index++) {
                if (index != YAHOOMAIL) {
index 9676269..a17607c 100755 (executable)
@@ -41,6 +41,7 @@ static void _backup_input_cb(void *data, Evas_Object *obj, void *event_info);
 static void _entry_focused_cb(void *data, Evas_Object *obj, void *event_info);
 static void _entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info);
 static void _eraser_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
+static void _input_panel_state_changed_cb(void *data, Ecore_IMF_Context *ctx, int value);
 
 static char *_gl_text_get_cb(void *data, Evas_Object *obj, const char *part);
 static void _gl_ef_sel_cb(void *data, Evas_Object *obj, void *event_info);
@@ -61,7 +62,7 @@ static struct viewdata *g_vd = NULL;
 
 struct priv_data {
        struct viewdata *vd;
-       unsigned int handle;
+       int handle;
 
        int icon_get_cnt1;
 
@@ -122,6 +123,7 @@ struct priv_data {
        Elm_Object_Item *gl_ex_item2;
        Elm_Object_Item *gl_ex_item3;
        Elm_Object_Item * c_item[4];
+       Elm_Object_Item *navi_it;
 };
 
 void setting_init_manual_setup_view(struct viewdata *vd)
@@ -277,12 +279,16 @@ static int _destroy(struct viewdata *vd)
 
        Ecore_IMF_Context *imf_context = NULL;
        imf_context = elm_entry_imf_context_get(p->clicked_object);
-       if (imf_context)
+       if (imf_context) {
                ecore_imf_context_input_panel_hide(imf_context);
+               ecore_imf_context_input_panel_event_callback_del(imf_context,
+                               ECORE_IMF_INPUT_PANEL_STATE_EVENT, _input_panel_state_changed_cb);
+       }
 
        evas_object_del(p->l_button);
        evas_object_del(p->r_button);
        evas_object_del(p->genlist);
+       evas_object_del(p->cbar);
 
        if (ugd->other_vc_timer) {
                ecore_timer_del(ugd->other_vc_timer);
@@ -333,22 +339,35 @@ static void _push_naviframe(struct viewdata *vd)
        debug_log("");
        struct priv_data *p = vd->priv;
 
+       p->cbar = elm_toolbar_add(vd->ugd->navi_bar);
+       elm_toolbar_shrink_mode_set(p->cbar, ELM_TOOLBAR_SHRINK_EXPAND);
+       elm_object_style_set(p->cbar, "naviframe");
+       evas_object_show(p->cbar);
+
+       p->c_item[0] = elm_toolbar_item_append(p->cbar, NULL,
+                               dgettext("sys_string", "IDS_COM_SK_SET"), _save_cb, vd);
+       elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
+       elm_object_item_disabled_set(elm_toolbar_item_append(p->cbar, NULL, "", NULL, NULL), EINA_TRUE);
+       elm_object_item_disabled_set(elm_toolbar_item_append(p->cbar, NULL, "", NULL, NULL), EINA_TRUE);
+
        p->r_button = elm_button_add(vd->ugd->navi_bar);
        elm_object_style_set(p->r_button, "naviframe/title/default");
        elm_object_text_set(p->r_button, dgettext("sys_string", "IDS_COM_SK_SET"));
        evas_object_smart_callback_add(p->r_button, "clicked", _save_cb, vd);
        elm_object_disabled_set(p->r_button, EINA_TRUE);
-       evas_object_show(p->r_button);
+       evas_object_hide(p->r_button);
 
        p->l_button = elm_button_add(vd->ugd->navi_bar);
        elm_object_style_set(p->l_button, "naviframe/title/default");
        elm_object_text_set(p->l_button, dgettext("sys_string", "IDS_COM_SK_CANCEL"));
        evas_object_smart_callback_add(p->l_button, "clicked", _back_cb, vd);
-       evas_object_show(p->l_button);
+       evas_object_hide(p->l_button);
 
        p->l_button2 = elm_button_add(vd->ugd->navi_bar);
+       elm_object_style_set(p->l_button2, "naviframe/title/default");
+       elm_object_text_set(p->l_button2, dgettext("sys_string", "IDS_COM_SK_CANCEL"));
        evas_object_smart_callback_add(p->l_button2, "clicked", _back_cb, vd);
-       elm_object_style_set(p->l_button2, "naviframe/back_btn/default");
+       /*elm_object_style_set(p->l_button2, "naviframe/back_btn/default");*/
        evas_object_show(p->l_button2);
 
        Evas_Object *title_ic = elm_icon_add(vd->ugd->navi_bar);
@@ -374,8 +393,10 @@ static void _push_naviframe(struct viewdata *vd)
        Elm_Object_Item *navi_it = NULL;
        navi_it = elm_naviframe_item_push(vd->ugd->navi_bar, title_str, p->l_button2, NULL, p->layout, NULL);
        elm_object_item_part_content_set(navi_it, "icon", title_ic);
-       elm_object_item_part_content_set(navi_it, "title_left_btn", p->r_button);
-       elm_object_item_part_content_set(navi_it, "title_right_btn", p->l_button);
+       /*elm_object_item_part_content_set(navi_it, "title_left_btn", p->r_button);
+       elm_object_item_part_content_set(navi_it, "title_right_btn", p->l_button);*/
+       elm_object_item_part_content_set(navi_it, "controlbar", p->cbar);
+       p->navi_it = navi_it;
        evas_object_show(vd->ugd->navi_bar);
 }
 
@@ -614,6 +635,7 @@ static void _validate_account(struct viewdata *vd, int account_id)
        elm_object_disabled_set(p->r_button, EINA_TRUE);
        elm_object_disabled_set(p->l_button, EINA_TRUE);
        elm_object_disabled_set(p->l_button2, EINA_TRUE);
+       elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
 
        debug_log("Start Account Validation");
        ugd->popup_validate = setting_get_pb_notify(vd,
@@ -838,7 +860,11 @@ static void _back_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);
+               ecore_imf_context_input_panel_event_callback_del(imf_context,
+                               ECORE_IMF_INPUT_PANEL_STATE_EVENT, _input_panel_state_changed_cb);
+       }
 
        setting_back_to_prev_view(vd);
 }
@@ -916,6 +942,7 @@ static void _popup_ok_cb(void *data, Evas_Object *obj, void *event_info)
        elm_object_disabled_set(p->r_button, EINA_FALSE);
        elm_object_disabled_set(p->l_button, EINA_FALSE);
        elm_object_disabled_set(p->l_button2, EINA_FALSE);
+       elm_object_item_disabled_set(p->c_item[0], EINA_FALSE);
 }
 
 /*static void _popup_cancel_cb(void *data, Evas_Object *obj, void *event_info)
@@ -972,6 +999,7 @@ static void _popup_cancel_validation_cb(void *data, Evas_Object *obj, void *even
        elm_object_disabled_set(p->r_button, EINA_FALSE);
        elm_object_disabled_set(p->l_button, EINA_FALSE);
        elm_object_disabled_set(p->l_button2, EINA_FALSE);
+       elm_object_item_disabled_set(p->c_item[0], EINA_FALSE);
 }
 
 static void _backup_input_cb(void *data, Evas_Object *obj, void *event_info)
@@ -1047,6 +1075,7 @@ static void _backup_input_cb(void *data, Evas_Object *obj, void *event_info)
                p->str_incoming_server == NULL ||
                p->str_incoming_port == NULL) {
                elm_object_disabled_set(p->r_button, EINA_TRUE);
+               elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
                return;
        }
 
@@ -1058,8 +1087,10 @@ static void _backup_input_cb(void *data, Evas_Object *obj, void *event_info)
                g_strcmp0(p->str_incoming_server, "") == 0 ||
                g_strcmp0(p->str_incoming_port, "") == 0) {
                elm_object_disabled_set(p->r_button, EINA_TRUE);
+               elm_object_item_disabled_set(p->c_item[0], EINA_TRUE);
        } else {
                elm_object_disabled_set(p->r_button, EINA_FALSE);
+               elm_object_item_disabled_set(p->c_item[0], EINA_FALSE);
        }
 }
 
@@ -1103,6 +1134,33 @@ static void _eraser_clicked_cb(void *data, Evas_Object *obj, const char *emissio
        elm_entry_entry_set(data, "");
 }
 
+static void _input_panel_state_changed_cb(void *data, Ecore_IMF_Context *ctx, int value)
+{
+       debug_log("");
+
+       if (!data) {
+               debug_log("data is NULL");
+               return;
+       }
+
+       struct viewdata *vd = (struct viewdata *)data;
+       struct priv_data *p = vd->priv;
+
+       if (value == ECORE_IMF_INPUT_PANEL_STATE_SHOW) {
+               debug_log("input panel show");
+               evas_object_show(p->l_button);
+               evas_object_show(p->r_button);
+               elm_object_item_part_content_set(p->navi_it, "title_left_btn", p->r_button);
+               elm_object_item_part_content_set(p->navi_it, "title_right_btn", p->l_button);
+       } else if (value == ECORE_IMF_INPUT_PANEL_STATE_HIDE) {
+               debug_log("input panel hide");
+               elm_object_item_part_content_unset(p->navi_it, "title_left_btn");
+               elm_object_item_part_content_unset(p->navi_it, "title_right_btn");
+               evas_object_hide(p->l_button);
+               evas_object_hide(p->r_button);
+       }
+}
+
 static char *_gl_text_get_cb(void *data, Evas_Object *obj, const char *part)
 {
        debug_log("");
@@ -1219,6 +1277,7 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
        int index = (int)data;
        struct viewdata *vd = g_vd;
        struct priv_data *p = vd->priv;
+       Ecore_IMF_Context *imf_context = NULL;
 
        if (!strcmp(part, "elm.icon")) {
 
@@ -1238,6 +1297,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_account_name, "unfocused", _entry_unfocused_cb, p->ef_account_name);
                        evas_object_show(p->entry_account_name);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_account_name);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_account_name, "elm.swallow.content", p->entry_account_name);
                        elm_object_part_text_set(p->ef_account_name, "elm.text", _("IDS_EMAIL_BODY_ACCOUNT_NAME"));
                        elm_object_signal_callback_add(p->ef_account_name, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_account_name);
@@ -1265,6 +1330,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_user_name, "unfocused", _entry_unfocused_cb, p->ef_user_name);
                        evas_object_show(p->entry_user_name);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_user_name);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_user_name, "elm.swallow.content", p->entry_user_name);
                        elm_object_part_text_set(p->ef_user_name, "elm.text", dgettext("sys_string", "IDS_COM_BODY_USER_NAME"));
                        elm_object_signal_callback_add(p->ef_user_name, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_user_name);
@@ -1294,6 +1365,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_password, "unfocused", _entry_unfocused_cb, p->ef_password);
                        evas_object_show(p->entry_password);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_password);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_password, "elm.swallow.content", p->entry_password);
                        elm_object_part_text_set(p->ef_password, "elm.text", dgettext("sys_string", "IDS_COM_BODY_PASSWORD"));
                        elm_object_signal_callback_add(p->ef_password, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_password);
@@ -1322,6 +1399,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_smtp_server, "unfocused", _entry_unfocused_cb, p->ef_smtp_server);
                        evas_object_show(p->entry_smtp_server);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_smtp_server);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_smtp_server, "elm.swallow.content", p->entry_smtp_server);
                        elm_object_part_text_set(p->ef_smtp_server, "elm.text", _("IDS_EMAIL_BODY_OUTGOING_SERVER"));
                        elm_object_signal_callback_add(p->ef_smtp_server, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_smtp_server);
@@ -1355,6 +1438,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_smtp_port, "unfocused", _entry_unfocused_cb, p->ef_smtp_port);
                        evas_object_show(p->entry_smtp_port);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_smtp_port);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_smtp_port, "elm.swallow.content", p->entry_smtp_port);
                        elm_object_part_text_set(p->ef_smtp_port, "elm.text", _("IDS_EMAIL_BODY_OUTGOING_PORT"));
                        elm_object_signal_callback_add(p->ef_smtp_port, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_smtp_port);
@@ -1382,6 +1471,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_incoming_server, "unfocused", _entry_unfocused_cb, p->ef_incoming_server);
                        evas_object_show(p->entry_incoming_server);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_incoming_server);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_incoming_server, "elm.swallow.content", p->entry_incoming_server);
                        elm_object_part_text_set(p->ef_incoming_server, "elm.text", _("IDS_EMAIL_BODY_INCOMING_SERVER"));
                        elm_object_signal_callback_add(p->ef_incoming_server, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_incoming_server);
@@ -1409,6 +1504,12 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        evas_object_smart_callback_add(p->entry_incoming_port, "unfocused", _entry_unfocused_cb, p->ef_incoming_port);
                        evas_object_show(p->entry_incoming_port);
 
+                       imf_context = elm_entry_imf_context_get(p->entry_incoming_port);
+                       if (imf_context)
+                               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                               _input_panel_state_changed_cb, (void *)vd);
+
                        elm_object_part_content_set(p->ef_incoming_port, "elm.swallow.content", p->entry_incoming_port);
                        elm_object_part_text_set(p->ef_incoming_port, "elm.text", _("IDS_EMAIL_BODY_INCOMING_PORT"));
                        elm_object_signal_callback_add(p->ef_incoming_port, "elm,eraser,clicked", "elm", _eraser_clicked_cb, p->entry_incoming_port);
index 5f975e4..0a71b58 100755 (executable)
@@ -98,6 +98,7 @@ struct priv_data {
        Elm_Object_Item *gl_sync_item;
        Elm_Object_Item *gl_onoff_item;
        Elm_Object_Item *gl_account_item;
+       Elm_Object_Item *navi_it;
 
        int account_deleted;
        int syncing;
@@ -279,6 +280,13 @@ static int _show(struct viewdata *vd)
                return FALSE;
        }
 
+       struct priv_data *p = vd->priv;
+
+       if (p == NULL) {
+               debug_log("priv is NULL");
+               return FALSE;
+       }
+
        EmailSettingUGD *ugd = vd->ugd;
 
        if (account_data) {
@@ -288,6 +296,11 @@ static int _show(struct viewdata *vd)
 
        if (!setting_get_acct_full_data(ugd->account_id, &account_data)) {
                debug_log("setting_get_acct_full_data failed");
+               return FALSE;
+       }
+
+       if (account_data) {
+               elm_object_item_part_text_set(p->navi_it, "elm.text.title", account_data->account_name);
        }
 
        return TRUE;
@@ -364,6 +377,7 @@ static void _push_naviframe(struct viewdata *vd)
        elm_object_item_part_content_set(navi_it, "title_right_btn", p->r_button);
        elm_object_item_part_content_set(navi_it, "controlbar", p->cbar);
        evas_object_show(vd->ugd->navi_bar);
+       p->navi_it = navi_it;
 }
 
 static void _create_list(struct viewdata *vd)
@@ -631,7 +645,7 @@ static void _refresh_cb(void *data, Evas_Object *obj, void *event_info)
        }
 
        struct priv_data *p = vd->priv;
-       unsigned handle = 0;
+       int handle = 0;
        int account_id = account_data->account_id;
 
        /* Inbox sync */
index 0f68fe2..68570b4 100755 (executable)
@@ -98,6 +98,7 @@ struct priv_data {
        Elm_Object_Item *gl_sync_item;
        Elm_Object_Item *gl_onoff_item;
        Elm_Object_Item *gl_account_item;
+       Elm_Object_Item *navi_it;
 
        int account_deleted;
        int syncing;
@@ -279,6 +280,13 @@ static int _show(struct viewdata *vd)
                return FALSE;
        }
 
+       struct priv_data *p = vd->priv;
+
+       if (p == NULL) {
+               debug_log("priv is NULL");
+               return FALSE;
+       }
+
        EmailSettingUGD *ugd = vd->ugd;
 
        if (account_data) {
@@ -288,6 +296,11 @@ static int _show(struct viewdata *vd)
 
        if (!setting_get_acct_full_data(ugd->account_id, &account_data)) {
                debug_log("setting_get_acct_full_data failed");
+               return FALSE;
+       }
+
+       if (account_data) {
+               elm_object_item_part_text_set(p->navi_it, "elm.text.title", account_data->account_name);
        }
 
        return TRUE;
@@ -364,6 +377,7 @@ static void _push_naviframe(struct viewdata *vd)
        elm_object_item_part_content_set(navi_it, "title_right_btn", p->r_button);
        elm_object_item_part_content_set(navi_it, "controlbar", p->cbar);
        evas_object_show(vd->ugd->navi_bar);
+       p->navi_it = navi_it;
 }
 
 static void _create_list(struct viewdata *vd)
@@ -569,9 +583,23 @@ static void _get_date_text_with_formatter(time_t time, char *formatted_str)
 static void _account_edit_cb(void *data, Evas_Object *obj, void *event_info)
 {
        debug_log("");
+       struct viewdata *vd = (struct viewdata *)data;
+       EmailSettingUGD *ugd = vd->ugd;
 
        Elm_Object_Item *item = (Elm_Object_Item *)event_info;
        elm_genlist_item_selected_set(item, EINA_FALSE);
+
+       Viewtype top = ugd->view_st[ugd->view_top];
+       if (top != VIEW_SYNC_SETUP) {
+               debug_log("**double clicked**");
+               return;
+       }
+
+       debug_log("Selected account id:%d", account_data->account_id);
+       ugd->account_id = account_data->account_id;
+       ugd->myaccount_id = account_data->account_svc_id;
+
+       setting_change_view(VIEW_ACCOUNT_EDIT, ugd);
 }
 
 static void _onoff_cb(void *data, Evas_Object *obj, void *event_info)
@@ -617,7 +645,7 @@ static void _refresh_cb(void *data, Evas_Object *obj, void *event_info)
        }
 
        struct priv_data *p = vd->priv;
-       unsigned handle = 0;
+       int handle = 0;
        int account_id = account_data->account_id;
 
        /* Inbox sync */
index ec03455..fe2b56a 100755 (executable)
          program { name: "play_button_press"; \
             action: PLAY_SAMPLE "button-pressed" 1.0; \
          }
-
-
+         
+         
 #define TEXTBLOCK_TAG \
       tag:  "br" "\n";\
       tag:  "ps" "ps";\
index c5feb19..3e4a46b 100755 (executable)
@@ -1006,7 +1006,7 @@ collections {
                        }
                }
        }
-
+       
        group { name: "initial_access_hd_public";
 
                images {
@@ -1121,7 +1121,7 @@ collections {
                                        align: 0.5 0;
                                }
                        }
-
+                       
                        part {
                                name: "middle_padding3";
                                type: RECT;
@@ -1280,7 +1280,7 @@ collections {
                                        align: 0.5 0;
                                }
                        }
-
+                       
                        part {
                                name: "middle_padding3";
                                type: RECT;
@@ -1487,7 +1487,7 @@ collections {
                                }
                        }
                }
-
+               
                programs {
                        program {
                                name: "text1_clicked";
@@ -1610,7 +1610,7 @@ collections {
                                        align: 0.0 0.0;
                                }
                        }
-
+                       
                        part { name: "list";
                                type: SWALLOW;
                                scale: 1;
@@ -1662,7 +1662,7 @@ collections {
                                        align: 0.0 0.0;
                                }
                        }
-
+                       
                        part { name: "list";
                                type: SWALLOW;
                                scale: 1;
@@ -1698,7 +1698,7 @@ collections {
                        }
                }
        }
-
+       
        group { name: "elm/genlist/item/dialogue/email.1text.1icon.2/default";
                alias: "elm/genlist/item_odd/dialogue/email.1text.1icon.2/default";
                alias: "elm/genlist/item_compress/dialogue/email.1text.1icon.2/default";
@@ -1736,7 +1736,7 @@ collections {
                                }
                                GENLIST_DESCRIPTION_FLIP_ENABLED
                        }
-
+                       
                        part { name: "elm.padding.icon.right";
                                clip_to: "disclip";
                                type: RECT;
@@ -1753,7 +1753,7 @@ collections {
                                        visible: 0;
                                }
                        }
-
+                               
                        part { name: "elm.text";
                                clip_to: "disclip";
                                type: TEXT;
@@ -1821,7 +1821,7 @@ collections {
                        //GENLIST_PROGRAM_PLAY_BUTTON_PRESS
                }
        }
-
+       
        group { name: "elm/bg/base/email_default";
                parts {
                        part { name: "base";
@@ -1831,17 +1831,17 @@ collections {
                                        color: 210 210 210 255;
                                }
                        }
-
+                       
                        part { name: "elm.swallow.rectangle";
                                type: SWALLOW;
                                description { state: "default" 0.0; }
                        }
-
+                       
                        part { name: "elm.swallow.background";
                                type: SWALLOW;
                                description { state: "default" 0.0; }
                        }
-
+                       
                        part { name: "elm.swallow.content";
                                type: SWALLOW;
                                description { state: "default" 0.0; }