fix NABI_SE issues
authorMinsoo Kim <minnsoo.kim@samsung.com>
Tue, 23 Oct 2012 05:12:15 +0000 (14:12 +0900)
committerMinsoo Kim <minnsoo.kim@samsung.com>
Tue, 23 Oct 2012 05:12:15 +0000 (14:12 +0900)
23 files changed:
CMakeLists.txt
block/CMakeLists.txt [deleted file]
block/include/email-block.h [deleted file]
block/src/email-block.c [deleted file]
block/theme/email-block-theme-macro.edc [deleted file]
block/theme/email-block-theme.edc [deleted file]
main/CMakeLists.txt
main/org.tizen.email.account.xml [new file with mode: 0755]
packaging/org.tizen.email.spec
setting/CMakeLists.txt
setting/include/email-setting-utils.h
setting/include/email-setting.h
setting/include/sp_list.xml [new file with mode: 0755]
setting/src/email-setting-utils.c
setting/src/email-setting.c
setting/src/email-view-account-edit.c
setting/src/email-view-account-options.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.edc

index d2e0638..4adaca1 100755 (executable)
@@ -27,7 +27,6 @@ ADD_SUBDIRECTORY(setting)
 ADD_SUBDIRECTORY(composer)
 ADD_SUBDIRECTORY(viewer)
 ADD_SUBDIRECTORY(mailbox)
-ADD_SUBDIRECTORY(block)
 ADD_SUBDIRECTORY(account)
 ADD_SUBDIRECTORY(main)
 ADD_SUBDIRECTORY(po)
diff --git a/block/CMakeLists.txt b/block/CMakeLists.txt
deleted file mode 100755 (executable)
index 4ceca17..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(ug-email-block-efl C)
-
-SET(SRCS
-       ./src/email-block.c
-)
-SET(CMAKE_SKIP_BUILD_RPATH TRUE)
-
-IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
-       SET(CMAKE_BUILD_TYPE "Release")
-ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
-MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
-
-SET(CMAKE_MAILBLOCK_SOURCE_DIR "${CMAKE_SOURCE_DIR}/block")
-SET(CMAKE_MAILBLOCK_BINARY_DIR "${CMAKE_BINARY_DIR}/block")
-INCLUDE_DIRECTORIES(${CMAKE_MAILBLOCK_SOURCE_DIR}/include)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/common/include)
-
-INCLUDE(FindPkgConfig)
-pkg_check_modules(pkgs-block REQUIRED appcore-efl contacts-service ui-gadget-1 elementary gobject-2.0 email-service dlog capi-appfw-application)
-
-FOREACH(flag ${pkgs-block_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
-#SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -finstrument-functions")
-
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-
-FIND_PROGRAM(UNAME NAMES uname)
-EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
-IF("${ARCH}" STREQUAL "arm")
-       ADD_DEFINITIONS("-DTARGET")
-       MESSAGE("add -DTARGET")
-       SET(CMAKE_C_FLAGS_RELEASE "-mabi=aapcs-linux -msoft-float -O2")
-ENDIF("${ARCH}" STREQUAL "arm")
-
-ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
-ADD_DEFINITIONS("-DDEBUG")
-ADD_DEFINITIONS("-DFACTORYFS=\"$ENV{FACTORYFS}\"")
-ADD_DEFINITIONS("-DDATAFS=\"$ENV{DATAFS}\"")
-
-ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} email-common ${pkgs-block_LDFLAGS})
-
-ADD_CUSTOM_TARGET(email-block-theme.edj
-               COMMAND edje_cc -id ${CMAKE_SOURCE_DIR}/images
-               ${CMAKE_MAILBLOCK_SOURCE_DIR}/theme/email-block-theme.edc ${CMAKE_MAILBLOCK_BINARY_DIR}/email-block-theme.edj
-               DEPENDS ${CMAKE_MAILBLOCK_SOURCE_DIR}/theme/email-block-theme.edc
-)
-ADD_DEPENDENCIES(${PROJECT_NAME} email-block-theme.edj)
-
-INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${UGDIR})
-INSTALL(FILES ${CMAKE_MAILBLOCK_BINARY_DIR}/email-block-theme.edj DESTINATION ${EDJDIR})
-
diff --git a/block/include/email-block.h b/block/include/email-block.h
deleted file mode 100755 (executable)
index 60d925c..0000000
+++ /dev/null
@@ -1,251 +0,0 @@
-/*
- * Copyright 2012  Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.tizenopensource.org/license
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef __DEF_email_block_H_
-#define __DEF_email_block_H_
-
-#include <Edje.h>
-#include <Elementary.h>
-#include <appcore-efl.h>
-#include <libintl.h>
-#undef _
-#include <ui-gadget-module.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include <glib.h>
-#include <glib-object.h>
-#include <Ecore_IMF.h>
-
-#include "email-api.h"
-#include "email-types.h"
-
-#include "email-engine.h"
-#include "email-debug.h"
-#include "email-locale.h"
-
-#define _EDJ(o) elm_layout_edje_get(o)
-
-#define MAX_RECIPIENT_ADDRESS_LEN 234
-#define MAX_RECIPIENT_COUNT 50
-#define MAX_RECENT_CNT 100
-#define MAX_RECENT_MAIL_TO_RETRIEVE 10
-
-#define ICON_PATH IMGDIR
-#define EDJ_PATH EDJDIR
-#define THEME_PATH EDJ_PATH"/email-setting-theme.edj"
-#define EMAIL_BLOCK_THEME_PATH EDJ_PATH"/email-block-theme.edj"
-
-typedef struct ug_data EmailBlockAppData;
-struct ug_data {
-       Evas *evas;
-       Evas_Object *win_main;
-
-       Evas_Object *layout_main;
-       Evas_Object *layout_add;
-       Evas_Object *layout_crt;
-       Evas_Object *layout_edit;
-       Evas_Object *timeout_popup;
-       Evas_Object *bg;
-       Elm_Theme *theme;
-       int account_id;
-       int mailbox_id;
-       char *str_filter_name;
-
-       ui_gadget_h ug;
-       ui_gadget_h ug_contact;
-       ui_gadget_h ug_group;
-       struct ug_cbs cbs;
-
-       Evas_Object *main_box;
-       Evas_Object *gl_addrs;
-       Evas_Object *gl_subject;
-       Evas_Object *gl_string;
-       Evas_Object *gl_edit;
-       Evas_Object *gl_add_filter;
-       Evas_Object *navi_bar;
-       Evas_Object *control_bar;
-       Evas_Object *control_bar_add;
-       Evas_Object *control_bar_edit;
-       Evas_Object *segment;
-       Evas_Object *segment_layout;
-       Evas_Object *noc;
-       Evas_Object *noc_ly;
-       Evas_Object *sub_ly;
-
-       email_rule_t *rule_list;
-       Elm_Genlist_Item_Class itc_block;
-       Elm_Genlist_Item_Class itc_del;
-       Elm_Genlist_Item_Class itc1;
-       Elm_Genlist_Item_Class itc2;
-       Elm_Genlist_Item_Class itc3;
-       Elm_Genlist_Item_Class itc4;
-       Elm_Genlist_Item_Class itc5;
-
-       int match_crt;
-       int update_filter_id;
-       int delete_filter_id;
-
-       Evas_Object *l_button;
-       Evas_Object *r_button;
-       Evas_Object *l_button2;
-       Evas_Object *r_button2;
-       Evas_Object *l_button3;
-       Evas_Object *r_button3;
-       Evas_Object *l_button4;
-       Evas_Object *r_button4;
-       Evas_Object *add_button;
-       Evas_Object *edit_button;
-       Evas_Object *del_button;
-       Evas_Object *back_btn_add;
-       Evas_Object *add_icon;
-       Evas_Object *edit_icon;
-       Evas_Object *del_icon;
-       Evas_Object *select_all_layout;
-       Evas_Object *select_all_checkbox;
-       Evas_Object *recent_lbutton;
-
-       Evas_Object *scr_add;
-       Evas_Object *scr_crt;
-       Evas_Object *filter_box;
-       Evas_Object *box_crt;
-       Evas_Object *dg_crt;
-       Evas_Object *df_filter_name;
-       Evas_Object *df_match;
-       Evas_Object *ef_match;
-       Evas_Object *ef_filter_name;
-       Evas_Object *entry_filter_name;
-       Evas_Object *di_btns;
-       Evas_Object *layout_btn;
-       Evas_Object *group_btn;
-       Evas_Object *contact_btn;
-       Evas_Object *recent_btn;
-       Evas_Object *waiting_popup;
-       email_mail_list_item_t *recent_mail_data;
-       Ecore_Timer *recent_timer;
-       Evas_Object *di_crt1;
-       Evas_Object *di_crt2;
-       Evas_Object *di_crt_rd1;
-       Evas_Object *di_crt_rd2;
-       Evas_Object *sp1;
-       Evas_Object *sp2;
-       Evas_Object *sp_crt;
-       Evas_Object *popup_empty;
-       Evas_Object *recent_genlist;
-       Evas_Object *block_recent_select_all_layout;
-       Evas_Object *recent_box;
-       Evas_Object *block_recent_select_all_checkbox;
-       Evas_Object *block_select_all_layout;
-       Evas_Object *no_content;
-       Evas_Object *recent_select_info;
-       Evas_Object *edit_select_info;
-       Evas_Object *recent_select_info_ly;
-       Evas_Object *edit_select_info_ly;
-       Eina_Bool block_recent_select_all_checked;
-
-       int checked_count;
-       int total_count;
-       int mode;
-       int block_type;
-       int edit_filter_id;
-       int address_rule_count;
-       int subject_rule_count;
-       int selected_segment;
-       int view_type;
-       int b_btn_layout_show;
-       int edit_total_count;
-       int edit_checked_count;
-       Eina_Bool select_all_checked;
-
-       Elm_Object_Item *selected_item;
-       Elm_Object_Item * c_item[4];
-       Elm_Object_Item * c_item_add[4];
-       Elm_Object_Item * c_item_edit[4];
-       Elm_Object_Item *del_btn_item;
-       Elm_Object_Item *empty_btn_item;
-
-       Elm_Object_Item *navi_main_it;
-};
-
-typedef struct {
-       gchar email_addr[MAX_RECIPIENT_ADDRESS_LEN];
-} EmailList;
-
-typedef struct {
-       int selected_email_idx;
-       int email_cnt;
-       bool is_contact_info;
-       gchar *display_name;
-       EmailList email_list[MAX_RECIPIENT_COUNT];
-} EmailRecipientInfo;
-
-typedef struct {
-       email_rule_t *rule;
-       Elm_Object_Item *it;
-       Eina_Bool checked;
-       Evas_Object *genlist;
-} ListItemData;
-
-enum {
-       TYPE_BLOCK_ADDRESS = 1,
-       TYPE_BLOCK_SUBJECT,
-       TYPE_BLOCK_STRING,
-       TYPE_BLOCK_MAX
-};
-
-enum {
-       TYPE_MATCH_CRT_INC_ON = 1,
-       TYPE_MATCH_CRT_WHOLE_ON,
-       TYPE_MATCH_CRT_MAX
-};
-
-enum {
-       BLOCK_MODE_ADD = 1,
-       BLOCK_MODE_EDIT,
-       BLOCK_MODE_MAX
-};
-
-enum {
-       VIEW_BLOCK_MAIN = 1,
-       VIEW_BLOCK_FILTER_DATA_SET,
-       VIEW_BLOCK_CRITERIA_SET,
-       VIEW_BLOCK_EDIT_FILTER_LIST,
-       VIEW_BLOCK_RECENT_ADD,
-       VIEW_BLOCK_CONTACT_ADD,
-       VIEW_BLOCK_MAX
-};
-
-typedef struct _Item_Data Item_Data;
-typedef struct _View_Data View_Data;
-
-struct _View_Data {
-       Evas_Object *select_all_layout;
-       Evas_Object *select_all_checkbox;
-       Eina_Bool select_all_checked;
-       int total_count;
-       int checked_count;
-};
-
-struct _Item_Data {
-       Elm_Object_Item *it;    /* Genlist Item pointer */
-       Eina_Bool checked;      /* Check status */
-       char *address;
-};
-
-#endif /* __DEF_email_block_H__ */
-
-/* EOF */
diff --git a/block/src/email-block.c b/block/src/email-block.c
deleted file mode 100755 (executable)
index bb4bd9a..0000000
+++ /dev/null
@@ -1,2572 +0,0 @@
-/*
- * Copyright 2012  Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.tizenopensource.org/license
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef UG_MODULE_API
-#define UG_MODULE_API __attribute__ ((visibility("default")))
-#endif
-
-#include "email-block.h"
-#include "email-utils.h"
-#include <contacts-svc.h>
-#include <contacts-ug.h>
-#include <vconf.h>
-#include <vconf-keys.h>
-#include <string.h>
-#include <stdlib.h>
-
-Evas_Object *g_delete_btn = NULL;
-char *block_addr = NULL;
-static EmailBlockAppData *_g_eb_ug_data = NULL;
-static Elm_Genlist_Item_Class itc;
-
-#define EMAIL_VCONF_KEY_BLOCK_RULE_CHANGED     "file/private/org.tizen.email/spam_rule_changed"
-
-/* appcore */
-static void *on_create(ui_gadget_h ug, enum ug_mode mode, service_h service, void *priv);
-static void on_start(ui_gadget_h ug, service_h service, void *priv);
-static void on_pause(ui_gadget_h ug, service_h service, void *priv);
-static void on_resume(ui_gadget_h ug, service_h service, void *priv);
-static void on_destroy(ui_gadget_h ug, service_h service, void *priv);
-static void on_message(ui_gadget_h ug, service_h msg, service_h service, void *priv);
-static void on_event(ui_gadget_h ug, enum ug_event event, service_h service, void *priv);
-static void on_key_event(ui_gadget_h ug, enum ug_key_event event, service_h service, void *priv);
-
-static void layout_cb(ui_gadget_h ug, enum ug_mode mode, void *priv);
-static void result_cb(ui_gadget_h ug, service_h service, void *priv);
-static void destroy_cb(ui_gadget_h ug, void *priv);
-static ui_gadget_h create_ug(char *ug_name, service_h service, void *data);
-static void _win_profile_changed_cb(void *data, Evas_Object *obj, void *event);
-
-static void eb_create_view(EmailBlockAppData *ug_data);
-static void eb_add_navigation_bar(EmailBlockAppData *ug_data);
-static void eb_add_control_bar(EmailBlockAppData *ug_data);
-static void eb_create_first_view(EmailBlockAppData *ug_data);
-static void eb_create_list(EmailBlockAppData *ug_data);
-static void eb_free_list(EmailBlockAppData *ug_data);
-static void eb_create_noc(EmailBlockAppData *ug_data);
-static void eb_free_noc(EmailBlockAppData *ug_data);
-static void eb_destroy_main_view(EmailBlockAppData *ug_data);
-static void eb_destroy_filter_add_view(EmailBlockAppData *ug_data);
-
-static void _add_filter_clicked_cb(void *data, Evas_Object *obj, void *event_info);
-static void _add_filter_cancel_clicked_cb(void *data, Evas_Object *obj, void *event_info);
-static void _add_one_rule(EmailBlockAppData *ug_data, char *buf);
-static void _changed_filter_type_cb(void *data, Evas_Object *obj, void *event_info);
-static void _back_cb(void *data, Evas_Object *obj, void *event_info);
-static void _edit_cb(void *data, Evas_Object *obj, void *event_info);
-static void _back_prev_view_cb(void *data, Evas_Object *obj, void *event_info);
-static void _delete_rule_cb(void *data, Evas_Object *obj, void *event_info);
-static void _rule_save_cb(void *data, Evas_Object *obj, void *event_info);
-static void _contact_button_cb(void *data, Evas_Object *obj, void *event_info);
-static void _recent_button_cb(void *data, Evas_Object *obj, void *event_info);
-static void _block_rule_vconf_key_changed_cb(keynode_t *key, void *data);
-static void _get_contact_email_list(const char *val, char **result, EmailBlockAppData *ug_data);
-
-static void _popup_block_clicked_cb(void *data, Evas_Object *obj, void *event_info);
-static void _del_button_state_set(EmailBlockAppData *ug_data);
-static void _show_selection_info(EmailBlockAppData *ugd);
-
-static void _block_recent_create_view(void *data);
-static void _block_recent_init(EmailBlockAppData *ugd);
-static Evas_Object *_block_recent_create_genlist_top_half(void *data);
-static Eina_Bool _block_recent_create_genlist_bottom_half(void *data);
-static bool _block_recent_check_addr_is_duplicated(const char *addr, Evas_Object *recent_list);
-static void _block_recent_back_cb(void *data, Evas_Object *obj, void *event_info);
-static Evas_Object *_block_recent_create_no_content_view(Evas_Object *parent, void *data);
-static void _block_recent_show_selection_info(EmailBlockAppData *ugd);
-static void _block_recent_done_cb(void *data, Evas_Object *obj, void *event_info);
-static void _block_recent_item_check_changed_cb(void *data, Evas_Object *obj, void *event_info);
-static Evas_Object *_block_recent_create_layout(EmailBlockAppData *ugd);
-static void _block_recent_set_editmode(void *data);
-static void _block_recent_select_all_layout_mouse_down_cb(void *data, Evas * evas, Evas_Object *obj, void *event_info);
-static void _block_recent_select_all_check_changed_cb(void *data, Evas_Object *obj, void *event_info);
-static void _block_recent_check_select_all(EmailBlockAppData *ugd);
-static void _block_recent_set_genlist_item_style(EmailBlockAppData *ugd);
-static void _block_recent_gl_sel(void *data, Evas_Object *obj, void *event_info);
-static char *_block_recent_gl_label_get(void *data, Evas_Object *obj, const char *part);
-static Evas_Object *_block_recent_gl_icon_get(void *data, Evas_Object *obj, const char *part);
-
-static void _edit_item_check_changed_cb(void *data, Evas_Object *obj, void *event_info);
-static void _check_select_all(EmailBlockAppData *ug_data);
-static void _select_all_layout_mouse_down_cb(void *data, Evas * evas, Evas_Object *obj, void *event_info);
-static void _select_all_check_changed_cb(void *data, Evas_Object *obj, void *event_info);
-static char *_eb_gl_label_get(void *data, Evas_Object *obj, const char *part);
-static void _eb_gl_sel_cb(void *data, Evas_Object *obj, void *event_info);
-static void _eb_gl_del(void *data, Evas_Object *obj);
-static Evas_Object *_eb_gl_add_ef_icon_get(void *data, Evas_Object *obj, const char *part);
-/*static Evas_Object *_eb_gl_add_btn_icon_get(void *data, Evas_Object *obj, const char *part);*/
-static void _cb_backup_input(void *data, Evas_Object *obj, void *event_info);
-static void _cb_entry_focused(void *data, Evas_Object *obj, void *event_info);
-static void _cb_entry_unfocused(void *data, Evas_Object *obj, void *event_info);
-static void _cb_eraser_clicked(void *data, Evas_Object *obj, const char *emission, const char *source);
-
-/* Call back function to get the information of buttons of underlying layer in sweep menu */
-static Evas_Object *_eb_gl_icon_get(void *data, Evas_Object *obj, const char *part);
-static void _eb_sweep_edit_clicked_cb(void *data, Evas_Object *obj, void *event_info);
-static void _eb_sweep_delete_clicked_cb(void *data, Evas_Object *obj, void *event_info);
-static void _my_gl_mode_right(void *data, Evas_Object *obj, void *event_info);
-static void _my_gl_mode_left(void *data, Evas_Object *obj, void *event_info);
-static void _my_gl_mode_cancel(void *data, Evas_Object *obj, void *event_info);
-
-static void *on_create(ui_gadget_h ug, enum ug_mode mode, service_h service, void *priv)
-{
-       debug_log("");
-
-       Evas_Object *win;
-       EmailBlockAppData *ug_data;
-
-       if (!ug || !priv)
-               return NULL;
-
-       ug_data = priv;
-       ug_data->ug = ug;
-
-       win = ug_get_window();
-       if (!win)
-               return NULL;
-
-       ug_data->win_main = win;
-       ug_data->evas = evas_object_evas_get(win);
-
-       char *id = NULL;
-       service_get_extra_data(service, EMAIL_BUNDLE_KEY_ACCOUNT_ID, &id);
-       ug_data->account_id = atoi(id);
-       g_free(id);
-
-       char *mailbox_id = NULL;
-       service_get_extra_data(service, EMAIL_BUNDLE_KEY_MAILBOX, &mailbox_id);
-       ug_data->mailbox_id = atoi(mailbox_id);
-       g_free(mailbox_id);
-
-       debug_log("ACCOUNT_ID:%d", ug_data->account_id);
-       debug_log("MAILBOX_ID:%d", ug_data->mailbox_id);
-
-       ug_data->cbs.layout_cb = layout_cb;
-       ug_data->cbs.result_cb = result_cb;
-       ug_data->cbs.destroy_cb = destroy_cb;
-       ug_data->cbs.priv = (void *)ug_data;
-
-       /* theme extension */
-       ug_data->theme = elm_theme_new();
-       elm_theme_ref_set(ug_data->theme, NULL);
-       elm_theme_extension_add(ug_data->theme, EMAIL_BLOCK_THEME_PATH);
-
-       eb_create_view(ug_data);
-
-       int vconf_ret = -1;
-       vconf_ret = vconf_notify_key_changed(EMAIL_VCONF_KEY_BLOCK_RULE_CHANGED, _block_rule_vconf_key_changed_cb, ug_data);
-       if (vconf_ret == -1) {
-               debug_log("vconf_notify_key_changed failed");
-       }
-
-       return ug_data->layout_main;
-}
-
-static void on_start(ui_gadget_h ug, service_h service, void *priv)
-{
-       debug_log("");
-}
-
-static void on_pause(ui_gadget_h ug, service_h service, void *priv)
-{
-       debug_log("");
-}
-
-static void on_resume(ui_gadget_h ug, service_h service, void *priv)
-{
-       debug_log("");
-}
-
-static void on_destroy(ui_gadget_h ug, service_h service, void *priv)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data;
-
-       if (!ug || !priv)
-               return;
-
-       ug_data = priv;
-
-       /* theme extension */
-       elm_theme_extension_del(ug_data->theme, EMAIL_BLOCK_THEME_PATH);
-       elm_theme_free(ug_data->theme);
-
-       int vconf_ret = -1;
-       vconf_ret = vconf_ignore_key_changed(EMAIL_VCONF_KEY_BLOCK_RULE_CHANGED, _block_rule_vconf_key_changed_cb);
-       if (vconf_ret == -1) {
-               debug_log("vconf_ignore_key_changed failed");
-       }
-
-       vconf_ret = vconf_unset(EMAIL_VCONF_KEY_BLOCK_RULE_CHANGED);
-       if (vconf_ret == -1) {
-               debug_log("vconf_unset failed");
-       }
-
-       eb_destroy_main_view(ug_data);
-}
-
-static void on_message(ui_gadget_h ug, service_h msg, service_h service, void *priv)
-{
-       debug_log("");
-}
-
-static void on_event(ui_gadget_h ug, enum ug_event event, service_h service, void *priv)
-{
-       debug_log("");
-
-       switch (event) {
-       case UG_EVENT_LOW_MEMORY:
-               break;
-       case UG_EVENT_LOW_BATTERY:
-               break;
-       case UG_EVENT_LANG_CHANGE:
-               break;
-       case UG_EVENT_ROTATE_PORTRAIT:
-               break;
-       case UG_EVENT_ROTATE_PORTRAIT_UPSIDEDOWN:
-               break;
-       case UG_EVENT_ROTATE_LANDSCAPE:
-               break;
-       case UG_EVENT_ROTATE_LANDSCAPE_UPSIDEDOWN:
-               break;
-       case UG_EVENT_REGION_CHANGE:
-               break;
-       default:
-               break;
-       }
-}
-
-static void on_key_event(ui_gadget_h ug, enum ug_key_event event, service_h service, void *priv)
-{
-       debug_log("");
-
-       if (!ug || !priv)
-               return;
-
-       EmailBlockAppData *ug_data;
-       ug_data = priv;
-
-       switch (event) {
-       case UG_KEY_EVENT_END:
-               if (elm_naviframe_top_item_get(ug_data->navi_bar) == elm_naviframe_bottom_item_get(ug_data->navi_bar))
-                       ug_destroy_me(ug);
-               else
-                       _back_prev_view_cb(ug_data, NULL, NULL);
-               break;
-
-       default:
-               break;
-       }
-}
-
-static void layout_cb(ui_gadget_h ug, enum ug_mode mode, void *priv)
-{
-       debug_log("");
-       Evas_Object *base, *win;
-
-       if (!ug || !priv)
-               return;
-
-       base = ug_get_layout(ug);
-       if (!base)
-               return;
-
-       win = ug_get_window();
-
-       switch (mode) {
-       case UG_MODE_FULLVIEW:
-               evas_object_size_hint_weight_set(base, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-               elm_win_resize_object_add(win, base);
-               evas_object_show(base);
-               break;
-
-       default:
-               break;
-       }
-}
-
-static void result_cb(ui_gadget_h ug, service_h service, void *priv)
-{
-       debug_log("");
-
-       if (!ug || !priv)
-               return;
-
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)priv;
-
-       if (ug != ug_data->ug_contact) {
-               goto FINISH;
-       }
-
-       char *val = NULL;
-       service_get_extra_data(service, CT_UG_BUNDLE_RESULT_EMAIL_ID_LIST, &val);
-
-       if (!val) {
-               debug_log("service_get_extra_data return NULL");
-               goto FINISH;
-       }
-
-       char *result_address = NULL;
-       _get_contact_email_list(val, &result_address, ug_data);
-       g_free(val);
-
-       if (!result_address) {
-               ug_data->popup_empty = elm_popup_add(ug_data->layout_main);
-               evas_object_size_hint_weight_set(ug_data->popup_empty, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-               elm_popup_timeout_set(ug_data->popup_empty, 1);
-               elm_object_text_set(ug_data->popup_empty, _("IDS_EMAIL_POP_NO_EMAIL_ADDRESS"));
-               elm_object_part_text_set(ug_data->popup_empty, "title,text", _("IDS_EMAIL_POP_ALERT"));
-               evas_object_smart_callback_add(ug_data->popup_empty, "block,clicked", _popup_block_clicked_cb, ug_data);
-               evas_object_show(ug_data->popup_empty);
-               goto FINISH;
-       }
-
-       if (!block_addr) {
-               block_addr = g_strdup(result_address);
-               debug_log("Null block_addr = %s", block_addr);
-               elm_entry_entry_set(ug_data->entry_filter_name, block_addr);
-       } else {
-               char *addr_tmp = block_addr;
-               block_addr = g_strconcat(block_addr, ";", result_address, NULL);
-               debug_log("Not Null block_addr = %s", block_addr);
-               elm_entry_entry_set(ug_data->entry_filter_name, block_addr);
-               g_free(addr_tmp);
-       }
-
-       g_free(result_address);
-
-FINISH:
-       evas_object_show(ug_data->entry_filter_name);
-       elm_object_focus_set(ug_data->entry_filter_name, EINA_TRUE);
-       ug_data->view_type = VIEW_BLOCK_FILTER_DATA_SET;
-       ug_destroy(ug);
-}
-
-static void destroy_cb(ui_gadget_h ug, void *priv)
-{
-       debug_log("");
-
-       if (!ug || !priv)
-               return;
-
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)priv;
-
-       if (ug == ug_data->ug_contact) {
-               ug_data->view_type = VIEW_BLOCK_FILTER_DATA_SET;
-               /*elm_object_signal_emit(ug_data->ef_filter_name, "clicked", "elm");*/
-               evas_object_show(ug_data->entry_filter_name);
-               elm_object_focus_set(ug_data->entry_filter_name, EINA_TRUE);
-       }
-
-       ug_destroy(ug);
-}
-
-UG_MODULE_API int UG_MODULE_INIT(struct ug_module_ops *ops)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data;
-
-       if (!ops)
-               return -1;
-
-       ug_data = calloc(1, sizeof(EmailBlockAppData));
-       if (!ug_data)
-               return -1;
-
-       ops->create = on_create;
-       ops->start = on_start;
-       ops->pause = on_pause;
-       ops->resume = on_resume;
-       ops->destroy = on_destroy;
-       ops->message = on_message;
-       ops->event = on_event;
-       ops->key_event = on_key_event;
-       ops->priv = ug_data;
-       ops->opt = UG_OPT_INDICATOR_ENABLE;
-
-       _g_eb_ug_data = ug_data;
-
-       return 0;
-}
-
-UG_MODULE_API void UG_MODULE_EXIT(struct ug_module_ops *ops)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data;
-
-       if (!ops)
-               return;
-
-       ug_data = ops->priv;
-       if (ug_data)
-               free(ug_data);
-
-       _g_eb_ug_data = NULL;
-}
-
-static ui_gadget_h create_ug(char *ug_name, service_h service, void *data)
-{
-       debug_log("");
-       ui_gadget_h ug;
-       struct ug_cbs cbs = { 0, };
-
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       cbs.layout_cb = layout_cb;
-       cbs.result_cb = result_cb;
-       cbs.destroy_cb = destroy_cb;
-       cbs.priv = data;
-
-       ug = ug_create(ug_data->ug, ug_name, UG_MODE_FULLVIEW, service, &cbs);
-
-       return ug;
-}
-
-static void eb_create_view(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-
-       Evas_Object *layout;
-
-       ug_data->bg = elm_bg_add(ug_data->win_main);
-       evas_object_size_hint_weight_set(ug_data->bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       elm_win_resize_object_add(ug_data->win_main, ug_data->bg);
-       evas_object_show(ug_data->bg);
-
-       layout = elm_layout_add(ug_data->win_main);
-       elm_layout_theme_set(layout, "layout", "application", "default");
-       evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       elm_win_resize_object_add(ug_data->win_main, layout);
-       evas_object_show(layout);
-       ug_data->layout_main = layout;
-       elm_object_part_content_set(ug_data->layout_main, "elm.swallow.bg", ug_data->bg);
-
-       evas_object_smart_callback_add(ug_data->win_main, "profile,changed", _win_profile_changed_cb, ug_data);
-
-       ug_data->selected_segment = 0;
-       eb_add_navigation_bar(ug_data);
-       eb_add_control_bar(ug_data);
-       eb_create_first_view(ug_data);
-}
-
-static void _win_profile_changed_cb(void *data, Evas_Object *obj, void *event)
-{
-       debug_log("");
-       if (!data) {
-               debug_log("data is NULL");
-               return;
-       }
-
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       const char *profile = elm_config_profile_get();
-       if (!g_strcmp0(profile, "desktop"))
-               elm_layout_theme_set(ug_data->layout_main, "layout", "application", "noindicator");
-       else
-               elm_layout_theme_set(ug_data->layout_main, "layout", "application", "default");
-
-       evas_object_size_hint_weight_set(ug_data->layout_main, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       elm_win_resize_object_add(ug_data->win_main, ug_data->layout_main);
-       evas_object_show(ug_data->layout_main);
-}
-
-static void eb_add_navigation_bar(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-       Evas_Object *navi_bar;
-
-       navi_bar = elm_naviframe_add(ug_data->layout_main);
-       elm_object_part_content_set(ug_data->layout_main, "elm.swallow.content", navi_bar);
-       evas_object_show(navi_bar);
-
-       ug_data->navi_bar = navi_bar;
-}
-
-static void eb_add_control_bar(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-       Elm_Object_Item *it1, *it2;
-
-       if (ug_data == NULL)
-               return;
-
-       ug_data->control_bar = elm_toolbar_add(ug_data->navi_bar);
-       elm_toolbar_shrink_mode_set(ug_data->control_bar, ELM_TOOLBAR_SHRINK_EXPAND);
-       elm_object_style_set(ug_data->control_bar, "naviframe");
-       evas_object_show(ug_data->control_bar);
-
-       ug_data->c_item[0] = elm_toolbar_item_append(ug_data->control_bar, NULL,
-                       dgettext("sys_string", "IDS_COM_SK_DELETE"), _edit_cb, ug_data);
-       elm_object_item_disabled_set(elm_toolbar_item_append(ug_data->control_bar, NULL, "", NULL, NULL), EINA_TRUE);
-       ug_data->c_item[1] = elm_toolbar_item_append(ug_data->control_bar, NULL,
-                       dgettext("sys_string", "IDS_COM_SK_ADD"), _add_filter_clicked_cb, ug_data);
-
-       ug_data->segment = elm_segment_control_add(ug_data->navi_bar);
-       it1 = elm_segment_control_item_add(ug_data->segment, NULL, _("IDS_EMAIL_BODY_ADDRESS"));
-       it2 = elm_segment_control_item_add(ug_data->segment, NULL, dgettext("sys_string", "IDS_COM_BODY_SUBJECT"));
-       evas_object_smart_callback_add(ug_data->segment, "changed", _changed_filter_type_cb, ug_data);
-       evas_object_show(ug_data->segment);
-
-       debug_log("selected segment: %d", ug_data->selected_segment);
-       if (ug_data->selected_segment == 0) {
-               ug_data->block_type = TYPE_BLOCK_ADDRESS;
-               elm_segment_control_item_selected_set(it1, TRUE);
-       } else if (ug_data->selected_segment == 1) {
-               ug_data->block_type = TYPE_BLOCK_SUBJECT;
-               elm_segment_control_item_selected_set(it2, TRUE);
-       }
-}
-
-static void eb_create_first_view(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-
-       ug_data->view_type = VIEW_BLOCK_MAIN;
-
-       ug_data->sub_ly = elm_layout_add(ug_data->navi_bar);
-       elm_layout_theme_set(ug_data->sub_ly, "layout", "application", "noindicator");
-       evas_object_size_hint_weight_set(ug_data->sub_ly, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_show(ug_data->sub_ly);
-
-       ug_data->l_button = elm_button_add(ug_data->navi_bar);
-       evas_object_smart_callback_add(ug_data->l_button, "clicked", _back_cb, ug_data);
-       elm_object_style_set(ug_data->l_button, "naviframe/back_btn/default");
-       evas_object_show(ug_data->l_button);
-
-       ug_data->navi_main_it = elm_naviframe_item_push(ug_data->navi_bar, _("IDS_EMAIL_HEADER_BLOCK_EMAILS"), ug_data->l_button, NULL, ug_data->sub_ly, NULL);
-       elm_naviframe_item_style_set(ug_data->navi_main_it, "segment");
-       elm_object_item_part_content_set(ug_data->navi_main_it, "segment", ug_data->segment);
-       elm_object_item_part_content_set(ug_data->navi_main_it, "controlbar", ug_data->control_bar);
-
-       _changed_filter_type_cb(ug_data, ug_data->segment, NULL);
-}
-
-static void eb_create_list(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-       int count, i;
-       email_rule_t *rule_list = NULL;
-
-       ug_data->main_box = elm_box_add(ug_data->navi_bar);
-       evas_object_size_hint_weight_set(ug_data->main_box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_show(ug_data->main_box);
-       elm_object_part_content_set(ug_data->sub_ly, "elm.swallow.content", ug_data->main_box);
-
-       ug_data->gl_addrs = elm_genlist_add(ug_data->navi_bar);
-       elm_genlist_block_count_set(ug_data->gl_addrs, 25);
-       evas_object_size_hint_weight_set(ug_data->gl_addrs, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(ug_data->gl_addrs, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       evas_object_smart_callback_add(ug_data->gl_addrs, "drag,start,right", _my_gl_mode_right, NULL); /* sweep right */
-       evas_object_smart_callback_add(ug_data->gl_addrs, "drag,start,left", _my_gl_mode_left, NULL);   /* sweep left */
-       evas_object_smart_callback_add(ug_data->gl_addrs, "drag,start,up", _my_gl_mode_cancel, NULL);   /* flick */
-       evas_object_smart_callback_add(ug_data->gl_addrs, "drag,start,down", _my_gl_mode_cancel, NULL); /* flick */
-
-       ug_data->gl_subject = elm_genlist_add(ug_data->navi_bar);
-       elm_genlist_block_count_set(ug_data->gl_subject, 25);
-       evas_object_size_hint_weight_set(ug_data->gl_subject, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(ug_data->gl_subject, EVAS_HINT_FILL, EVAS_HINT_FILL);
-       evas_object_smart_callback_add(ug_data->gl_subject, "drag,start,right", _my_gl_mode_right, NULL);       /* sweep right */
-       evas_object_smart_callback_add(ug_data->gl_subject, "drag,start,left", _my_gl_mode_left, NULL);         /* sweep left */
-       evas_object_smart_callback_add(ug_data->gl_subject, "drag,start,up", _my_gl_mode_cancel, NULL);         /* flick */
-       evas_object_smart_callback_add(ug_data->gl_subject, "drag,start,down", _my_gl_mode_cancel, NULL);       /* flick */
-
-       elm_object_style_set(ug_data->gl_addrs, "1text");
-       elm_object_style_set(ug_data->gl_subject, "1text");
-
-       ug_data->itc_block.item_style = "1text";        /* for upper layer */
-       ug_data->itc_block.decorate_item_style = "mode/slide2"; /* for lower layer */
-       ug_data->itc_block.func.text_get = _eb_gl_label_get;
-       ug_data->itc_block.func.del = _eb_gl_del;
-       ug_data->itc_block.func.content_get = _eb_gl_icon_get;
-       ug_data->itc_block.decorate_all_item_style = "edit_default";
-
-       /* get the rule list from service */
-       if (email_get_rule_list(&rule_list, &count) < 0) {
-               debug_log("email_get_rule_list failed");
-       }
-
-       if (count > 0) {
-               /* copy rule list */
-               if (ug_data->rule_list != NULL) {
-                       free(ug_data->rule_list);
-                       ug_data->rule_list = NULL;
-               }
-
-               ug_data->rule_list = (email_rule_t *) malloc(sizeof(email_rule_t)*count);
-               if (ug_data->rule_list && rule_list)
-                       memcpy(ug_data->rule_list, rule_list, sizeof(email_rule_t)*count);
-               else
-                       goto FINISH_OFF;
-
-               for (i = 0; i < count; i++) {
-                       ListItemData *item_data = NULL;
-                       if (ug_data->rule_list[i].type == EMAIL_FILTER_FROM) {
-                               item_data = calloc(1, sizeof(ListItemData));
-                               item_data->rule = &(ug_data->rule_list[i]);
-                               item_data->rule->value = g_strdup(item_data->rule->value);
-                               item_data->genlist = ug_data->gl_addrs;
-                               item_data->it = elm_genlist_item_append(ug_data->gl_addrs, &(ug_data->itc_block), (void *)item_data, NULL, ELM_GENLIST_ITEM_NONE, _eb_gl_sel_cb, (void *)item_data);
-                               ug_data->address_rule_count++;
-                       } else if (ug_data->rule_list[i].type == EMAIL_FILTER_SUBJECT) {
-                               item_data = calloc(1, sizeof(ListItemData));
-                               item_data->rule = &(ug_data->rule_list[i]);
-                               item_data->rule->value = g_strdup(item_data->rule->value);
-                               item_data->genlist = ug_data->gl_subject;
-                               item_data->it = elm_genlist_item_append(ug_data->gl_subject, &(ug_data->itc_block), (void *)item_data, NULL, ELM_GENLIST_ITEM_NONE, _eb_gl_sel_cb, (void *)item_data);
-                               ug_data->subject_rule_count++;
-                       } else {
-                               debug_log("undefined rule type");
-                       }
-
-                       debug_log("ug_data->address_rule_count %d n ug_data->subject_rule_count %d", ug_data->address_rule_count, ug_data->subject_rule_count);
-               }
-       }
-
-FINISH_OFF:
-       /* free emf rule_list */
-       email_free_rule(&rule_list, count);
-}
-
-static void _my_gl_mode_right(void *data, Evas_Object *obj, void *event_info)
-{
-       if (!event_info)
-               return;
-
-       /* Start genlist sweep */
-       elm_genlist_item_decorate_mode_set(event_info, "slide", EINA_TRUE);
-}
-
-static void _my_gl_mode_left(void *data, Evas_Object *obj, void *event_info)
-{
-       if (!event_info)
-               return;
-
-       /* Finish genlist sweep */
-       elm_genlist_item_decorate_mode_set(event_info, "slide", EINA_FALSE);
-}
-
-static void _my_gl_mode_cancel(void *data, Evas_Object *obj, void *event_info)
-{
-       if (!obj)
-               return;
-
-       /* Get sweeped item */
-       Elm_Object_Item *it = (Elm_Object_Item *)elm_genlist_decorated_item_get(obj);
-       /* Finish genlist sweep */
-       if (it)
-               elm_genlist_item_decorate_mode_set(it, "slide", EINA_FALSE);
-}
-
-static void eb_free_list(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-       if (ug_data->gl_addrs != NULL) {
-               elm_genlist_clear(ug_data->gl_addrs);
-               evas_object_del(ug_data->gl_addrs);
-               ug_data->gl_addrs = NULL;
-       }
-       if (ug_data->gl_subject != NULL) {
-               elm_genlist_clear(ug_data->gl_subject);
-               evas_object_del(ug_data->gl_subject);
-               ug_data->gl_subject = NULL;
-       }
-       if (ug_data->gl_string != NULL) {
-               elm_genlist_clear(ug_data->gl_string);
-               evas_object_del(ug_data->gl_string);
-               ug_data->gl_string = NULL;
-       }
-       ug_data->address_rule_count = 0;
-       ug_data->subject_rule_count = 0;
-
-       if (ug_data->main_box) {
-               evas_object_del(ug_data->main_box);
-               ug_data->main_box = NULL;
-       }
-}
-
-static void eb_create_noc(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-
-       ug_data->noc = elm_layout_add(ug_data->navi_bar);
-       elm_layout_theme_set(ug_data->noc, "layout", "nocontents", "text");
-       elm_object_part_text_set(ug_data->noc, "elm.text", dgettext("sys_string", "IDS_COM_BODY_NO_CONTENTS"));
-
-       ug_data->noc_ly = elm_layout_add(ug_data->navi_bar);
-       elm_layout_file_set(ug_data->noc_ly, THEME_PATH, "email_block_noc");
-       evas_object_size_hint_weight_set(ug_data->noc_ly, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-
-       elm_object_part_content_set(ug_data->noc_ly, "contents", ug_data->noc);
-}
-
-static void eb_free_noc(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-
-       elm_object_part_content_unset(ug_data->noc_ly, "contents");
-       if (ug_data->noc) {
-               evas_object_del(ug_data->noc);
-               ug_data->noc = NULL;
-       }
-
-       if (ug_data->noc_ly) {
-               evas_object_del(ug_data->noc_ly);
-               ug_data->noc_ly = NULL;
-       }
-}
-
-static void eb_destroy_main_view(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-
-       eb_free_list(ug_data);
-       eb_free_noc(ug_data);
-
-       if (ug_data->popup_empty) {
-               evas_object_del(ug_data->popup_empty);
-               ug_data->popup_empty = NULL;
-       }
-
-       if (ug_data->timeout_popup) {
-               evas_object_del(ug_data->timeout_popup);
-               ug_data->timeout_popup = NULL;
-       }
-
-       if (ug_data->segment) {
-               evas_object_del(ug_data->segment);
-               ug_data->segment = NULL;
-       }
-
-       if (ug_data->control_bar) {
-               evas_object_del(ug_data->control_bar);
-               ug_data->control_bar = NULL;
-       }
-
-       if (ug_data->navi_bar) {
-               evas_object_del(ug_data->navi_bar);
-               ug_data->navi_bar = NULL;
-       }
-
-       if (ug_data->sub_ly) {
-               evas_object_del(ug_data->sub_ly);
-               ug_data->sub_ly = NULL;
-       }
-
-       if (ug_data->layout_main) {
-               evas_object_del(ug_data->layout_main);
-               ug_data->layout_main = NULL;
-       }
-}
-
-static void eb_destroy_filter_add_view(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-
-       if (ug_data->str_filter_name) {
-               g_free(ug_data->str_filter_name);
-               ug_data->str_filter_name = NULL;
-       }
-}
-
-static void eb_create_add_filter_view(EmailBlockAppData *ug_data, email_rule_t * rule)
-{
-       debug_log("");
-       ug_data->view_type = VIEW_BLOCK_FILTER_DATA_SET;
-
-       Elm_Object_Item *item = NULL;
-       Elm_Object_Item *git = NULL;
-
-       ug_data->gl_add_filter = elm_genlist_add(ug_data->navi_bar);
-       elm_object_style_set(ug_data->gl_add_filter, "dialogue");
-       elm_genlist_bounce_set(ug_data->gl_add_filter, EINA_FALSE, EINA_FALSE);
-       elm_object_theme_set(ug_data->gl_add_filter, ug_data->theme);
-
-       ug_data->itc1.item_style = "dialogue/1icon";
-       ug_data->itc1.func.text_get = NULL;
-       ug_data->itc1.func.content_get = _eb_gl_add_ef_icon_get;
-       ug_data->itc1.func.state_get = NULL;
-       ug_data->itc1.func.del = NULL;
-
-       ug_data->itc2.item_style = "dialogue/email.2icon";
-       ug_data->itc2.func.text_get = NULL;
-       ug_data->itc2.func.content_get = _eb_gl_add_ef_icon_get;
-       ug_data->itc2.func.state_get = NULL;
-       ug_data->itc2.func.del = NULL;
-
-       ug_data->itc3.item_style = "dialogue/separator/21/with_line";
-       ug_data->itc3.func.text_get = NULL;
-       ug_data->itc3.func.content_get = NULL;
-       ug_data->itc3.func.state_get = NULL;
-       ug_data->itc3.func.del = NULL;
-
-       ug_data->itc4.item_style = "dialogue/separator/20";
-       ug_data->itc4.func.text_get = NULL;
-       ug_data->itc4.func.content_get = NULL;
-       ug_data->itc4.func.state_get = NULL;
-       ug_data->itc4.func.del = NULL;
-
-       git = elm_genlist_item_append(ug_data->gl_add_filter, &ug_data->itc3, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-       elm_genlist_item_select_mode_set(git, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
-
-       if (ug_data->block_type == TYPE_BLOCK_ADDRESS && ug_data->mode == BLOCK_MODE_ADD) {
-               item = elm_genlist_item_append(ug_data->gl_add_filter, &ug_data->itc2, NULL, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-       } else {
-               item = elm_genlist_item_append(ug_data->gl_add_filter, &ug_data->itc1, (void *)rule, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL);
-       }
-
-       ug_data->match_crt = TYPE_MATCH_CRT_INC_ON;
-
-       Evas_Object *conform;
-       elm_win_conformant_set(ug_data->win_main, 1);
-       conform = elm_conformant_add(ug_data->win_main);
-       elm_object_style_set(conform, "internal_layout");
-       evas_object_show(conform);
-
-       ug_data->layout_add = elm_layout_add(ug_data->navi_bar);
-       elm_layout_theme_set(ug_data->layout_add, "layout", "application", "noindicator");
-       evas_object_size_hint_weight_set(ug_data->layout_add, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-
-       elm_object_content_set(conform, ug_data->gl_add_filter);
-       elm_object_part_content_set(ug_data->layout_add, "elm.swallow.content", conform);
-
-       ug_data->r_button2 = elm_button_add(ug_data->navi_bar);
-       elm_object_style_set(ug_data->r_button2, "naviframe/title/default");
-       elm_object_text_set(ug_data->r_button2, dgettext("sys_string", "IDS_COM_SK_DONE"));
-       evas_object_smart_callback_add(ug_data->r_button2, "clicked", _rule_save_cb, ug_data);
-       evas_object_show(ug_data->r_button2);
-
-       ug_data->l_button2 = elm_button_add(ug_data->navi_bar);
-       elm_object_style_set(ug_data->l_button2, "naviframe/title/default");
-       elm_object_text_set(ug_data->l_button2, dgettext("sys_string", "IDS_COM_SK_CANCEL"));
-       evas_object_smart_callback_add(ug_data->l_button2, "clicked", _back_prev_view_cb, ug_data);
-       evas_object_show(ug_data->l_button2);
-
-       Elm_Object_Item *navi_it = NULL;
-       if (rule) {
-               navi_it = elm_naviframe_item_push(ug_data->navi_bar, _("IDS_EMAIL_HEADER_EDIT_RULES"), NULL, NULL, ug_data->layout_add, NULL);
-       } else {
-               elm_object_disabled_set(ug_data->r_button2, EINA_TRUE);
-
-               if (ug_data->block_type == TYPE_BLOCK_ADDRESS) {
-                       navi_it = elm_naviframe_item_push(ug_data->navi_bar, _("IDS_EMAIL_BODY_ADD_ADDRESS"), NULL, NULL, ug_data->layout_add, NULL);
-               } else if (ug_data->block_type == TYPE_BLOCK_SUBJECT) {
-                       navi_it = elm_naviframe_item_push(ug_data->navi_bar, N_("Add subject"), NULL, NULL, ug_data->layout_add, NULL);
-               }
-       }
-
-       elm_object_item_part_content_set(navi_it, "title_right_btn", ug_data->l_button2);
-       elm_object_item_part_content_set(navi_it, "title_left_btn", ug_data->r_button2);
-
-       ug_data->back_btn_add = elm_object_item_part_content_get(navi_it, "prev_btn");
-       if (ug_data->back_btn_add)
-               evas_object_smart_callback_add(ug_data->back_btn_add, "clicked", _add_filter_cancel_clicked_cb, ug_data);
-}
-
-static void _rule_save_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       if (block_addr) {
-               g_free(block_addr);
-               block_addr = NULL;
-       }
-
-       elm_object_disabled_set(ug_data->r_button2, EINA_TRUE);
-       elm_object_disabled_set(ug_data->l_button2, EINA_TRUE);
-       elm_object_disabled_set(ug_data->back_btn_add, EINA_TRUE);
-
-       char *buf_ = (char *)elm_entry_entry_get(ug_data->entry_filter_name);
-       char *buf = elm_entry_markup_to_utf8(buf_);
-
-       if (!buf || !strlen(buf)) {
-               ug_data->popup_empty = elm_popup_add(ug_data->layout_main);
-               evas_object_size_hint_weight_set(ug_data->popup_empty, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-               elm_popup_timeout_set(ug_data->popup_empty, 2);
-               elm_object_text_set(ug_data->popup_empty, _("IDS_EMAIL_POP_PLEASE_FILL_ALL_THE_MANDATORY_FIELDS"));
-               elm_object_part_text_set(ug_data->popup_empty, "title,text", _("IDS_EMAIL_POP_ALERT"));
-               evas_object_smart_callback_add(ug_data->popup_empty, "block,clicked", _popup_block_clicked_cb, ug_data);
-               evas_object_show(ug_data->popup_empty);
-               goto FINISH_OFF;
-       }
-
-       gchar **vector;
-       char *item_str;
-       int i = 0;
-       int valid_vector_cnt = 0;
-       vector = g_strsplit_set(buf, ";", -1);
-       guint str_cnt = g_strv_length(vector);
-       debug_log("addr_cnt: %d", str_cnt);
-
-       if (ug_data->block_type == TYPE_BLOCK_ADDRESS) {
-               for (i = 0; i < str_cnt; i++) {
-                       /* check if valid address */
-                       if (vector[i] != NULL && strlen(vector[i]) > 0) {
-                               if (email_get_address_validation(vector[i]) == FALSE) {
-                                       valid_vector_cnt = 0;
-                                       break;
-                               }
-
-                               valid_vector_cnt++;
-                       }
-               }
-
-               if (valid_vector_cnt == 0) {
-                       ug_data->popup_empty = elm_popup_add(ug_data->layout_main);
-                       evas_object_size_hint_weight_set(ug_data->popup_empty, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       elm_popup_timeout_set(ug_data->popup_empty, 2);
-                       elm_object_text_set(ug_data->popup_empty, _("IDS_EMAIL_POP_INVALID_EMAIL_ADDRESS"));
-                       elm_object_part_text_set(ug_data->popup_empty, "title,text", _("IDS_EMAIL_POP_ALERT"));
-                       evas_object_smart_callback_add(ug_data->popup_empty, "block,clicked", _popup_block_clicked_cb, ug_data);
-                       evas_object_show(ug_data->popup_empty);
-
-                       g_strfreev(vector);
-                       goto FINISH_OFF;
-               }
-
-               for (i = 0; i < str_cnt; i++) {
-                       if (vector[i] != NULL && strlen(vector[i]) > 0) {
-                               item_str = g_strdup(vector[i]);
-                               _add_one_rule(ug_data, item_str);
-                               g_free(item_str);
-                       }
-               }
-       } else { /* subject */
-               int empty = 1;
-               debug_log("subject: [%s] %d", buf, strlen(buf));
-               for (i = 0; i < strlen(buf); i++)
-                       if (buf[i] != ' ') {
-                               empty = 0;
-                               break;
-                       }
-
-               if (empty == 0)
-                       _add_one_rule(ug_data, (char *)buf);
-               else {
-                       ug_data->popup_empty = elm_popup_add(ug_data->layout_main);
-                       evas_object_size_hint_weight_set(ug_data->popup_empty, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-                       elm_popup_timeout_set(ug_data->popup_empty, 2);
-                       elm_object_text_set(ug_data->popup_empty, _("IDS_EMAIL_POP_UNABLE_TO_SAVE_SUBJECT_EMPTY"));
-                       elm_object_part_text_set(ug_data->popup_empty, "title,text", _("IDS_EMAIL_POP_ALERT"));
-                       evas_object_smart_callback_add(ug_data->popup_empty, "block,clicked", _popup_block_clicked_cb, ug_data);
-                       evas_object_show(ug_data->popup_empty);
-
-                       g_strfreev(vector);
-                       goto FINISH_OFF;
-               }
-       }
-
-       g_strfreev(vector);
-
-       _changed_filter_type_cb(ug_data, ug_data->segment, NULL);
-
-       _back_prev_view_cb(ug_data, NULL, NULL);
-
- FINISH_OFF:
-       elm_object_disabled_set(ug_data->r_button2, EINA_FALSE);
-       elm_object_disabled_set(ug_data->l_button2, EINA_FALSE);
-       elm_object_disabled_set(ug_data->back_btn_add, EINA_FALSE);
-       g_free(buf);
-}
-
-static void _add_one_rule(EmailBlockAppData *ug_data, char *buf)
-{
-       int ret = EMAIL_ERROR_NONE;
-       email_rule_t *rule = NULL;
-
-       /* add filtering rule */
-       rule = malloc(sizeof(email_rule_t));
-       if (!rule)
-               return;
-       rule->account_id = ug_data->account_id;
-       rule->type = ug_data->block_type;
-       rule->value = g_strdup(buf);
-       rule->faction = 2;      /* BLOCK */
-       rule->target_mailbox_id = ug_data->mailbox_id;
-       rule->flag1 = 1;        /* on */
-       rule->flag2 = 1;
-
-       debug_log("priv->type_crt %d value %s", ug_data->block_type, rule->value);
-
-       if (ug_data->mode == BLOCK_MODE_ADD) {
-               ret = email_add_rule(rule);
-               if (ret < 0)
-                       debug_log("email_add_rule failed %d", ret);
-       }
-
-       else if (ug_data->mode == BLOCK_MODE_EDIT) {
-               ret = email_update_rule(ug_data->edit_filter_id, rule);
-               if (ret < 0)
-                       debug_log("email_update_rule failed");
-       }
-
-       if (ret == EMAIL_ERROR_ALREADY_EXISTS) {
-               /* Should display error popup */
-               ug_data->timeout_popup = elm_popup_add(ug_data->layout_main);
-               evas_object_size_hint_weight_set(ug_data->timeout_popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-               elm_popup_timeout_set(ug_data->timeout_popup, 2);
-               if (rule->type == EMAIL_FILTER_FROM)
-                       elm_object_text_set(ug_data->timeout_popup, _("IDS_EMAIL_POP_ALREADY_BLOCKED"));
-               else
-                       elm_object_text_set(ug_data->timeout_popup, _("IDS_EMAIL_POP_ALREADY_BLOCKED"));
-               elm_object_part_text_set(ug_data->timeout_popup, "title,text", _("IDS_EMAIL_POP_ALERT"));
-               evas_object_smart_callback_add(ug_data->timeout_popup, "block,clicked", _popup_block_clicked_cb, ug_data);
-               evas_object_show(ug_data->timeout_popup);
-       }
-
-       email_free_rule(&rule, 1);
-       g_free(rule);
-}
-
-static void _add_filter_clicked_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       ug_data->mode = BLOCK_MODE_ADD;
-       eb_create_add_filter_view(ug_data, NULL);
-}
-
-static void _changed_filter_type_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-       Elm_Object_Item *it;
-       char *label_str = NULL;
-       int value;
-
-       it = elm_segment_control_item_selected_get(obj);
-       value = elm_segment_control_item_index_get(it);
-       debug_log("index is value %d", value);
-
-       if (value < 0 || value >= 2) {
-               debug_log("invalid index, return");
-               return;
-       }
-
-       label_str = (char *)elm_segment_control_item_label_get(obj, value);
-       debug_log("label:%s", label_str);
-
-       if (label_str == NULL) {
-               debug_log("label str is NULL, return");
-               return;
-       }
-
-       ug_data->selected_segment = value;
-
-       elm_object_part_content_unset(ug_data->sub_ly, "elm.swallow.content");
-       eb_free_list(ug_data);
-       eb_free_noc(ug_data);
-
-       eb_create_list(ug_data);
-
-       if (g_strcmp0(label_str, dgettext("sys_string", "IDS_COM_BODY_SUBJECT")) == 0) {
-               if (ug_data->subject_rule_count > 0) {
-                       elm_box_pack_end(ug_data->main_box, ug_data->gl_subject);
-                       evas_object_show(ug_data->gl_subject);
-                       elm_object_item_disabled_set(ug_data->c_item[0], EINA_FALSE);
-               } else {
-                       eb_create_noc(ug_data);
-                       elm_object_part_text_set(ug_data->noc, "elm.text", _("IDS_EMAIL_BODY_NO_SUBJECT"));
-                       elm_box_pack_end(ug_data->main_box, ug_data->noc_ly);
-                       evas_object_show(ug_data->noc_ly);
-                       elm_object_item_disabled_set(ug_data->c_item[0], EINA_TRUE);
-               }
-
-               ug_data->block_type = TYPE_BLOCK_SUBJECT;
-       } else if (g_strcmp0(label_str, _("IDS_EMAIL_BODY_ADDRESS")) == 0) {
-               if (ug_data->address_rule_count > 0) {
-                       elm_box_pack_end(ug_data->main_box, ug_data->gl_addrs);
-                       evas_object_show(ug_data->gl_addrs);
-                       elm_object_item_disabled_set(ug_data->c_item[0], EINA_FALSE);
-               } else {
-                       eb_create_noc(ug_data);
-                       elm_object_part_text_set(ug_data->noc, "elm.text", _("IDS_EMAIL_BODY_NO_ADDRESS"));
-                       elm_box_pack_end(ug_data->main_box, ug_data->noc_ly);
-                       evas_object_show(ug_data->noc_ly);
-                       elm_object_item_disabled_set(ug_data->c_item[0], EINA_TRUE);
-               }
-
-               ug_data->block_type = TYPE_BLOCK_ADDRESS;
-       }
-}
-
-static void _back_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       /* This avoids moving back to Email settings screen */
-       Evas_Object *genlist = NULL;
-
-       if (ug_data->block_type == TYPE_BLOCK_SUBJECT) {
-               genlist = ug_data->gl_subject;
-       } else if (ug_data->block_type == TYPE_BLOCK_ADDRESS) {
-               genlist = ug_data->gl_addrs;
-       }
-
-       if (!elm_genlist_decorate_mode_get(genlist)) {
-               ug_destroy_me(ug_data->ug);
-       } else {
-               _edit_cb(ug_data, NULL, NULL);
-       }
-}
-
-static void _edit_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       Evas_Object *genlist = NULL;
-
-       if (ug_data->block_type == TYPE_BLOCK_SUBJECT) {
-               genlist = ug_data->gl_subject;
-               ug_data->edit_total_count = ug_data->subject_rule_count;
-       } else if (ug_data->block_type == TYPE_BLOCK_ADDRESS) {
-               genlist = ug_data->gl_addrs;
-               ug_data->edit_total_count = ug_data->address_rule_count;
-       }
-
-       if (!elm_genlist_decorate_mode_get(genlist)) {
-               ug_data->edit_checked_count = 0;
-               /* Change layout background color to edit_mode color */
-               edje_object_signal_emit(_EDJ(ug_data->layout_main), "elm,bg,show,edit_mode", "elm");
-
-               elm_object_item_part_content_unset(ug_data->navi_main_it, "segment");
-               elm_object_item_part_content_unset(ug_data->navi_main_it, "controlbar");
-               evas_object_hide(ug_data->segment);
-               evas_object_hide(ug_data->control_bar);
-               elm_naviframe_item_style_set(ug_data->navi_main_it, "basic");
-
-               ug_data->control_bar_edit = elm_toolbar_add(ug_data->navi_bar);
-               elm_toolbar_shrink_mode_set(ug_data->control_bar_edit, ELM_TOOLBAR_SHRINK_EXPAND);
-               elm_object_style_set(ug_data->control_bar_edit, "naviframe");
-               evas_object_show(ug_data->control_bar_edit);
-
-               ug_data->c_item[2] = elm_toolbar_item_append(ug_data->control_bar_edit, NULL,
-                               dgettext("sys_string", "IDS_COM_SK_DELETE"), _delete_rule_cb, ug_data);
-               elm_object_item_disabled_set(ug_data->c_item[2], EINA_TRUE);
-               elm_object_item_disabled_set(elm_toolbar_item_append(ug_data->control_bar_edit, NULL, "", NULL, NULL), EINA_TRUE);
-               elm_object_item_disabled_set(elm_toolbar_item_append(ug_data->control_bar_edit, NULL, "", NULL, NULL), EINA_TRUE);
-               elm_object_item_part_content_set(ug_data->navi_main_it, "controlbar", ug_data->control_bar_edit);
-
-               /* Append 'Select All' layout */
-               ug_data->select_all_layout = elm_layout_add(ug_data->main_box);
-               elm_layout_theme_set(ug_data->select_all_layout, "genlist", "item", "select_all/default");
-               evas_object_size_hint_weight_set(ug_data->select_all_layout, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
-               evas_object_size_hint_align_set(ug_data->select_all_layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-               evas_object_event_callback_add(ug_data->select_all_layout, EVAS_CALLBACK_MOUSE_DOWN, _select_all_layout_mouse_down_cb, ug_data);
-
-               ug_data->select_all_checkbox = elm_check_add(ug_data->select_all_layout);
-               elm_check_state_pointer_set(ug_data->select_all_checkbox, &ug_data->select_all_checked);
-               evas_object_smart_callback_add(ug_data->select_all_checkbox, "changed", _select_all_check_changed_cb, ug_data);
-               evas_object_propagate_events_set(ug_data->select_all_checkbox, EINA_FALSE);
-               elm_object_part_content_set(ug_data->select_all_layout, "elm.icon", ug_data->select_all_checkbox);
-
-               elm_object_part_text_set(ug_data->select_all_layout, "elm.text", dgettext("sys_string", "IDS_COM_BODY_SELECT_ALL"));
-               elm_box_pack_start(ug_data->main_box, ug_data->select_all_layout);
-               evas_object_show(ug_data->select_all_layout);
-
-               /* Set reorder and edit mode */
-               elm_genlist_reorder_mode_set(genlist, EINA_TRUE);
-               elm_genlist_decorate_mode_set(genlist, EINA_TRUE);
-
-               /* This means even if selected, every click will make the selected callbacks be called. */
-               elm_genlist_select_mode_set(genlist, ELM_OBJECT_SELECT_MODE_ALWAYS);
-
-               /* This disables sweep menu in edit mode */
-               ug_data->itc_block.decorate_item_style = NULL;  /* for lower layer */
-
-               elm_object_item_text_set(ug_data->navi_main_it, _("IDS_EMAIL_HEADER_DELETE"));
-       } else {
-               /* Change layout background color to default background color */
-               edje_object_signal_emit(_EDJ(ug_data->layout_main), "elm,bg,show,default", "elm");
-
-               elm_object_item_part_content_unset(ug_data->navi_main_it, "controlbar");
-               if (ug_data->control_bar_edit) {
-                       evas_object_del(ug_data->control_bar_edit);
-                       ug_data->control_bar_edit = NULL;
-               }
-
-               elm_naviframe_item_style_set(ug_data->navi_main_it, "segment");
-               elm_object_item_part_content_set(ug_data->navi_main_it, "segment", ug_data->segment);
-               elm_object_item_part_content_set(ug_data->navi_main_it, "controlbar", ug_data->control_bar);
-               evas_object_show(ug_data->segment);
-               evas_object_show(ug_data->control_bar);
-
-               /* Remove 'Select All' layout. */
-               elm_box_unpack(ug_data->main_box, ug_data->select_all_layout);
-               evas_object_del(ug_data->select_all_layout);
-               ug_data->select_all_layout = NULL;
-
-               if (ug_data->edit_select_info) {
-                       evas_object_del(ug_data->edit_select_info);
-                       ug_data->edit_select_info = NULL;
-               }
-
-               /* Unset edit mode */
-               elm_genlist_decorate_mode_set(genlist, EINA_FALSE);
-               elm_genlist_reorder_mode_set(genlist, EINA_FALSE);
-               elm_genlist_select_mode_set(genlist, ELM_OBJECT_SELECT_MODE_DEFAULT);
-
-               ug_data->select_all_checked = EINA_FALSE;
-               elm_check_state_pointer_set(ug_data->select_all_checkbox, &ug_data->select_all_checked);
-               _changed_filter_type_cb(ug_data, ug_data->segment, NULL);
-
-               /* Set the navigation bar title */
-               elm_object_item_text_set(ug_data->navi_main_it, _("IDS_EMAIL_HEADER_BLOCK_EMAILS"));
-       }
-}
-
-static void _back_prev_view_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       if (ug_data->view_type != VIEW_BLOCK_FILTER_DATA_SET) {
-               debug_log("**double clicked**");
-               return;
-       }
-
-       elm_object_disabled_set(ug_data->r_button2, EINA_TRUE);
-       elm_object_disabled_set(ug_data->l_button2, EINA_TRUE);
-       elm_object_disabled_set(ug_data->back_btn_add, EINA_TRUE);
-
-       debug_log("view type is %d", ug_data->view_type);
-       elm_naviframe_item_pop(ug_data->navi_bar);
-
-       if (block_addr) {
-               g_free(block_addr);
-               block_addr = NULL;
-       }
-
-       switch (ug_data->view_type) {
-       case VIEW_BLOCK_EDIT_FILTER_LIST:
-               /*eb_destroy_edit_view(ug_data);*/
-               ug_data->gl_edit = NULL;
-               ug_data->view_type = VIEW_BLOCK_MAIN;
-               break;
-
-       case VIEW_BLOCK_CRITERIA_SET:
-               /*eb_destroy_criterion_view(ug_data);*/
-               ug_data->view_type = VIEW_BLOCK_FILTER_DATA_SET;
-               break;
-
-       case VIEW_BLOCK_FILTER_DATA_SET:
-               eb_destroy_filter_add_view(ug_data);
-               ug_data->view_type = VIEW_BLOCK_MAIN;
-               _changed_filter_type_cb(ug_data, ug_data->segment, NULL);
-               break;
-       }
-}
-
-static void _add_filter_cancel_clicked_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       if (ug_data->view_type != VIEW_BLOCK_FILTER_DATA_SET) {
-               debug_log("**double clicked**");
-               return;
-       }
-
-       elm_object_disabled_set(ug_data->r_button2, EINA_TRUE);
-       elm_object_disabled_set(ug_data->l_button2, EINA_TRUE);
-       elm_object_disabled_set(ug_data->back_btn_add, EINA_TRUE);
-
-       debug_log("view type is %d", ug_data->view_type);
-
-       if (block_addr) {
-               g_free(block_addr);
-               block_addr = NULL;
-       }
-
-       switch (ug_data->view_type) {
-       case VIEW_BLOCK_EDIT_FILTER_LIST:
-               /*eb_destroy_edit_view(ug_data);*/
-               ug_data->gl_edit = NULL;
-               ug_data->view_type = VIEW_BLOCK_MAIN;
-               break;
-
-       case VIEW_BLOCK_CRITERIA_SET:
-               /*eb_destroy_criterion_view(ug_data);*/
-               ug_data->view_type = VIEW_BLOCK_FILTER_DATA_SET;
-               break;
-
-       case VIEW_BLOCK_FILTER_DATA_SET:
-               eb_destroy_filter_add_view(ug_data);
-               ug_data->view_type = VIEW_BLOCK_MAIN;
-               _changed_filter_type_cb(ug_data, ug_data->segment, NULL);
-               break;
-       }
-}
-
-static void _check_select_all(EmailBlockAppData *ug_data)
-{
-       debug_log("");
-       ListItemData *it_data;
-       Elm_Object_Item *it;
-
-       Evas_Object *genlist = NULL;
-
-       if (ug_data->block_type == TYPE_BLOCK_SUBJECT) {
-               genlist = ug_data->gl_subject;
-       } else if (ug_data->block_type == TYPE_BLOCK_ADDRESS) {
-               genlist = ug_data->gl_addrs;
-       }
-
-       if (ug_data->select_all_checked)
-               ug_data->edit_checked_count = ug_data->edit_total_count;
-       else
-               ug_data->edit_checked_count = 0;
-
-       it = elm_genlist_first_item_get(genlist);
-       while (it) {
-               it_data = elm_object_item_data_get(it);
-               if (it_data)
-                       it_data->checked = ug_data->select_all_checked;
-               it = elm_genlist_item_next_get(it);
-       }
-
-       _del_button_state_set(ug_data);
-       _show_selection_info(ug_data);
-
-       /* Update all realized items */
-       elm_genlist_realized_items_update(genlist);
-}
-
-static void _select_all_layout_mouse_down_cb(void *data, Evas * evas, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       ug_data->select_all_checked = !ug_data->select_all_checked;
-       elm_check_state_pointer_set(ug_data->select_all_checkbox, &ug_data->select_all_checked);
-
-       _check_select_all(ug_data);
-}
-
-static void _select_all_check_changed_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       _check_select_all(data);
-}
-
-static void _delete_rule_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-       Elm_Object_Item *it;
-       ListItemData *item_data = NULL;
-       Evas_Object *genlist = NULL;
-
-       if (ug_data->block_type == TYPE_BLOCK_SUBJECT) {
-               genlist = ug_data->gl_subject;
-       } else if (ug_data->block_type == TYPE_BLOCK_ADDRESS) {
-               genlist = ug_data->gl_addrs;
-       }
-
-       it = elm_genlist_first_item_get(genlist);
-       while (it) {
-               item_data = (ListItemData *) elm_object_item_data_get(it);
-               it = elm_genlist_item_next_get(it);
-
-               if ((item_data) && (item_data->checked)) {
-                       email_delete_rule(item_data->rule->filter_id);
-                       elm_object_item_del(item_data->it);
-                       ug_data->edit_total_count--;
-                       ug_data->edit_checked_count--;
-               }
-       }
-
-       if (ug_data->edit_select_info) {
-               evas_object_del(ug_data->edit_select_info);
-               ug_data->edit_select_info = NULL;
-       }
-
-       _del_button_state_set(ug_data);
-
-       if (ug_data->edit_total_count == 0) {
-               ug_data->select_all_checked = EINA_FALSE;
-               elm_check_state_pointer_set(ug_data->select_all_checkbox, &ug_data->select_all_checked);
-
-               _edit_cb(ug_data, NULL, NULL);
-       }
-}
-
-static void _get_contact_email_list(const char *val, char **result, EmailBlockAppData *ug_data)
-{
-       debug_log("");
-
-       int i = 0;
-       int j = 0;
-       int c_id = 0;
-       int *c_id_list = NULL;
-       int error_code = 0;
-       gsize c_id_list_len = 0;
-
-       char *result_address = NULL;
-       char *result_address_ = NULL;
-       char *email_addr = NULL;
-       char *tmp_addr = NULL;
-
-       CTSstruct *email_contact = NULL;
-       GSList *email_list = NULL;
-       GSList *li = NULL;
-       CTSvalue *email = NULL;
-
-       c_id_list = (int *)g_base64_decode(val, &c_id_list_len);
-
-       for (j = 0; j < c_id_list_len / sizeof(int); j++) {
-               c_id = c_id_list[j];
-               debug_log("selected contact id: %d", c_id);
-
-               error_code = contacts_svc_get_contact_value(CTS_GET_EMAIL_VALUE, c_id, &email);
-               tmp_addr = g_strdup(contacts_svc_value_get_str(email, CTS_EMAIL_VAL_ADDR_STR));
-               contacts_svc_value_free(email);
-
-               if (!tmp_addr) {
-                       debug_log("addr is NULL");
-                       continue;
-               }
-               debug_log("addr = %s", tmp_addr);
-
-               int ct_idx = contacts_svc_find_contact_by(CTS_FIND_BY_EMAIL, tmp_addr);
-               debug_log("ct_idx = %d", ct_idx);
-
-               if (ct_idx < 0) {
-                       debug_log("CT ID is not valid");
-                       continue;
-               }
-
-               error_code = contacts_svc_get_contact(ct_idx, &email_contact);
-               error_code = contacts_svc_struct_get_list(email_contact, CTS_CF_EMAIL_LIST, &email_list);
-
-               if (email_list != NULL && g_slist_length(email_list) > 0) {
-                       int cnt = 0;
-                       EmailRecipientInfo *ri = (EmailRecipientInfo *) calloc(1, sizeof(EmailRecipientInfo));
-
-                       for (li = email_list; li != NULL; li = g_slist_next(li)) {
-                               email_addr = (char *)contacts_svc_value_get_str(li->data, CTS_EMAIL_VAL_ADDR_STR);
-                               if (email_addr && strlen(email_addr) > 0) {
-                                       debug_log("email: %s", email_addr);
-                                       debug_log("dest buf size (%d)", sizeof(ri->email_list[cnt].email_addr));
-                                       snprintf(ri->email_list[cnt].email_addr, sizeof(ri->email_list[cnt].email_addr), "%s", email_addr);
-                                       cnt++;
-                               }
-                       }
-
-                       for (i = 0; i < cnt; i++) {
-                               debug_log("ri->email_list[i].email_addr : [%s]", ri->email_list[i].email_addr);
-                               if (result_address)
-                                       result_address_ = g_strconcat(result_address, ";", ri->email_list[i].email_addr, NULL);
-                               else
-                                       result_address_ = g_strdup(ri->email_list[i].email_addr);
-
-                               if (result_address)
-                                       g_free(result_address);
-                               result_address = result_address_;
-                       }
-
-                       debug_log("result address : [%s]", result_address);
-                       contacts_svc_struct_free(email_contact);
-                       free(ri);
-               }
-       }
-
-       g_free(c_id_list);
-       *result = result_address;
-}
-
-static void _contact_button_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       if (g_strcmp0("", ug_data->str_filter_name) == 0) {
-               g_free(block_addr);
-               block_addr = NULL;
-       } else if (g_strcmp0(block_addr, ug_data->str_filter_name) != 0) {
-               g_free(block_addr);
-               block_addr = g_strdup(ug_data->str_filter_name);
-       }
-
-       ug_data->view_type = VIEW_BLOCK_CONTACT_ADD;
-
-       /*struct ug_cbs cbs = { 0, };
-
-       cbs.layout_cb = layout_cb;
-       cbs.result_cb = result_cb;
-       cbs.destroy_cb = destroy_cb;
-       cbs.priv = (void *)ug_data;*/
-
-       int ret;
-       service_h service = NULL;
-
-       ret = service_create(&service);
-
-       if (service) {
-               char contact_ug[255] = { 0, };
-               snprintf(contact_ug, sizeof(contact_ug), "%d", CT_UG_REQUEST_CHECK_FOR_EMAIL);
-
-               ret = service_add_extra_data(service, EMAIL_BUNDLE_KEY_CONTACT_TYPE, contact_ug);
-               //ug_data->ug_contact = ug_create(ug_data->ug, UG_NAME_CONTACT, UG_MODE_FULLVIEW, service, &cbs);
-               ug_data->ug_contact = create_ug(UG_NAME_CONTACT, service, data);
-               ret = service_destroy(service);
-       }
-}
-
-static void _recent_button_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ugd = (EmailBlockAppData *)data;
-
-       if (ugd == NULL) {
-               debug_log("ugd is NULL");
-               return;
-       }
-
-       if (g_strcmp0("", ugd->str_filter_name) == 0)
-               block_addr = NULL;
-       else if (g_strcmp0(block_addr, ugd->str_filter_name) != 0)
-               block_addr = g_strdup(ugd->str_filter_name);
-
-       _block_recent_create_view(ugd);
-}
-
-static void _block_rule_vconf_key_changed_cb(keynode_t *key, void *data)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = (EmailBlockAppData *)data;
-
-       if (!ug_data) return;
-
-       if (ug_data->view_type != VIEW_BLOCK_MAIN) {
-               debug_log("not in block main view");
-               return;
-       }
-
-       if (ug_data->block_type == TYPE_BLOCK_ADDRESS) {
-               if (!elm_genlist_decorate_mode_get(ug_data->gl_addrs)) {
-                       debug_log("TYPE_BLOCK_ADDRESS");
-                       elm_object_part_content_unset(ug_data->sub_ly, "elm.swallow.content");
-                       eb_free_list(ug_data);
-                       eb_free_noc(ug_data);
-                       eb_create_list(ug_data);
-
-                       if (ug_data->address_rule_count > 0) {
-                               elm_box_pack_end(ug_data->main_box, ug_data->gl_addrs);
-                               evas_object_show(ug_data->gl_addrs);
-                               elm_object_item_disabled_set(ug_data->c_item[0], EINA_FALSE);
-                       } else {
-                               eb_create_noc(ug_data);
-                               elm_object_part_text_set(ug_data->noc, "elm.text", _("IDS_EMAIL_BODY_NO_ADDRESS"));
-                               elm_box_pack_end(ug_data->main_box, ug_data->noc_ly);
-                               evas_object_show(ug_data->noc_ly);
-                               elm_object_item_disabled_set(ug_data->c_item[0], EINA_TRUE);
-                       }
-               }
-       }
-}
-
-static void _popup_block_clicked_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ugd = (EmailBlockAppData *)data;
-
-       if (ugd->popup_empty) {
-               evas_object_del(ugd->popup_empty);
-               ugd->popup_empty = NULL;
-       }
-
-       if (ugd->timeout_popup) {
-               evas_object_del(ugd->timeout_popup);
-               ugd->timeout_popup = NULL;
-       }
-}
-
-static char *_eb_gl_label_get(void *data, Evas_Object *obj, const char *part)
-{
-       debug_log("");
-       ListItemData *item_data = (ListItemData *) data;
-
-       email_rule_t *rule = NULL;
-       char buf[256];
-       memset(buf, 0x00, 256);
-
-       rule = item_data->rule;
-       snprintf(buf, sizeof(buf), "%s", rule->value);
-
-       return strdup(buf);
-}
-
-static Evas_Object *_eb_gl_icon_get(void *data, Evas_Object *obj, const char *part)
-{
-       debug_log("");
-       ListItemData *item_data = (ListItemData *) data;
-       Evas_Object *button;
-       Evas_Object *check;
-
-       if (elm_genlist_decorate_mode_get(obj)) {
-               if (!strcmp(part, "elm.edit.icon.1")) {
-                       check = elm_check_add(obj);
-                       elm_check_state_pointer_set(check, &item_data->checked);
-                       evas_object_smart_callback_add(check, "changed", _edit_item_check_changed_cb, item_data);
-                       return check;
-               }
-       } else {
-               if (0 == strcmp(part, "elm.slide.swallow.1")) {
-                       button = elm_button_add(obj);
-                       elm_object_style_set(button, "text_only/sweep");
-                       elm_object_text_set(button, dgettext("sys_string", "IDS_COM_SK_EDIT"));
-                       evas_object_smart_callback_add(button, "clicked", _eb_sweep_edit_clicked_cb, (void *)data);
-                       return button;
-               } else if (0 == strcmp(part, "elm.slide.swallow.2")) {
-                       button = elm_button_add(obj);
-                       elm_object_style_set(button, "text_only/sweep");
-                       elm_object_text_set(button, dgettext("sys_string", "IDS_COM_SK_DELETE"));
-                       evas_object_smart_callback_add(button, "clicked", _eb_sweep_delete_clicked_cb, (void *)data);
-                       return button;
-               }
-       }
-
-       return NULL;
-}
-
-static Evas_Object *_eb_gl_add_ef_icon_get(void *data, Evas_Object *obj, const char *part)
-{
-       debug_log("");
-
-       EmailBlockAppData *ug_data = _g_eb_ug_data;
-       email_rule_t *rule = (email_rule_t *) data;
-
-       if (!strcmp(part, "elm.icon")) {
-               ug_data->ef_filter_name = elm_layout_add(obj);
-               elm_layout_theme_set(ug_data->ef_filter_name, "layout", "editfield", "title");
-               ug_data->entry_filter_name = elm_entry_add(obj);
-               elm_entry_scrollable_set(ug_data->entry_filter_name, EINA_TRUE);
-               elm_entry_single_line_set(ug_data->entry_filter_name, TRUE);
-               elm_entry_cnp_mode_set(ug_data->entry_filter_name, ELM_CNP_MODE_PLAINTEXT);
-               if (ug_data->block_type == TYPE_BLOCK_ADDRESS) {
-                       elm_entry_input_panel_layout_set(ug_data->entry_filter_name, ELM_INPUT_PANEL_LAYOUT_EMAIL);
-               } else if (ug_data->block_type == TYPE_BLOCK_SUBJECT) {
-                       elm_entry_input_panel_layout_set(ug_data->entry_filter_name, ELM_INPUT_PANEL_LAYOUT_NORMAL);
-               }
-               evas_object_smart_callback_add(ug_data->entry_filter_name, "preedit,changed", _cb_backup_input, ug_data->ef_filter_name);
-               evas_object_smart_callback_add(ug_data->entry_filter_name, "changed", _cb_backup_input, ug_data->ef_filter_name);
-               evas_object_smart_callback_add(ug_data->entry_filter_name, "focused", _cb_entry_focused, ug_data->ef_filter_name);
-               evas_object_smart_callback_add(ug_data->entry_filter_name, "unfocused", _cb_entry_unfocused, ug_data->ef_filter_name);
-               evas_object_show(ug_data->entry_filter_name);
-
-               elm_object_part_content_set(ug_data->ef_filter_name, "elm.swallow.content", ug_data->entry_filter_name);
-               if (ug_data->block_type == TYPE_BLOCK_ADDRESS) {
-                       elm_object_part_text_set(ug_data->ef_filter_name, "elm.text", _("IDS_EMAIL_BODY_ADDRESS"));
-               } else if (ug_data->block_type == TYPE_BLOCK_SUBJECT) {
-                       elm_object_part_text_set(ug_data->ef_filter_name, "elm.text", dgettext("sys_string", "IDS_COM_BODY_SUBJECT"));
-               }
-               elm_object_signal_callback_add(ug_data->ef_filter_name, "elm,eraser,clicked", "elm", _cb_eraser_clicked, ug_data->entry_filter_name);
-
-               evas_object_size_hint_weight_set(ug_data->ef_filter_name, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-               evas_object_show(ug_data->ef_filter_name);
-
-               if (ug_data->str_filter_name)
-                       elm_entry_entry_set(ug_data->entry_filter_name, ug_data->str_filter_name);
-
-               if (rule) {
-                       elm_entry_entry_set(ug_data->entry_filter_name, rule->value);
-                       if (ug_data->block_type == TYPE_BLOCK_ADDRESS) {
-                               block_addr = realloc(block_addr, strlen(rule->value) + 1);
-                               sprintf(block_addr, "%s", rule->value);
-                       }
-
-                       ug_data->edit_filter_id = rule->filter_id;
-               }
-
-               if (ug_data->view_type == VIEW_BLOCK_FILTER_DATA_SET) {
-                       evas_object_show(ug_data->entry_filter_name);
-                       elm_object_focus_set(ug_data->entry_filter_name, EINA_TRUE);
-               }
-
-               return ug_data->ef_filter_name;
-       } else if (!strcmp(part, "elm.icon2")) {
-               char buf[MAX_STR_LEN] = { 0, };
-               Evas_Object *btn = elm_button_add(obj);
-               Evas_Object *ic = elm_icon_add(obj);
-               snprintf(buf, sizeof(buf), "%s/M02_function_ccbcc.png", IMGDIR);
-               elm_icon_file_set(ic, buf, NULL);
-               elm_icon_resizable_set(ic, EINA_TRUE, EINA_TRUE);
-               evas_object_show(ic);
-               elm_object_style_set(btn, "circle/empty");
-               evas_object_show(btn);
-               elm_object_part_content_set(btn, "icon", ic);
-               evas_object_smart_callback_add(btn, "clicked", _contact_button_cb, ug_data);
-               return btn;
-       }
-
-       return NULL;
-}
-
-/*static Evas_Object *_eb_gl_add_btn_icon_get(void *data, Evas_Object *obj, const char *part)
-{
-       debug_log("");
-
-       EmailBlockAppData *ug_data = _g_eb_ug_data;
-
-       if (!strcmp(part, "elm.icon.1")) {
-               ug_data->recent_btn = elm_button_add(obj);
-               elm_object_text_set(ug_data->recent_btn, dgettext("sys_string", "IDS_COM_BUTTON_RECENT"));
-               evas_object_show(ug_data->recent_btn);
-               evas_object_smart_callback_add(ug_data->recent_btn, "clicked", _recent_button_cb, ug_data);
-               return ug_data->recent_btn;
-       } else if (!strcmp(part, "elm.icon.2")) {
-               ug_data->contact_btn = elm_button_add(obj);
-               elm_object_text_set(ug_data->contact_btn, dgettext("sys_string", "IDS_COM_BODY_CONTACTS"));
-               evas_object_smart_callback_add(ug_data->contact_btn, "clicked", _contact_button_cb, ug_data);
-               evas_object_show(ug_data->contact_btn);
-               return ug_data->contact_btn;
-       }
-
-       return NULL;
-}*/
-
-static void _eb_sweep_edit_clicked_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       ListItemData *item_data = (ListItemData *) data;
-       email_rule_t *rule = item_data->rule;
-
-       EmailBlockAppData *ug_data = _g_eb_ug_data;
-       ug_data->mode = BLOCK_MODE_EDIT;
-       eb_create_add_filter_view(ug_data, rule);
-}
-
-static void _eb_sweep_delete_clicked_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       ListItemData *item_data = (ListItemData *) data;
-       email_rule_t *rule = item_data->rule;
-
-       EmailBlockAppData *ug_data = _g_eb_ug_data;
-
-       if (EMAIL_ERROR_NONE != email_delete_rule(rule->filter_id)) {
-               debug_critical("email_delete_rule fails");
-       }
-
-       _changed_filter_type_cb(ug_data, ug_data->segment, NULL);
-}
-
-static void _eb_gl_sel_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       elm_genlist_item_selected_set(item, EINA_FALSE);
-       EmailBlockAppData *ug_data = _g_eb_ug_data;
-       ListItemData *item_data = (ListItemData *) data;
-
-       if (elm_genlist_decorate_mode_get(item_data->genlist)) {
-               item_data->checked = !item_data->checked;
-
-               if (item_data->checked)
-                       ug_data->edit_checked_count++;
-               else
-                       ug_data->edit_checked_count--;
-
-               if (ug_data->select_all_layout) {
-                       if (ug_data->edit_total_count == ug_data->edit_checked_count)
-                               ug_data->select_all_checked = EINA_TRUE;
-                       else
-                               ug_data->select_all_checked = EINA_FALSE;
-
-                       elm_check_state_pointer_set(ug_data->select_all_checkbox, &ug_data->select_all_checked);
-               }
-
-               elm_genlist_item_update(item_data->it);
-               _del_button_state_set(ug_data);
-               _show_selection_info(ug_data);
-
-       } else {
-               email_rule_t *rule = NULL;
-               ug_data->selected_item = elm_genlist_selected_item_get(obj);
-               ug_data->mode = BLOCK_MODE_EDIT;
-
-               if (item_data) {
-                       rule = item_data->rule;
-               }
-               eb_create_add_filter_view(ug_data, rule);
-               elm_genlist_item_selected_set(ug_data->selected_item, EINA_FALSE);
-       }
-}
-
-static void _eb_gl_del(void *data, Evas_Object *obj)
-{
-       debug_log("");
-       ListItemData *item_data = (ListItemData *) data;
-
-       if (item_data)
-               g_free(item_data);
-}
-
-static void _cb_backup_input(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ug_data = _g_eb_ug_data;
-       Evas_Object *eo = (Evas_Object *)obj;
-
-       if (elm_object_focus_get(data)) {
-               if (elm_entry_is_empty(obj))
-                       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-               else
-                       elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       }
-
-       if (eo == ug_data->entry_filter_name) {
-               if (ug_data->str_filter_name) {
-                       g_free(ug_data->str_filter_name);
-                       ug_data->str_filter_name = NULL;
-               }
-
-               ug_data->str_filter_name = g_strdup(elm_entry_entry_get(eo));
-
-               if (!g_strcmp0(ug_data->str_filter_name, "")) {
-                       elm_object_disabled_set(ug_data->r_button2, EINA_TRUE);
-               } else {
-                       elm_object_disabled_set(ug_data->r_button2, EINA_FALSE);
-               }
-       }
-}
-
-static void _cb_entry_focused(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-
-       if (!data || !obj) {
-               debug_log("data is NULL");
-               return;
-       }
-
-       if (!elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
-       elm_object_signal_emit(data, "elm,state,guidetext,hide", "elm");
-}
-
-static void _cb_entry_unfocused(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-
-       if (!data || !obj) {
-               debug_log("data is NULL");
-               return;
-       }
-
-       if (elm_entry_is_empty(obj))
-               elm_object_signal_emit(data, "elm,state,guidetext,show", "elm");
-       elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
-}
-
-static void _cb_eraser_clicked(void *data, Evas_Object *obj, const char *emission, const char *source)
-{
-       debug_log("");
-
-       if (!data || !obj) {
-               debug_log("data is NULL");
-               return;
-       }
-
-       elm_entry_entry_set(data, "");
-}
-
-static void _edit_item_check_changed_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       ListItemData *item_data = (ListItemData *) data;
-       EmailBlockAppData *ug_data = _g_eb_ug_data;
-
-       if (item_data->checked)
-               ug_data->edit_checked_count++;
-       else
-               ug_data->edit_checked_count--;
-
-       /* update select all check button */
-       if (ug_data->select_all_layout) {
-               if (ug_data->edit_total_count == ug_data->edit_checked_count)
-                       ug_data->select_all_checked = EINA_TRUE;
-               else
-                       ug_data->select_all_checked = EINA_FALSE;
-
-               elm_check_state_pointer_set(ug_data->select_all_checkbox, &ug_data->select_all_checked);
-       }
-       _del_button_state_set(ug_data);
-       _show_selection_info(ug_data);
-}
-
-static void _del_button_state_set(EmailBlockAppData *ug_data)
-{
-       if (ug_data->edit_checked_count > 0)
-               elm_object_item_disabled_set(ug_data->c_item[2], EINA_FALSE);
-       else
-               elm_object_item_disabled_set(ug_data->c_item[2], EINA_TRUE);
-}
-
-static void _show_selection_info(EmailBlockAppData *ugd)
-{
-       if (!ugd->edit_select_info) {
-               ugd->edit_select_info = elm_notify_add(ugd->layout_main);
-               elm_notify_orient_set(ugd->edit_select_info, ELM_NOTIFY_ORIENT_BOTTOM);
-               ugd->edit_select_info_ly = elm_layout_add(ugd->layout_main);
-               elm_layout_theme_set(ugd->edit_select_info_ly, "standard", "selectioninfo", "vertical/bottom_64");
-               elm_object_content_set(ugd->edit_select_info, ugd->edit_select_info_ly);
-       }
-       if (ugd->edit_checked_count == 0)
-               evas_object_hide(ugd->edit_select_info);
-       else {
-               char text[128] = { '0', };
-               if (ugd->block_type == TYPE_BLOCK_ADDRESS) {
-                       if (ugd->edit_checked_count == 1)
-                               snprintf(text, 127, "%s (%d)", dgettext("sys_string", "IDS_COM_POP_SELECTED"), ugd->edit_checked_count);
-                       else
-                               snprintf(text, 127, "%s (%d)", dgettext("sys_string", "IDS_COM_POP_SELECTED"), ugd->edit_checked_count);
-               } else {
-                       if (ugd->edit_checked_count == 1)
-                               snprintf(text, 127, "%s (%d)", dgettext("sys_string", "IDS_COM_POP_SELECTED"), ugd->edit_checked_count);
-                       else
-                               snprintf(text, 127, "%s (%d)", dgettext("sys_string", "IDS_COM_POP_SELECTED"), ugd->edit_checked_count);
-               }
-               edje_object_part_text_set(_EDJ(ugd->edit_select_info_ly), "elm.text", text);
-               /*elm_notify_timeout_set(select_info, 1);*/
-               evas_object_show(ugd->edit_select_info);
-       }
-}
-
-static void _block_recent_create_view(void *data)
-{
-       debug_log("");
-
-       EmailBlockAppData *ugd = (EmailBlockAppData *)data;
-
-       Evas_Object *recent_layout;
-       Evas_Object *l_button;
-       Evas_Object *cbar;
-
-       _block_recent_init(ugd);
-
-       ugd->view_type = VIEW_BLOCK_RECENT_ADD;
-
-       _block_recent_set_genlist_item_style(ugd);
-
-       ugd->recent_genlist = _block_recent_create_genlist_top_half(ugd);
-
-       if (ugd->total_count > 0)
-               evas_object_data_set(ugd->recent_genlist, "view_data", ugd);
-
-       l_button = elm_button_add(ugd->navi_bar);
-       evas_object_smart_callback_add(l_button, "clicked", _block_recent_back_cb, ugd);
-       elm_object_style_set(l_button, "naviframe/back_btn/default");
-       ugd->recent_lbutton = l_button;
-
-       Elm_Object_Item *navi_it = NULL;
-
-       if (ugd->total_count > 0) {
-               recent_layout = _block_recent_create_layout(ugd);
-               _block_recent_set_editmode(ugd);
-
-               navi_it = elm_naviframe_item_push(ugd->navi_bar, _("IDS_EMAIL_HEADER_RECENT_T_HEADER"), l_button, NULL, recent_layout, NULL);
-
-               cbar = elm_toolbar_add(ugd->navi_bar);
-               elm_toolbar_shrink_mode_set(cbar, ELM_TOOLBAR_SHRINK_EXPAND);
-               elm_object_style_set(cbar, "naviframe");
-               evas_object_show(cbar);
-
-               elm_object_item_disabled_set(elm_toolbar_item_append(cbar, NULL, "", NULL, NULL), EINA_TRUE);
-               ugd->c_item[3] = elm_toolbar_item_append(cbar, NULL,
-                               dgettext("sys_string", "IDS_COM_SK_DONE"), _block_recent_done_cb, ugd);
-
-               elm_object_item_part_content_set(navi_it, "controlbar", cbar);
-               elm_object_item_disabled_set(ugd->c_item[3], EINA_TRUE);
-
-               evas_object_show(recent_layout);
-               evas_object_show(ugd->recent_genlist);
-
-               Evas_Object *waiting_popup = elm_popup_add(ugd->win_main);
-               evas_object_size_hint_weight_set(waiting_popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-               elm_object_text_set(waiting_popup, _("IDS_EMAIL_POP_RETRIEVING_ADDRESS_LIST_ING"));
-               elm_object_part_text_set(waiting_popup, "title,text", _("IDS_EMAIL_HEADER_RECENT_T_HEADER"));
-               evas_object_smart_callback_add(waiting_popup, "block,clicked", _popup_block_clicked_cb, ugd);
-               evas_object_show(waiting_popup);
-               ugd->waiting_popup = waiting_popup;
-
-               elm_object_disabled_set(l_button, EINA_TRUE);
-               ugd->recent_timer = ecore_timer_add(0.5, _block_recent_create_genlist_bottom_half, ugd);
-
-       } else {
-               ugd->no_content = _block_recent_create_no_content_view(ugd->navi_bar, ugd);
-               navi_it = elm_naviframe_item_push(ugd->navi_bar, _("IDS_EMAIL_HEADER_RECENT_T_HEADER"), l_button, NULL, ugd->no_content, NULL);
-               evas_object_show(ugd->no_content);
-       }
-}
-
-static void _block_recent_init(EmailBlockAppData *ugd)
-{
-       elm_object_content_unset(ugd->recent_box);
-
-       elm_box_unpack(ugd->recent_box,ugd->block_select_all_layout);
-       elm_box_unpack(ugd->recent_box,ugd->recent_genlist);
-
-       if (ugd->recent_genlist!= NULL) {
-               elm_genlist_clear(ugd->recent_genlist);
-               evas_object_del(ugd->recent_genlist);
-               ugd->recent_genlist = NULL;
-       }
-       if (ugd->block_select_all_layout != NULL) {
-               debug_log("delete layout");
-               evas_object_del(ugd->block_select_all_layout);
-               ugd->block_select_all_layout = NULL;
-       }
-       if (ugd->no_content != NULL) {
-               evas_object_del(ugd->no_content);
-               ugd->no_content = NULL;
-       }
-       if (ugd->recent_box!= NULL) {
-               evas_object_del(ugd->recent_box);
-               ugd->recent_box = NULL;
-       }
-
-       edje_object_signal_emit(_EDJ(ugd->layout_main), "elm,bg,show,default", "elm");
-}
-
-static void _block_recent_set_editmode(void *data)
-{
-       debug_log("");
-
-       EmailBlockAppData *ugd = (EmailBlockAppData *)data;
-
-       Evas_Object *genlist = ugd->recent_genlist;
-       Evas_Object *layout, *check;
-
-       if (!elm_genlist_decorate_mode_get(genlist)) {
-               edje_object_signal_emit(_EDJ(ugd->layout_main), "elm,bg,show,edit_mode", "elm");
-
-               layout = ugd->block_select_all_layout = elm_layout_add(ugd->recent_box);
-               elm_layout_theme_set(layout, "genlist", "item", "select_all/default");
-               evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
-               evas_object_size_hint_align_set(layout, EVAS_HINT_FILL, EVAS_HINT_FILL);
-               evas_object_event_callback_add(layout, EVAS_CALLBACK_MOUSE_DOWN, _block_recent_select_all_layout_mouse_down_cb, ugd);
-
-               check = ugd->select_all_checkbox = elm_check_add(ugd->block_select_all_layout);
-               elm_check_state_pointer_set(check, &ugd->block_recent_select_all_checked);
-               evas_object_smart_callback_add(check, "changed", _block_recent_select_all_check_changed_cb, ugd);
-               evas_object_propagate_events_set(check, EINA_FALSE);
-               elm_object_part_content_set(layout, "elm.icon", check);
-
-               elm_object_part_text_set(ugd->block_select_all_layout, "elm.text", dgettext("sys_string", "IDS_COM_BODY_SELECT_ALL"));
-               elm_box_pack_start(ugd->recent_box, ugd->block_select_all_layout);
-               evas_object_show(ugd->block_select_all_layout);
-
-               elm_genlist_reorder_mode_set(genlist, EINA_FALSE);
-               elm_genlist_decorate_mode_set(genlist, EINA_TRUE);
-               elm_genlist_select_mode_set(genlist, ELM_OBJECT_SELECT_MODE_ALWAYS);
-       }
-}
-
-static void _block_recent_select_all_layout_mouse_down_cb(void *data, Evas * evas, Evas_Object *obj, void *event_info)
-{
-       EmailBlockAppData *ugd = (EmailBlockAppData *)data;
-
-       ugd->block_recent_select_all_checked = !ugd->block_recent_select_all_checked;
-       elm_check_state_pointer_set(ugd->select_all_checkbox, &ugd->block_recent_select_all_checked);
-
-       _block_recent_check_select_all(ugd);
-
-       if (ugd->checked_count > 0)
-               elm_object_item_disabled_set(ugd->c_item[3], EINA_FALSE);
-       else
-               elm_object_item_disabled_set(ugd->c_item[3], EINA_TRUE);
-}
-
-static void _block_recent_select_all_check_changed_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       EmailBlockAppData *ugd = (EmailBlockAppData *)data;
-
-       _block_recent_check_select_all(data);
-
-       if (ugd->checked_count > 0)
-               elm_object_item_disabled_set(ugd->c_item[3], EINA_FALSE);
-       else
-               elm_object_item_disabled_set(ugd->c_item[3], EINA_TRUE);
-}
-
-static void _block_recent_check_select_all(EmailBlockAppData *ugd)
-{
-       debug_log("");
-       Item_Data *it_data;
-       Elm_Object_Item *it;
-
-       if (ugd->block_recent_select_all_checked)
-               ugd->checked_count = ugd->total_count;
-       else
-               ugd->checked_count = 0;
-
-       it = elm_genlist_first_item_get(ugd->recent_genlist);
-       while (it) {
-               it_data = elm_object_item_data_get(it);
-               if (it_data)
-                       it_data->checked = ugd->block_recent_select_all_checked;
-               it = elm_genlist_item_next_get(it);
-       }
-       elm_genlist_realized_items_update(ugd->recent_genlist);
-
-       _block_recent_show_selection_info(ugd);
-}
-
-static Evas_Object *_block_recent_create_genlist_top_half(void *data)
-{
-       debug_log("");
-
-       EmailBlockAppData *ugd = (EmailBlockAppData *)data;
-
-       int mail_cnt = 0;
-       int err;
-
-       Evas_Object *recent_list = NULL;
-       recent_list = elm_genlist_add(ugd->navi_bar);
-
-       elm_genlist_homogeneous_set(recent_list, EINA_TRUE);
-       elm_genlist_tree_effect_enabled_set(recent_list, EINA_TRUE);
-       evas_object_size_hint_weight_set(recent_list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_size_hint_align_set(recent_list, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
-       email_mail_list_item_t *mail_data = NULL;
-       email_mailbox_t *mail_box = NULL;
-
-       err = email_get_mailbox_by_mailbox_type(ugd->account_id, EMAIL_MAILBOX_TYPE_INBOX, &mail_box);
-
-       if (err != EMAIL_ERROR_NONE || mail_box == NULL) {
-               debug_log("[FAILED] email_get_mailbox_by_mailbox_type:%d", err);
-               goto FINISH_OFF;
-       }
-
-       debug_log("mailbox_id = %d", mail_box->mailbox_id);
-
-       err = email_get_mail_list(ugd->account_id,
-                                       mail_box->mailbox_id, EMAIL_LIST_TYPE_NORMAL, -1,
-                                       10,
-                                       EMAIL_SORT_DATETIME_HIGH, &mail_data, &mail_cnt);
-
-       if (mail_box) {
-               email_free_mailbox(&mail_box, 1);
-               mail_box = NULL;
-       }
-
-       if (err < 0 || mail_cnt < 0) {
-               debug_log("Get mail address list failed : [%d]", err);
-               goto FINISH_OFF;
-       }
-
-       ugd->recent_mail_data = mail_data;
-
-FINISH_OFF:
-       ugd->total_count = mail_cnt;
-       return recent_list;
-}
-
-static Eina_Bool _block_recent_create_genlist_bottom_half(void *data)
-{
-       debug_log("");
-
-       EmailBlockAppData *ugd = (EmailBlockAppData *)data;
-
-       int index;
-       int total_cnt = 0;
-
-       Evas_Object *recent_list = ugd->recent_genlist;
-       Item_Data *item_data = NULL;
-
-       email_address_info_list_t *addrs_info_list = NULL;
-       email_mail_list_item_t *mail_data = ugd->recent_mail_data;
-
-       if (!mail_data) {
-               debug_log("mail_data is NULL");
-               goto FINISH_OFF;
-       }
-
-       if (ugd->total_count > MAX_RECENT_MAIL_TO_RETRIEVE)
-               ugd->total_count = MAX_RECENT_MAIL_TO_RETRIEVE;
-
-       for (index = 0; index < ugd->total_count; index++, mail_data++) {
-
-               if (mail_data->mail_id <= 0) {
-                       debug_log("Invalid mail ID");
-                       goto FINISH_OFF;
-               }
-
-               email_get_address_info_list(mail_data->mail_id, &addrs_info_list);
-
-               if (!addrs_info_list || !(addrs_info_list->from)) {
-                       debug_log("address info is NULL");
-                       goto FINISH_OFF;
-               }
-
-               int n_to_list = g_list_length(addrs_info_list->from);
-               int i = 0;
-
-               for (i = 0; i < n_to_list; i++) {
-                       email_address_info_t *addrs_info = NULL;
-
-                       addrs_info = (email_address_info_t *) g_list_nth_data(addrs_info_list->from, i);
-
-                       if (addrs_info && addrs_info->address) {
-                               if (total_cnt == MAX_RECENT_CNT)
-                                       break;
-
-                               item_data = calloc(1, sizeof(Item_Data));
-                               item_data->address = g_strdup(addrs_info->address);
-                               if (!_block_recent_check_addr_is_duplicated(addrs_info->address, recent_list)) {
-                                       item_data->it = elm_genlist_item_append(recent_list,
-                                                                               &itc,
-                                                                               item_data,
-                                                                               NULL, ELM_GENLIST_ITEM_NONE, _block_recent_gl_sel, item_data);
-
-                                       total_cnt++;
-                               }
-                       }
-               }
-       }
-
-       if (addrs_info_list) {
-               email_free_address_info_list(&addrs_info_list);
-               addrs_info_list = NULL;
-       }
-
-FINISH_OFF:
-
-       if (ugd->waiting_popup) {
-               evas_object_del(ugd->waiting_popup);
-               ugd->waiting_popup = NULL;
-       }
-
-       if (ugd->recent_mail_data) {
-               g_free(ugd->recent_mail_data);
-               ugd->recent_mail_data = NULL;
-       }
-
-       elm_object_disabled_set(ugd->recent_lbutton, EINA_FALSE);
-       ugd->total_count = total_cnt;
-       return EINA_FALSE;
-}
-
-static Evas_Object *_block_recent_create_layout(EmailBlockAppData *ugd)
-{
-       Evas_Object *genlist = ugd->recent_genlist;
-       Evas_Object *box, *conform;
-
-       elm_win_conformant_set(ugd->win_main, EINA_TRUE);
-
-       conform = elm_conformant_add(ugd->navi_bar);
-       elm_object_style_set(conform, "internal_layout");
-       evas_object_size_hint_weight_set(conform, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_show(conform);
-
-       box = elm_box_add(ugd->navi_bar);
-       ugd->recent_box = box;
-       evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-       evas_object_show(box);
-
-       evas_object_show(genlist);
-       elm_box_pack_end(box, genlist);
-
-       elm_object_content_set(conform, box);
-
-       return conform;
-}
-
-static void _block_recent_set_genlist_item_style(EmailBlockAppData *ugd)
-{
-       itc.item_style = "1text";
-       itc.func.text_get = _block_recent_gl_label_get;
-       itc.func.content_get = _block_recent_gl_icon_get;
-       itc.func.state_get = NULL;
-       itc.func.del = NULL;
-       itc.decorate_all_item_style = "edit_default";
-}
-
-static void _block_recent_gl_sel(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       elm_genlist_item_selected_set(item, EINA_FALSE);
-
-       Item_Data *item_data = (Item_Data *) data;
-       EmailBlockAppData *ugd = (EmailBlockAppData *)evas_object_data_get(obj, "view_data");
-
-       if (elm_genlist_decorate_mode_get(ugd->recent_genlist)) {
-               item_data->checked = !item_data->checked;
-
-               if (item_data->checked)
-                       ugd->checked_count++;
-               else
-                       ugd->checked_count--;
-
-               if (ugd->block_select_all_layout) {
-                       if (ugd->total_count == ugd->checked_count)
-                               ugd->block_recent_select_all_checked = EINA_TRUE;
-                       else
-                               ugd->block_recent_select_all_checked = EINA_FALSE;
-
-                       elm_check_state_pointer_set(ugd->select_all_checkbox, &ugd->block_recent_select_all_checked);
-               }
-
-               elm_genlist_item_update(item_data->it);
-
-               if (ugd->checked_count > 0)
-                       elm_object_item_disabled_set(ugd->c_item[3], EINA_FALSE);
-               else
-                       elm_object_item_disabled_set(ugd->c_item[3], EINA_TRUE);
-
-               _block_recent_show_selection_info(ugd);
-       }
-}
-
-static char *_block_recent_gl_label_get(void *data, Evas_Object *obj, const char *part)
-{
-       debug_log("");
-
-       Item_Data *item_data = (Item_Data *) data;
-       if (!item_data)
-               return NULL;
-
-       debug_log("addr = %s", item_data->address);
-
-       if (!g_strcmp0(part, "elm.text"))
-               return strdup(item_data->address);
-
-       return NULL;
-}
-
-static Evas_Object *_block_recent_gl_icon_get(void *data, Evas_Object *obj, const char *part)
-{
-       debug_log("");
-       Evas_Object *check = NULL;
-       Item_Data *item_data = (Item_Data *) data;
-
-       if (elm_genlist_decorate_mode_get(obj)) {
-               if (!strcmp(part, "elm.edit.icon.1")) {
-                       check = elm_check_add(obj);
-                       elm_check_state_pointer_set(check, &item_data->checked);
-                       evas_object_smart_callback_add(check, "changed", _block_recent_item_check_changed_cb, item_data);
-                       return check;
-               }
-       }
-
-       return NULL;
-}
-
-static void _block_recent_item_check_changed_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       Item_Data *item_data = (Item_Data *) data;
-       EmailBlockAppData *ugd = (EmailBlockAppData *)evas_object_data_get(elm_object_item_widget_get(item_data->it), "view_data");
-
-       if (item_data->checked)
-               ugd->checked_count++;
-       else
-               ugd->checked_count--;
-
-       if (ugd->block_select_all_layout) {
-               if (ugd->total_count == ugd->checked_count)
-                       ugd->block_recent_select_all_checked = EINA_TRUE;
-               else
-                       ugd->block_recent_select_all_checked = EINA_FALSE;
-
-               elm_check_state_pointer_set(ugd->select_all_checkbox, &ugd->block_recent_select_all_checked);
-       }
-
-       if (ugd->checked_count > 0)
-               elm_object_item_disabled_set(ugd->c_item[3], EINA_FALSE);
-       else
-               elm_object_item_disabled_set(ugd->c_item[3], EINA_TRUE);
-
-       _block_recent_show_selection_info(ugd);
-}
-
-static bool _block_recent_check_addr_is_duplicated(const char *addr, Evas_Object *recent_list)
-{
-       debug_log("");
-
-       Elm_Object_Item *item;
-       Item_Data *it_data;
-
-       debug_log("addr = %s", addr);
-
-       item = elm_genlist_first_item_get(recent_list);
-
-       while (item) {
-               it_data = (Item_Data *) elm_object_item_data_get(item);
-
-               debug_log("str = %s", it_data->address);
-
-               if (g_strcmp0(addr, it_data->address) == 0)
-                       return true;
-
-               item = elm_genlist_item_next_get(item);
-       }
-
-       return false;
-}
-
-static void _block_recent_back_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-
-       EmailBlockAppData *ugd = (EmailBlockAppData *)data;
-
-       if (ugd->view_type != VIEW_BLOCK_RECENT_ADD) {
-               debug_log("**double clicked**");
-               return;
-       }
-
-       elm_object_disabled_set(ugd->recent_lbutton, EINA_TRUE);
-       elm_object_item_disabled_set(ugd->c_item[3], EINA_TRUE);
-
-       if (ugd->recent_select_info) {
-               evas_object_del(ugd->recent_select_info);
-               ugd->recent_select_info = NULL;
-       }
-
-       ugd->block_recent_select_all_checked = EINA_FALSE;
-
-       ugd->checked_count = 0;
-
-       ugd->view_type = VIEW_BLOCK_FILTER_DATA_SET;
-
-       /*elm_object_signal_emit(ugd->ef_filter_name, "clicked", "elm");*/
-       evas_object_show(ugd->entry_filter_name);
-       elm_object_focus_set(ugd->entry_filter_name, EINA_TRUE);
-
-       elm_naviframe_item_pop(ugd->navi_bar);
-}
-
-static void _block_recent_done_cb(void *data, Evas_Object *obj, void *event_info)
-{
-       debug_log("");
-       EmailBlockAppData *ugd = (EmailBlockAppData *)data;
-
-       char *result_address = NULL;
-       char *result_address_ = NULL;
-
-       elm_object_disabled_set(ugd->recent_lbutton, EINA_TRUE);
-       elm_object_item_disabled_set(ugd->c_item[3], EINA_TRUE);
-
-       if (ugd->recent_select_info) {
-               evas_object_del(ugd->recent_select_info);
-               ugd->recent_select_info = NULL;
-       }
-
-       Item_Data *item_data;
-       Elm_Object_Item *it;
-
-       it = elm_genlist_first_item_get(ugd->recent_genlist);
-
-       while (it) {
-               item_data = elm_object_item_data_get(it);
-               it = elm_genlist_item_next_get(it);
-
-               if ((item_data) && (item_data->checked)) {
-                       char *email_addr = item_data->address;
-                       if (email_addr) {
-                               if (result_address)
-                                       result_address_ = g_strconcat(result_address, ";", email_addr, NULL);
-                               else
-                                       result_address_ = g_strdup(email_addr);
-
-                               if (result_address)
-                                       g_free(result_address);
-
-                               result_address = result_address_;
-                       }
-               }
-               debug_log("result address : [%s]", result_address);
-       }
-
-       if (!block_addr) {
-               block_addr = g_strdup(result_address);
-               debug_log("Null block_addr = %s", block_addr);
-               elm_entry_entry_set(ugd->entry_filter_name, block_addr);
-               ugd->str_filter_name = g_strdup(block_addr);
-       } else {
-               char *addr_tmp = block_addr;
-               block_addr = g_strconcat(block_addr, ";", result_address, NULL);
-               debug_log("Not Null block_addr = %s", block_addr);
-               elm_entry_entry_set(ugd->entry_filter_name, block_addr);
-               g_free(addr_tmp);
-               ugd->str_filter_name = g_strdup(block_addr);
-       }
-
-       ugd->block_recent_select_all_checked = EINA_FALSE;
-
-       ugd->checked_count = 0;
-
-       ugd->view_type = VIEW_BLOCK_FILTER_DATA_SET;
-
-       g_free(result_address);
-
-       elm_genlist_decorate_mode_set(ugd->recent_genlist, EINA_FALSE);
-       elm_genlist_select_mode_set(ugd->recent_genlist, ELM_OBJECT_SELECT_MODE_DEFAULT);
-
-       /*elm_object_signal_emit(ugd->ef_filter_name, "clicked", "elm");*/
-       evas_object_show(ugd->entry_filter_name);
-       elm_object_focus_set(ugd->entry_filter_name, EINA_TRUE);
-
-       elm_naviframe_item_pop(ugd->navi_bar);
-}
-
-static Evas_Object *_block_recent_create_no_content_view(Evas_Object *parent, void *data)
-{
-       debug_log("");
-
-       Evas_Object *no_content = elm_layout_add(parent);
-       elm_layout_theme_set(no_content, "layout", "nocontents", "full");
-       elm_object_part_text_set(no_content, "elm.text", dgettext("sys_string", "IDS_COM_BODY_NO_CONTENTS"));
-
-       evas_object_show(no_content);
-
-       return no_content;
-}
-
-static void _block_recent_show_selection_info(EmailBlockAppData *ugd)
-{
-       if (!ugd->recent_select_info) {
-               ugd->recent_select_info = elm_notify_add(ugd->layout_main);
-               elm_notify_orient_set(ugd->recent_select_info, ELM_NOTIFY_ORIENT_BOTTOM);
-               ugd->recent_select_info_ly = elm_layout_add(ugd->layout_main);
-               elm_layout_theme_set(ugd->recent_select_info_ly, "standard", "selectioninfo", "vertical/bottom_64");
-               elm_object_content_set(ugd->recent_select_info, ugd->recent_select_info_ly);
-       }
-
-       if (ugd->checked_count == 0)
-               evas_object_hide(ugd->recent_select_info);
-       else {
-               char text[128] = { '0', };
-               if (ugd->checked_count == 1)
-                       snprintf(text, 127, "%s (%d)", dgettext("sys_string", "IDS_COM_POP_SELECTED"), ugd->checked_count);
-               else
-                       snprintf(text, 127, "%s (%d)", dgettext("sys_string", "IDS_COM_POP_SELECTED"), ugd->checked_count);
-               edje_object_part_text_set(_EDJ(ugd->recent_select_info_ly), "elm.text", text);
-               /*elm_notify_timeout_set(select_info, 1);*/
-               evas_object_show(ugd->recent_select_info);
-       }
-}
-
-/* EOF */
diff --git a/block/theme/email-block-theme-macro.edc b/block/theme/email-block-theme-macro.edc
deleted file mode 100755 (executable)
index 968cf7b..0000000
+++ /dev/null
@@ -1,1410 +0,0 @@
-/*
- * Copyright 2012  Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.tizenopensource.org/license
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#define GENLIST_HEIGHT_1_INC 1
-#define GENLIST_HEIGHT_16_INC 16
-#define GENLIST_HEIGHT_33_INC 33
-#define GENLIST_HEIGHT_49_INC 49
-#define GENLIST_HEIGHT_62_INC 62
-#define GENLIST_HEIGHT_65_INC 65
-#define GENLIST_HEIGHT_73_INC 73
-#define GENLIST_HEIGHT_77_INC 77
-#define GENLIST_HEIGHT_89_INC 89
-#define GENLIST_HEIGHT_93_INC 93
-#define GENLIST_HEIGHT_97_INC 97
-#define GENLIST_HEIGHT_129_INC 129
-#define GENLIST_HEIGHT_161_INC 161
-#define GENLIST_HEIGHT_163_INC 163
-#define GENLIST_HEIGHT_164_INC 164
-#define GENLIST_HEIGHT_165_INC 165
-#define GENLIST_HEIGHT_177_INC 177
-#define GENLIST_HEIGHT_182_INC 182
-#define GENLIST_HEIGHT_190_INC 190
-#define GENLIST_HEIGHT_207_INC 207
-#define GENLIST_HEIGHT_260_INC 260
-#define GENLIST_HEIGHT_291_INC 291
-#define GENLIST_HEIGHT_454_INC 454
-#define GENLIST_HEIGHT_566_INC 566
-
-#define GENLIST_PADDING_4_INC 4
-#define GENLIST_PADDING_5_INC 5
-#define GENLIST_PADDING_6_INC 6
-#define GENLIST_PADDING_8_INC 8
-#define GENLIST_PADDING_10_INC 10
-#define GENLIST_PADDING_11_INC 11
-#define GENLIST_PADDING_12_INC 12
-#define GENLIST_PADDING_13_INC 13
-#define GENLIST_PADDING_14_INC 14
-#define GENLIST_PADDING_16_INC 16
-#define GENLIST_PADDING_18_INC 18
-#define GENLIST_PADDING_21_INC 21
-#define GENLIST_PADDING_22_INC 22
-#define GENLIST_PADDING_24_INC 24
-#define GENLIST_PADDING_27_INC 27
-#define GENLIST_PADDING_32_INC 32
-#define GENLIST_PADDING_34_INC 34
-#define GENLIST_PADDING_46_INC 46
-#define GENLIST_PADDING_48_INC 48
-#define GENLIST_PADDING_64_INC 64
-#define GENLIST_PADDING_74_INC 74
-#define GENLIST_PADDING_88_INC 88
-#define GENLIST_PADDING_124_INC 124
-
-#define GENLIST_TEXT_SIZE_LIST_MAIN_TEXT 44
-#define GENLIST_TEXT_SIZE_LIST_BUBBLE_TEXT 32
-#define GENLIST_TEXT_SIZE_NAME_TEXT 32
-#define GENLIST_TEXT_SIZE_LIST_MESSAGE_TEXT 32
-#define GENLIST_FONT_27_INC 27
-#define GENLIST_FONT_28_INC 28
-#define GENLIST_FONT_30_INC 30
-#define GENLIST_FONT_32_INC 32
-#define GENLIST_FONT_STYLE_32_INC "32"
-#define GENLIST_FONT_36_INC 36
-#define GENLIST_FONT_STYLE_36_INC "36"
-#define GENLIST_FONT_40_INC 40
-#define GENLIST_FONT_STYLE_40_INC "40"
-#define GENLIST_FONT_42_INC 42
-#define GENLIST_FONT_STYLE_42_INC "42"
-#define GENLIST_FONT_48_INC 48
-#define GENLIST_FONT_STYLE_48_INC "48"
-
-#define GENLIST_SIZE_4_INC 4
-#define GENLIST_SIZE_6_INC 6
-#define GENLIST_SIZE_8_INC 8
-#define GENLIST_SIZE_10_INC 10
-#define GENLIST_SIZE_13_INC 13
-#define GENLIST_SIZE_16_INC 16
-#define GENLIST_SIZE_18_INC 18
-#define GENLIST_SIZE_21_INC 21
-#define GENLIST_SIZE_28_INC 28
-#define GENLIST_SIZE_35_INC 35
-#define GENLIST_SIZE_38_INC 38
-#define GENLIST_SIZE_40_INC 40
-#define GENLIST_SIZE_42_INC 42
-#define GENLIST_SIZE_44_INC 44
-#define GENLIST_SIZE_45_INC 45
-#define GENLIST_SIZE_46_INC 46
-#define GENLIST_SIZE_48_INC 48
-#define GENLIST_SIZE_54_INC 54
-#define GENLIST_SIZE_56_INC 56
-#define GENLIST_SIZE_57_INC 57
-#define GENLIST_SIZE_60_INC 60
-#define GENLIST_SIZE_61_INC 61
-#define GENLIST_SIZE_SLIDE_60_INC 60
-#define GENLIST_SIZE_66_INC 66
-#define GENLIST_SIZE_74_INC 74
-#define GENLIST_SIZE_SLIDE_74_INC 74
-#define GENLIST_SIZE_80_INC 80
-#define GENLIST_SIZE_88_INC 88
-#define GENLIST_SIZE_90_INC 90
-#define GENLIST_SIZE_96_INC 96
-#define GENLIST_SIZE_112_INC 112
-#define GENLIST_SIZE_116_INC 116
-#define GENLIST_SIZE_128_INC 128
-#define GENLIST_SIZE_133_INC 133
-#define GENLIST_SIZE_141_INC 141
-#define GENLIST_SIZE_144_INC 144
-#define GENLIST_SIZE_154_INC 154
-#define GENLIST_SIZE_160_INC 160
-#define GENLIST_SIZE_163_INC 163
-#define GENLIST_SIZE_168_INC 168
-#define GENLIST_SIZE_174_INC 174
-#define GENLIST_SIZE_SLIDE_165_INC 165
-#define GENLIST_SIZE_176_INC 176
-#define GENLIST_SIZE_177_INC 177
-#define GENLIST_SIZE_192_INC 192
-#define GENLIST_SIZE_195_INC 195
-#define GENLIST_SIZE_197_INC 197
-#define GENLIST_SIZE_206_INC 206
-#define GENLIST_SIZE_234_INC 234
-#define GENLIST_SIZE_235_INC 235
-#define GENLIST_SIZE_SLIDE_220_INC 220
-#define GENLIST_SIZE_304_INC 304
-#define GENLIST_SIZE_390_INC 390
-#define GENLIST_SIZE_448_INC 448
-#define GENLIST_SIZE_560_INC 560
-#define GENLIST_SIZE_576_INC 576
-#define GENLIST_SIZE_672_INC 672
-
-#define GENLIST_TREESIZE_16_INC 16
-#define GENLIST_TREESIZE_20_INC 20
-
-// ----------- TEXT COLOR ---------------- //
-#define GENLIST_TEXT_COLOR_LIST_MAIN_TEXT_READ    124 124 124 255
-#define GENLIST_TEXT_COLOR_LIST_MAIN_TEXT_UNREAD  0 0 0 255
-#define GENLIST_TEXT_COLOR_LIST_MAIN_TEXT_FOCUS   249 249 249 255
-
-#define GENLIST_TEXT_COLOR_LIST_SUB_TEXT_DEFAULT  124 124 124 255
-#define GENLIST_TEXT_COLOR_LIST_SUB_TEXT_SETTINGS 42 137 194 204
-#define GENLIST_TEXT_COLOR_LIST_SUB_TEXT_FOCUS    249 249 249 255
-
-#define GENLIST_TEXT_COLOR_FLEXIBLE_TEXT_MAIN     0 0 0 255
-#define GENLIST_TEXT_COLOR_FLEXIBLE_TEXT_SUB      149 149 149 255
-
-#define GENLIST_TEXT_COLOR_EDITFIELD_TEXT         158 187 205 255
-#define GENLIST_TEXT_COLOR_EDITFIELD_TEXT_CURSOR  42 137 194 255
-
-#define GENLIST_TEXT_COLOR_MULTILINE_TEXT 124 124 124 255
-
-#define GENLIST_TEXT_COLOR_INDEX_LIST              29 100 149 255
-#define GENLIST_TEXT_COLOR_3LINE_MAIN_TEXT_01_READ 124 124 124 255
-#define GENLIST_TEXT_COLOR_3LINE_MAIN_TEXT_01_UNREAD 0 0 0 255
-#define GENLIST_TEXT_COLOR_3LINE_MAIN_TEXT_01_FOCUS 249 249 249 255
-
-#define GENLIST_TEXT_COLOR_3LINE_MAIN_TEXT_02 124 124 124 255
-#define GENLIST_TEXT_COLOR_3LINE_MAIN_TEXT_02_FOCUS 249 249 249 255
-
-#define GENLIST_TEXT_COLOR_3LINE_MAIN_TEXT_03 124 124 124 255
-#define GENLIST_TEXT_COLOR_3LINE_MAIN_TEXT_03_FOCUS 249 249 249 255
-
-#define GENLIST_TEXT_COLOR_CONVERTOR_STYLE 249 249 249 255
-#define GENLIST_TEXT_COLOR_CONVERTOR_STYLE_FOCUS 249 249 249 255
-
-#define GENLIST_TEXT_COLOR_UNREAD_EMAIL 0 0 0 255
-#define GENLIST_TEXT_COLOR_CONTENTS_TEXT 210 210 210 255
-#define GENLIST_TEXT_COLOR_NAME_TEXT 128 128 128 255
-#define GENLIST_TEXT_COLOR_NAME_TEXT_DIM 42 137 194 255
-#define GENLIST_TEXT_COLOR_LIST_BUBBLE_TEXT 249 249 249 255
-#define GENLIST_TEXT_COLOR_LIST_MESSAGE_TEXT 0 0 0 255
-
-#define GENLIST_TEXT_COLOR_BUBBLE_READ_MESSAGE 0 0 0 255
-#define GENLIST_TEXT_COLOR_BUBBLE_MESSAGE_TIME 0 0 0 255
-#define GENLIST_TEXT_COLOR_BUBBLE_SENT_MESSAGE 0 0 0 255
-#define GENLIST_TEXT_COLOR_BUBBLE_SOS_MESSAGE 192 23 23 255
-#define GENLIST_TEXT_COLOR_BUBBLE_MESSAGE_DATE 128 128 128 255
-#define GENLIST_TEXT_COLOR_BUBBLE_LINK_MESSAGE 34 129 157 255
-#define GENLIST_TEXT_COLOR_BUBBLE_MESSAGE_FAILED 211 0 0 255
-#define GENLIST_TEXT_COLOR_BUBBLE_READ_MESSAGE_NAME 57 166 215 255
-#define GENLIST_TEXT_COLOR_BUBBLE_MESSAGE_HELP 146 146 146 255
-#define GENLIST_TEXT_COLOR_SWEEP_STYLE 118 118 118 255
-
-#define GENLIST_TEXT_COLOR_STYLE_NAME_TEXT "#808080FF"
-#define GENLIST_TEXT_COLOR_STYLE_LIST_MAIN_TEXT_READ "#000000FF"
-#define GENLIST_TEXT_COLOR_STYLE_LIST_SUB_TEXT "#7C7C7CFF"
-#define GENLIST_TEXT_COLOR_LIST_MESSAGE_TEXT_STYLE "#000000FF"
-#define GENLIST_PART_FONT_FLEXIBLE_TEXT_MAIN_STYLE_COLOR_INC "#000000FF"
-#define GENLIST_PART_FONT_FLEXIBLE_TEXT_SUB_STYLE_COLOR_INC "#959595FF"
-#define GENLIST_PART_FONT_MULTILINE_TEXT_STYLE_COLOR_INC "#959595FF"
-#define GENLIST_PART_FONT_3LINE_MAIN_TEXT_READ_STYLE_COLOR_INC "#7C7C7CFF"
-#define GENLIST_PART_FONT_3LINE_MAIN_TEXT_UNREAD_STYLE_COLOR_INC "#000000FF"
-#define GENLIST_PART_FONT_3LINE_MAIN_TEXT_FOCUS_STYLE_COLOR_INC "#F9F9F9FF"
-#define GENLIST_PART_FONT_3LINE_MAIN_TEXT_2_STYLE_COLOR_INC "#7C7C7CFF"
-#define GENLIST_PART_FONT_3LINE_MAIN_TEXT_2_FOCUS_STYLE_COLOR_INC "#F9F9F9FF"
-#define GENLIST_PART_FONT_HELP_TEXT_STYLE_COLOR_INC "#7C7C7CFF"
-#define GENLIST_TEXT_COLOR_LIST_BUBBLE_TEXT_STYLE "#F9F9F9FF"
-
-#define GENLIST_PART_DISCLIP_COLOR_INC 255 255 255 110 // alpha was 64 [???]
-#define GENLIST_PART_BG_COLOR_INC 236 240 242 255
-#define GENLIST_PART_LIST_BG_COLOR_INC 249 249 249 255
-#define GENLIST_PART_LIST_LINE_COLOR_INC 169 169 169 255
-#define GENLIST_PART_LIST_PRESS_COLOR_INC 42 137 194 255
-#define GENLIST_PART_TEXT_PRESS_COLOR_INC 249 249 249 255
-#define GENLIST_PART_EXPANDABLE_2ND_DEPTH_BG_COLOR_INC 215 225 232 255
-#define GENLIST_PART_EXPANDABLE_3ND_DEPTH_BG_COLOR_INC 215 225 232 255
-#define GENLIST_PART_EDIT_SELECT_ALL_BG_COLOR_INC 215 225 232 255
-#define GENLIST_PART_EDIT_REORDER_BG_COLOR_INC 215 225 232 255
-#define GENLIST_PART_EDIT_1PIXEL_LINE_COLOR_INC 169 169 169 255
-#define GENLIST_PART_BUBBLE_DATE_BG_COLOR_INC 56 69 90 255
-#define GENLIST_PART_BUBBLE_1PIXEL_LINE_COLOR_INC 153 153 153 255
-//
-// Remove this, use GENLIST_PART_BASE_EVENT_OFF instead
-#define GENLIST_PART_INDEX_LIST_BASE_EVENT_INC \
-         part { name: "base_event";\
-            type: RECT;\
-            repeat_events: 0;\
-            description { state: "default" 0.0;\
-               color: 0 0 0 0;\
-            }\
-         }
-#define GENLIST_PART_INDEX_LIST_BASE_IMAGE_INC \
-         part { name: "base_image";\
-            repeat_events: 1;\
-            description { state: "default" 0.0;\
-               rel1.to: "rect";\
-               rel2.to: "rect";\
-               image {\
-                  normal: "00_index list_bg.png";\
-                  border: 0 0 2 2;\
-               }\
-            }\
-         }
-
-#define GENLIST_PART_TEXT_PRESS_STYLE_COLOR_INC "#F9F9F9FF"
-#define GENLIST_PART_MATCH_TAG_COLOR_INC "+ color=#3F8DAD"
-
-#define GENLIST_DIALOGUE_GT_TEXT_COLOR 102 102 102 255
-#define GENLIST_DIALOGUE_FONT_EDIT_MODE_TEXT_01_COLOR_INC 100 100 100 255
-#define GENLIST_DIALOGUE_FONT_EDIT_MODE_TEXT_01_FOCUS_COLOR_INC 249 249 249 255
-#define GENLIST_DIALOGUE_FONT_EDIT_MODE_TEXT_02_COLOR_INC 249 249 249 255
-#define GENLIST_DIALOGUE_FONT_EDIT_MODE_TEXT_02_DIM_COLOR_INC 7 180 211 255
-#define GENLIST_DIALOGUE_FONT_EDIT_MODE_TEXT_02_FOCUS_COLOR_INC 249 249 249 255
-#define GENLIST_DIALOGUE_FONT_DETAIL_TEXT_MAIN_COLOR_INC 0 0 0 255
-#define GENLIST_DIALOGUE_FONT_DETAIL_TEXT_SUB_COLOR_INC 124 124 124 255
-#define GENLIST_DIALOGUE_FONT_APPS_NAME_COLOR_INC 0 0 0 255
-#define GENLIST_DIALOGUE_FONT_APPS_INC_COLOR_INC 124 124 124 255
-#define GENLIST_DIALOGUE_FONT_APPS_RATING_COLOR_INC 124 124 124 255
-#define GENLIST_DIALOGUE_FONT_APPS_PRICE_ORIGINAL_COLOR_INC 7 180 211 255
-#define GENLIST_DIALOGUE_FONT_APPS_PRICE_SALE_COLOR_INC 221 134 21 255
-#define GENLIST_DIALOGUE_FONT_APPS_PRICE_FREE_COLOR_INC 7 180 211 255
-#define GENLIST_DIALOGUE_FONT_PASSWORD_TITLE_COLOR_INC 124 124 124 255
-#define GENLIST_DIALOGUE_FONT_PASSWORD_INPUT_TEXT_COLOR_INC 0 0 0 255
-#define GENLIST_DIALOGUE_FONT_DETAIL_WORD_COLOR_INC 249 249 249 255
-#define GENLIST_DIALOGUE_FONT_DETAIL_PRONUNCIATION_COLOR_INC 7 180 211 255
-#define GENLIST_DIALOGUE_FONT_DETAIL_NATION_COLOR_INC 146 146 146 255
-#define GENLIST_DIALOGUE_FONT_DETAIL_INFO_01_COLOR_INC 249 249 249 255
-#define GENLIST_DIALOGUE_FONT_DETAIL_INFO_02_COLOR_INC 146 146 146 255
-
-#define GENLIST_DIALOGUE_GROUP_BG_COLOR_INC 236 240 242 255
-#define GENLIST_DIALOGUE_GROUP_LIST_BG_COLOR_INC 249 249 249 255
-#define GENLIST_DIALOGUE_GROUP_LEFT_BG_COLOR_INC 108 168 199 255
-#define GENLIST_DIALOGUE_1PIXEL_LINE_COLOR_INC 142 154 163 255
-#define GENLIST_DIALOGUE_ICON_1PIXEL_LINE_COLOR_INC 68 68 68 255
-#define GENLIST_DIALOGUE_PHOTO_ID_1PIXEL_LINE_COLOR_INC 68 68 68 255
-#define GENLIST_DIALOGUE_BG_IMAGE_COLOR_INC 236 240 242 255
-
-#define GENLIST_SWEEP_BG_COLOR_INC 236 240 242 255
-
-#define GENLIST_PART_EMAIL_MSGCOUNT_TEXT_COLOR_INC 255 255 255 255
-#define GENLIST_PART_TEXTBLOCK_STYLE_COLOR_INC "#a8a8a8FF"
-#define GENLIST_PART_TEXTBLOCK_STYLE_SELECTED_COLOR_INC "#646464"
-#define GENLIST_PART_TEXTBLOCK_READ_STYLE_COLOR_INC "#9E9E9EFF"
-#define GENLIST_PART_TEXTBLOCK_UNREAD_STYLE_COLOR_INC "#000000FF"
-#define GENLIST_PART_TEXTBLOCK_SUB_STYLE_COLOR_INC "#a8a8a8"
-#define GENLIST_PART_TEXTBLOCK_URGENCY_READ_STYLE_COLOR_INC "#AB5252"
-#define GENLIST_PART_TEXTBLOCK_URGENCY_UNREAD_STYLE_COLOR_INC "#CF2525"
-
-#define GENLIST_HEIGHT_1LINE 113  // excep bottom 1 line
-//FIXME: Change from GENLIST_TREESIZE_DEFAULT to below macro
-#define GENLIST_TREESIZE_DEFAULT 32
-
-#define GENLIST_PADDING_SIZE_DEFAULT   16
-#define GENLIST_PADDING_SIZE_LEFT      GENLIST_PADDING_SIZE_DEFAULT
-#define GENLIST_PADDING_SIZE_RIGHT     GENLIST_PADDING_SIZE_DEFAULT
-#define GENLIST_PADDING_SIZE_TOP       10
-#define GENLIST_PADDING_SIZE_BOTTOM    10
-
-#define GENLIST_TEXT2_WIDTH_MIN 150
-
-#define GENLIST_SIZE_PASSWORD_ICON 114
-
-#define GENLIST_TEXT_BTN_HEIGHT   72
-#define GENLIST_ICON_SMALL_SIZE   32
-#define GENLIST_ICON_MEDIUM_SIZE  48
-#define GENLIST_ICON_BIG_SIZE     64
-#define GENLIST_ICON_ONOFF_HEIGHT 80
-#define GENLIST_ICON_ONOFF_WIDTH  60
-#define GENLIST_ICON_CHECK_SIZE   60
-#define GENLIST_ICON_RADIO_SIZE   60
-
-// Group Title
-#define GENLIST_GT_PAD_T_H 36
-#define GENLIST_GT_PAD_B_H 10
-#define GENLIST_GT_TEXT_H  36
-#define GENLIST_GT_PAD_L_W 16
-#define GENLIST_GT_PAD_R_W 36
-#define GENLIST_GT_PAD_M_W 16
-#define GENLIST_GT_H       GENLIST_GT_PAD_T_H + GENLIST_GT_PAD_B_H + GENLIST_GT_TEXT_H
-
-#define GENLIST_DIALOGUE_SEPARATOR_DEFAULT_HEIGHT 40
-
-
-#define GENLIST_DESCRIPT_DEFAULT( left, right, top, bottom ) \
-      description { state: "default" 0.0;\
-         rel1 { \
-            relative: 1 1; \
-            to_x: left; \
-            to_y: top; \
-         }\
-         rel2 {\
-            relative: 0 0;\
-            to_x: right;\
-            to_y: bottom;\
-         }\
-
-#define GENLIST_DESCRIPT_DOT_LT( left, top ) \
-      description { state: "default" 0.0;\
-         align: 0 0;\
-         rel1 { \
-            relative: 1 1; \
-            to_x: left; \
-            to_y: top; \
-         }\
-         rel2 {\
-            relative: 1 1;\
-            to_x: left;\
-            to_y: top;\
-         }\
-
-#define GENLIST_DESCRIPT_DOT_RT( right, top ) \
-      description { state: "default" 0.0;\
-         align: 1 0;\
-         rel1 { \
-            relative: 0 1; \
-            to_x: right; \
-            to_y: top; \
-         }\
-         rel2 {\
-            relative: 0 1;\
-            to_x: right;\
-            to_y: top;\
-         }\
-
-#define GENLIST_DESCRIPT_DOT_LB( left, bottom ) \
-      description { state: "default" 0.0;\
-         align: 0 1;\
-         rel1 { \
-            relative: 1 0; \
-            to_x: left; \
-            to_y: bottom; \
-         }\
-         rel2 {\
-            relative: 1 0;\
-            to_x: left;\
-            to_y: bottom;\
-         }\
-
-#define GENLIST_DESCRIPT_DOT_RB( right, bottom ) \
-      description { state: "default" 0.0;\
-         align: 1 1;\
-         rel1 { \
-            relative: 0 0; \
-            to_x: right; \
-            to_y: bottom; \
-         }\
-         rel2 {\
-            relative: 0 0;\
-            to_x: right;\
-            to_y: bottom;\
-         }\
-
-#define GENLIST_DESCRIPT_LINE_LEFT( left, top, bottom ) \
-      description { state: "default" 0.0;\
-         align: 0 0.5;\
-         rel1 { \
-            relative: 1 1; \
-            to_x: left; \
-            to_y: top; \
-         }\
-         rel2 {\
-            relative: 1 0;\
-            to_x: left;\
-            to_y: bottom;\
-         }\
-
-#define GENLIST_DESCRIPT_LINE_RIGHT( right, top, bottom ) \
-      description { state: "default" 0.0;\
-         align: 1 0.5;\
-         rel1 { \
-            relative: 0 1; \
-            to_x: right; \
-            to_y: top; \
-         }\
-         rel2 {\
-            relative: 0 0;\
-            to_x: right;\
-            to_y: bottom;\
-         }\
-
-#define GENLIST_DESCRIPT_LINE_TOP( left,  right, top ) \
-      description { state: "default" 0.0;\
-         align: 0.5 0;\
-         rel1 { \
-            relative: 1 1; \
-            to_x: left; \
-            to_y: top; \
-         }\
-         rel2 {\
-            relative: 0 1;\
-            to_x: right;\
-            to_y: top;\
-         }\
-
-#define GENLIST_DESCRIPT_LINE_BOTTOM( left,  right, bottom ) \
-      description { state: "default" 0.0;\
-         align: 0.5 1;\
-         rel1 { \
-            relative: 1 0; \
-            to_x: left; \
-            to_y: bottom; \
-         }\
-         rel2 {\
-            relative: 0 0;\
-            to_x: right;\
-            to_y: bottom;\
-         }\
-
-#define GENLIST_PADDING(NAME, SIZE_X, SIZE_Y, DESCRIPT) \
-       part { name: NAME; \
-            type: RECT; \
-            scale: 1; \
-            DESCRIPT \
-               min: SIZE_X SIZE_Y; \
-               fixed: 1 1; \
-               visible: 0; \
-            }\
-       } \
-
-
-// *************** Function Macro ******************* //
-#define GENLIST_PART_BASE( param_item_height ) \
-         part { name: "base"; \
-            type: RECT; \
-            repeat_events: 1; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 0 param_item_height; \
-               color: GENLIST_PART_BG_COLOR_INC; \
-            } \
-         }
-
-#define GENLIST_PART_BASE_BG( param_item_height ) \
-         part { name: "base"; \
-            type: RECT; \
-            repeat_events: 1; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 0 param_item_height; \
-               color: GENLIST_PART_BG_COLOR_INC; \
-            } \
-         }
-
-/// This block events
-#define GENLIST_PART_BASE_EVENT_OFF \
-         part { name: "base_event";\
-            type: RECT;\
-            repeat_events: 0;\
-            description { state: "default" 0.0;\
-               color: 0 0 0 0;\
-            }\
-         }
-
-#define GENLIST_PART_BG \
-         part { name: "bg"; \
-            type: RECT; \
-            clip_to: "disclip"; \
-            mouse_events: 0; \
-            description { state: "default" 0.0; \
-               color: GENLIST_PART_BG_COLOR_INC; \
-            } \
-            description { state: "hide" 0.0; \
-               inherit: "default" 0.0; \
-               rel1 { relative: 0.025 0.0; } \
-               rel2 { relative: 1.025 1.0; } \
-            } \
-            description { state: "hide" 0.1;  \
-               inherit: "default" 0.0; \
-               rel1 { relative: 0.13 0.0; } \
-               rel2 { relative: 1.13 1.0; } \
-            } \
-            description { state: "hide" 0.2; \
-               inherit: "default" 0.0; \
-               rel1 { relative: 0.5 0.0; } \
-               rel2 { relative: 1.5 1.0; } \
-            } \
-            description { state: "hide" 0.3; \
-               inherit: "default" 0.0; \
-               rel1 { relative: 1.0 0.0; } \
-               rel2 { relative: 2.0 1.0; } \
-            } \
-         }
-
-#define GENLIST_PART_BG_IMAGE \
-         part { name: "bg_image"; \
-            type: RECT; \
-            clip_to: "disclip"; \
-            mouse_events: 0; \
-            description { state: "default" 0.0; \
-               color: GENLIST_PART_LIST_BG_COLOR_INC; \
-            } \
-            description { state: "selected" 0.0; \
-               inherit: "default" 0.0; \
-               color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
-            } \
-         }
-
-#define GENLIST_PART_BOTTOM_LINE \
-         part { name: "bottom_line"; \
-            type: RECT; \
-            mouse_events: 0; \
-            description { state: "default" 0.0; \
-               min: 0 1; \
-               fixed: 0 1; \
-               visible: 1; \
-               color: GENLIST_PART_LIST_LINE_COLOR_INC; \
-               rel1 { \
-                  relative: 0.0 1.0; \
-                  offset: 0 -1; \
-               } \
-            } \
-         }
-
-#define GENLIST_PART_BOTTOM_EFFECT_LINE \
-         part { name: "bottom_line"; \
-            type: RECT; \
-            mouse_events: 0; \
-            description { state: "default" 0.0; \
-               min: 0 1; \
-               fixed: 0 1; \
-               visible: 1; \
-               color: GENLIST_PART_LIST_LINE_COLOR_INC; \
-               rel1 { \
-                  relative: 0.0 1.0; \
-                  offset: 0 -1; \
-               } \
-            } \
-            GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
-            GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
-         }
-
-#define GENLIST_PART_PADDING_TOP( param_padding_size ) \
-       part { name: "elm.padding.top"; \
-            type: RECT; \
-            scale: 1; \
-            description { \
-               state: "default" 0.0; \
-               min: 0 param_padding_size; \
-               fixed: 0 1; \
-               visible: 0; \
-               rel2.relative: 1.0 0.0; \
-               align: 0.0 0.0; \
-            } \
-         }
-
-#define GENLIST_PART_PADDING_TEXT_TOP( param_padding_size ) \
-       part { name: "elm.padding.text.top"; \
-            type: RECT; \
-            scale: 1; \
-            description { \
-               state: "default" 0.0; \
-               min: 0 param_padding_size; \
-               fixed: 0 1; \
-               visible: 0; \
-               rel2.relative: 1.0 0.0; \
-               align: 0.0 0.0; \
-            } \
-         }
-
-#define GENLIST_PART_PADDING_BOTTOM( param_padding_size ) \
-       part { name: "elm.padding.bottom"; \
-            type: RECT; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 0 param_padding_size; \
-               fixed: 0 1; \
-               visible: 0; \
-               rel1.relative: 0.0 1.0; \
-               align: 1.0 1.0; \
-            } \
-         }
-
-#define GENLIST_PART_PADDING_LEFT( param_padding_size ) \
-         part { name: "elm.padding.left"; \
-            type: RECT; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: param_padding_size 0; \
-               fixed: 1 0; \
-               visible: 0; \
-               rel2.relative: 0.0 1.0; \
-               align: 0.0 0.0; \
-            } \
-         }
-
-#define GENLIST_PART_PADDING_RIGHT( param_padding_size ) \
-       part { name: "elm.padding.right"; \
-            type: RECT; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: param_padding_size 0; \
-               fixed: 1 0; \
-               visible: 0; \
-               rel1.relative: 1.0  0.0; \
-               align: 1.0 0.0; \
-            } \
-         }
-
-#define GENLIST_DIALOGUE_PART_BASE( param_item_height ) \
-         part { name: "base_part"; \
-            type: RECT; \
-            clip_to: "disclip"; \
-            repeat_events: 1; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 0 param_item_height; \
-               color: LAYOUT_GROUP_LIST_BG_COLOR_INC; \
-            } \
-         }
-
-// FIXME: Use above instead
-#define GENLIST_PART_DIALOGUE_BASE( param_item_height ) \
-         part { name: "base"; \
-            type: RECT; \
-            clip_to: "disclip"; \
-            repeat_events: 1; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 0 param_item_height; \
-               color: LAYOUT_GROUP_LIST_BG_COLOR_INC; \
-            } \
-         }
-
-#define GENLIST_PART_DIALOGUE_BG_IMAGE \
-         part { name: "bg_image"; \
-            type: RECT; \
-            clip_to: "disclip"; \
-            mouse_events: 0; \
-            description { state: "default" 0.0; \
-               color: GENLIST_DIALOGUE_BG_IMAGE_COLOR_INC; \
-            } \
-            description { state: "selected" 0.0; \
-               inherit: "default" 0.0; \
-               color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
-            } \
-         }
-
-#define GENLIST_PART_DIALOGUE_ITEM \
-         part { name: "elm.rect.dialogue"; \
-            type: RECT; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: GENLIST_PADDING_12_INC 0; \
-               fixed: 1 0; \
-               color: GENLIST_DIALOGUE_GROUP_LEFT_BG_COLOR_INC; \
-               rel2.relative: 0.0 1.0; \
-               align: 0.0 0.0; \
-            } \
-         }
-
-#define GENLIST_PART_DIALOGUE_RIGHT_LINE \
-         part { name: "elm.rect.dialogue.right.line"; \
-            type: RECT; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 1 0; \
-               fixed: 1 0; \
-               visible: 1; \
-               rel1 { \
-                  relative: 1.0  0.0; \
-                  offset: -1 0; \
-               } \
-               align: 1.0 0.0; \
-               color: GENLIST_PART_LIST_LINE_COLOR_INC; \
-            } \
-         }
-
-#define GENLIST_PART_DIALOGUE_EXPANDABLE_ITEM \
-         part { name: "elm.rect.dialogue"; \
-            type: RECT; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: GENLIST_PADDING_12_INC 0; \
-               fixed: 1 0; \
-               color: GENLIST_DIALOGUE_GROUP_LEFT_BG_COLOR_INC; \
-               rel2.relative: 0.0 1.0; \
-               align: 0.0 0.0; \
-            } \
-            GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
-            GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
-         }
-
-#define GENLIST_PART_SWALLOW_END( param_padding_size ) \
-         part { name: "elm.padding.left.swallow.end";\
-            clip_to: "disclip"; \
-            type: RECT;\
-            scale: 1;\
-            description { state: "default" 0.0;\
-               min: param_padding_size 0;\
-               fixed: 1 0;\
-               visible: 0; \
-               rel1.to_x: "elm.swallow.end";\
-               rel2 {\
-                  relative: 0.0  1.0;\
-                  to_x: "elm.swallow.end";\
-               }\
-               align: 1.0 0.5;\
-            }\
-         }\
-         part { name: "elm.swallow.end";\
-            clip_to: "disclip"; \
-            type: SWALLOW;\
-            scale: 1;\
-            description { state: "default" 0.0;\
-               fixed: 1 0;\
-               align: 1.0 0.5;\
-               rel1.to_x: "elm.padding.right";\
-               rel2 {\
-                  relative: 0.0  1.0;\
-                  to_x: "elm.padding.right";\
-               }\
-            }\
-         }
-
-// When rotating, sometimes item size is expaned.
-#define GENLIST_PART_DISCLIP \
-        part { name: "disclip"; \
-            type: RECT; \
-            description { state: "default" 0.0; \
-            } \
-            description { state: "disabled" 0.0; \
-               inherit: "default" 0.0; \
-               color: GENLIST_PART_DISCLIP_COLOR_INC; \
-            } \
-         }
-
-#define GENLIST_EXPANDABLE_PART_PERSPECTIVE_POINT() \
-               part { name: "point"; \
-                       type: RECT; \
-                       scale: 1; \
-                        description { \
-                                state: "default" 0.0; \
-                                color: 0 0 0 0; \
-                                rel1 { relative: 0.0 0.0; } \
-                                rel2 { relative: 1.0 0.0; } \
-                        } \
-                }
-
-#define GENLIST_PART_MAP_START( param_x, param_y, param_z ) \
-               description { state: "map_transition" 0.0; \
-                   inherit: "default" 0.0; \
-                   color: 50 50 50 100; \
-                   map { \
-                      perspective: "point"; \
-                      on: 1; \
-                      smooth: 1; \
-                      perspective_on: 1; \
-                      backface_cull: 1; \
-                      rotation { \
-                         center: "point"; \
-                         x: param_x; \
-                         y: param_y; \
-                         z: param_z; \
-                      } \
-                  } \
-                } \
-                description { \
-                        state: "hide" 0.0; \
-                        inherit: "default" 0.0; \
-                        visible: 0; \
-                }
-
-#define GENLIST_PART_MAP_FINISH( param_x, param_y, param_z ) \
-                description { \
-                        state: "map_rotate" 0.0; \
-                        inherit: "default" 0.0; \
-                        map { \
-                                perspective: "point"; \
-                                on: 1; \
-                                smooth: 1; \
-                                perspective_on: 1; \
-                                backface_cull: 1; \
-                                rotation { \
-                                        center: "point"; \
-                                        x: param_x; \
-                                        y: param_y; \
-                                        z: param_z; \
-                                } \
-                       } \
-               } \
-
-#define GENLIST_PART_MAP_BASE( param_item_height ) \
-         part { name: "base"; \
-            type: RECT; \
-            repeat_events: 1; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 0 param_item_height; \
-               color: GENLIST_PART_BG_COLOR_INC; \
-            } \
-            GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
-            GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
-         }
-
-#define GENLIST_EXPANDABLE_PART_BASE( GE_HEIGHT , GE_COLOR ) \
-         part { name: "base"; \
-            type: RECT; \
-            repeat_events: 1; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 0 GE_HEIGHT; \
-               color: GE_COLOR; \
-            } \
-            description { state: "selected" 0.0; \
-               inherit: "default" 0.0; \
-               color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
-            } \
-            GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
-            GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
-         }
-
-/* XXX: refactor expandable edc first.
-        and use GENLIST_EXPANDABLE_PART_BASE_NEW as GENLIST_EXPANDABLE_PART_BASE.
-*/
-#define GENLIST_EXPANDABLE_PART_BASE_NEW( GE_HEIGHT , GE_COLOR ) \
-         part { name: "base"; \
-            type: RECT; \
-            repeat_events: 1; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 0 GE_HEIGHT; \
-               color: GE_COLOR; \
-            } \
-            description { state: "selected" 0.0; \
-               inherit: "default" 0.0; \
-               color: GENLIST_PART_LIST_PRESS_COLOR_INC; \
-            } \
-         }
-
-#define GENLIST_PROGRAM_MAP_ROTATE_EXPAND_START() \
-                name: "rotaion_transition"; \
-                signal: "flip_item"; \
-                action: STATE_SET "map_transition" 0.0; \
-                after: "rotation";
-
-#define GENLIST_PROGRAM_MAP_ROTATE_EXPAND_FINISH( second ) \
-                name: "rotation"; \
-                action: STATE_SET "map_rotate" 0.0; \
-                transition: LINEAR second; \
-                after: "rotation_end";
-
-#define GENLIST_PROGRAM_MAP_EXPAND_END() \
-                name: "rotation_end"; \
-                action: STATE_SET "default" 0.0;
-
-#define GENLIST_PROGRAM_MAP_ROTATE_CONTRACT_START() \
-                name: "rotation_transition2"; \
-                signal: "elm,state,contract_flip"; \
-                action: STATE_SET "map_rotate" 0.0; \
-                after: "rotation2";
-
-#define GENLIST_PROGRAM_MAP_ROTATE_CONTRACT_FINISH( second ) \
-                name: "rotation2"; \
-                action: STATE_SET "map_transition" 0.0; \
-                transition: LINEAR second; \
-                after: "rotation3";
-
-#define GENLIST_PROGRAM_MAP_CONTRACT_END() \
-                name: "rotation3"; \
-                action: STATE_SET "hide" 0.0;
-
-#define GENLIST_PART_EXPANDABLE2_NOSHADOW_BASE( param_item_height ) \
-         part { name: "base"; \
-            type: RECT; \
-            repeat_events: 1; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 0 param_item_height; \
-               color: GENLIST_PART_EXPANDABLE_2ND_DEPTH_BG_COLOR_INC; \
-            } \
-            GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
-            GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
-         }
-
-#define GENLIST_PART_EXPANDABLE_SWALLOW_PADDING \
-         part { name: "elm.swallow.pad"; \
-            type: SWALLOW; \
-            description { state: "default" 0.0; \
-               fixed: 1 0; \
-               align: 0.0 0.5; \
-               rel1 { \
-                  relative: 1.0 0.0;\
-                  to_x: "elm.padding.left"; \
-               } \
-               rel2.to_x: "elm.padding.left"; \
-            } \
-            GENLIST_PART_MAP_START(-90.0, 0.0, 0.0) \
-            GENLIST_PART_MAP_FINISH(0.0, 0.0, 0.0) \
-         } \
-
-#define GENLIST_PART_PADDING_LEFT_SLIDE( param_padding_size ) \
-         part { name: "elm.padding.left"; \
-            type: RECT; \
-            scale: 1; \
-            description { \
-               state: "default" 0.0; \
-               min: param_padding_size 0; \
-               fixed: 1 0; \
-               visible: 0; \
-               rel1 { relative: 0.0 0.0; to: "bg"; } \
-               rel2 { relative: 0.0 1.0; to: "bg"; } \
-               align: 0.0 0.0; \
-            } \
-         }
-
-/* only for demo */
-#define GENLIST_PART_BUTTON( param_name, param_text_name, param_text, param_left, param_right, param_top, param_bottom ) \
-       part { name: param_name; \
-         mouse_events: 1; \
-         description { state: "default" 0.0; \
-            visible: 1; \
-            rel1 { relative: param_left param_top; offset: 0 0; } \
-            rel2 { relative: param_right param_bottom; offset: -1 -1; } \
-            image { \
-               normal: "btn_normal.png"; \
-               border: 10 10 10 10; \
-               border_scale: 1; \
-            } \
-            image.middle: SOLID; \
-            fill.smooth: 0; \
-         } \
-         description { state: "selected" 0.0;  \
-            inherit: "default" 0.0;  \
-            image { \
-               normal: "btn_selected.png"; \
-            } \
-         } \
-      } \
-      part { name: param_text_name;  \
-         type: TEXT;  \
-         mouse_events: 0; \
-         scale: 1; \
-         description {  \
-            align: 0.0 0.0; \
-            state: "default" 0.0;  \
-            color: 0 0 0 255;  \
-            rel1 { relative: 0.0 0.0; to: param_name; } \
-            rel2 { relative: 1.0 1.0; to: param_name; } \
-            text {  \
-               text: param_text; \
-               font: "SLP:style=Roman"; \
-               size: 24;  \
-               min: 1 1;  \
-               align: 0.5 0.5;  \
-               text_class: "list_item"; \
-            }  \
-         }  \
-      }
-
-/* only for demo */
-#define GENLIST_PROGRAM_BUTTON( param_name_focused, param_name_normal, param_part_name ) \
-      program { name: param_name_focused; \
-         source: param_part_name; \
-         signal: "mouse,down,1"; \
-         action:  STATE_SET "selected" 0.0;  \
-         target: param_part_name; \
-      } \
-      program { name: param_name_normal; \
-         source: param_part_name; \
-         signal: "mouse,up,1"; \
-         action:  STATE_SET "default" 0.0;  \
-         target: param_part_name; \
-      }
-
-#define GENLIST_PROGRAM_SLIDE_WITH_AFTER( param_name, param_state, param_next ) \
-      program { name: param_name; \
-         action:  STATE_SET "hide" param_state; \
-         target: "bg"; \
-         transition: LINEAR 0.3; \
-         after: param_next; \
-      }
-
-#define GENLIST_PROGRAM_SLIDE( param_name, param_state_name, param_state_value ) \
-      program { name: param_name; \
-         action:  STATE_SET param_state_name param_state_value; \
-         target: "bg"; \
-         transition: LINEAR 0.3; \
-      }
-
-#define DESC_FLIP_IMAGE( param_state_value, param_image_file_name ) \
-      description { state: "flipping" param_state_value; \
-         inherit: "default" 0.0; \
-         image { normal: param_image_file_name; } \
-      }
-
-#define DESC_TEXT_HIDE( param_state_value ) \
-   description { state: "hide" param_state_value; \
-      inherit: "default" 0.0; \
-      color: 0 0 0 (255*(1-param_state_value/0.20)); \
-   }
-
-#define GENLIST_EDIT_PART_BASE( param_item_height ) \
-         part { name: "base"; \
-            type: RECT; \
-            repeat_events: 0; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               min: 0 param_item_height; \
-               color: 0 0 0 0; \
-            } \
-         }
-
-#define GENLIST_PART_FLIP \
-         part { name: "elm.flip.icon"; \
-            clip_to: "disclip"; \
-            type: SWALLOW; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               visible: 0; \
-               fixed: 1 1; \
-               align: 1 0; \
-               min: 80 0; \
-               rel1 { \
-                  relative: 0.0  0.0; \
-                  to_x: "elm.padding.right"; \
-               } \
-               rel2 { \
-                  relative: 0.0  1.0; \
-                  to_x: "elm.padding.right"; \
-               } \
-            } \
-            description { state: "flip_enabled" 0.0; \
-               inherit: "default" 0.0; \
-               visible: 1; \
-            } \
-         } \
-         part { name: "elm.flip.content"; \
-            clip_to: "disclip"; \
-            type: SWALLOW; \
-            scale: 1; \
-            description { state: "default" 0.0; \
-               visible: 0; \
-               fixed: 1 1; \
-               rel1 { \
-                  relative: 1.0  0.5; \
-                  to_x: "elm.padding.left"; \
-               } \
-               rel2 { \
-                  relative: 0.0  0.5; \
-                  to_x: "elm.flip.icon"; \
-               } \
-            } \
-            description { state: "flip_enabled" 0.0; \
-               inherit: "default" 0.0; \
-               visible: 1; \
-            } \
-         }
-
-#define GENLIST_DESCRIPTION_INVISIBLE_SELECTED \
-            description { state: "selected" 1.0; \
-               inherit: "default" 0.0; \
-               visible: 0; \
-            }
-
-#define GENLIST_DESCRIPTION_FLIP_ENABLED \
-            description { state: "flip_enabled" 0.0; \
-               inherit: "default" 0.0; \
-               visible: 0; \
-            }
-
-#define GENLIST_PROGRAM_SCRIPT_FLIP_SELECT_1TEXT \
-            script { \
-               new st[31]; \
-               new Float:vl; \
-               get_state(PART:"elm.text", st, 30, vl); \
-               set_state(PART:"bg_image", "selected", 0.0); \
-               if (!strcmp(st, "flip_enabled")) \
-                  set_state(PART:"elm.text", "selected", 1.0); \
-               else \
-                  set_state(PART:"elm.text", "selected", 0.0); \
-            }
-
-#define GENLIST_PROGRAM_SCRIPT_FLIP_SELECT_2TEXT \
-            script { \
-               new st[31]; \
-               new Float:vl; \
-               get_state(PART:"elm.text.1", st, 30, vl); \
-               set_state(PART:"bg_image", "selected", 0.0); \
-               if (!strcmp(st, "flip_enabled")) { \
-                  set_state(PART:"elm.text.1", "selected", 1.0); \
-                  set_state(PART:"elm.text.2", "selected", 1.0); \
-               } \
-               else { \
-                  set_state(PART:"elm.text.1", "selected", 0.0); \
-                  set_state(PART:"elm.text.2", "selected", 0.0); \
-               } \
-            }
-
-#define GENLIST_PROGRAM_SCRIPT_FLIP_SELECT_3TEXT \
-            script { \
-               new st[31]; \
-               new Float:vl; \
-               get_state(PART:"elm.text.1", st, 30, vl); \
-               set_state(PART:"bg_image", "selected", 0.0); \
-               if (!strcmp(st, "flip_enabled")) { \
-                  set_state(PART:"elm.text.1", "selected", 1.0); \
-                  set_state(PART:"elm.text.2", "selected", 1.0); \
-                  set_state(PART:"elm.text.3", "selected", 1.0); \
-               } \
-               else { \
-                  set_state(PART:"elm.text.1", "selected", 0.0); \
-                  set_state(PART:"elm.text.2", "selected", 0.0); \
-                  set_state(PART:"elm.text.3", "selected", 0.0); \
-               } \
-            }
-
-#define GENLIST_PROGRAM_FLIP_1TEXT \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_1TEXT_1ICON \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text"; \
-            target: "elm.icon"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text"; \
-            target: "elm.icon"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_1TEXT_2ICON \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_1TEXT_3ICON \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.icon.3"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.icon.3"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_2TEXT \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_2TEXT_1ICON \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.icon"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.icon"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_2TEXT_2ICON \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-             target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_2TEXT_3ICON \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.icon.3"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.icon.3"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_3TEXT \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.text.3"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.text.3"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_3TEXT_1ICON \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.text.3"; \
-            target: "elm.icon"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.text.3"; \
-            target: "elm.icon"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_3TEXT_2ICON \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.text.3"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.text.3"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.flip.content"; \
-         }
-
-#define GENLIST_PROGRAM_FLIP_3TEXT_3ICON \
-         program { name: "flip_enabled"; \
-            signal: "elm,state,flip,enabled"; \
-            source: "elm"; \
-            action: STATE_SET "flip_enabled" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.text.3"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.icon.3"; \
-            target: "elm.flip.content"; \
-         } \
-         program { name: "flip_disabled"; \
-            signal: "elm,state,flip,disabled"; \
-            source: "elm"; \
-            action: STATE_SET "default" 0.0; \
-            target: "elm.text.1"; \
-            target: "elm.text.2"; \
-            target: "elm.text.3"; \
-            target: "elm.icon.1"; \
-            target: "elm.icon.2"; \
-            target: "elm.icon.3"; \
-            target: "elm.flip.content"; \
-         }
-
-/* genlist multisense macro - start */
-#define GENLIST_PROGRAM_AFTER_PLAY_BUTTON_PRESS \
-            after: "play_button_press";
-
-#define GENLIST_PROGRAM_PLAY_BUTTON_PRESS \
-         program { name: "play_button_press"; \
-            action: PLAY_SAMPLE "button-pressed" 1.0; \
-         }
-
-
-
-/* genlist multisense macro - end */
\ No newline at end of file
diff --git a/block/theme/email-block-theme.edc b/block/theme/email-block-theme.edc
deleted file mode 100755 (executable)
index a7d8e76..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Copyright 2012  Samsung Electronics Co., Ltd
- *
- * Licensed under the Flora License, Version 1.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.tizenopensource.org/license
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "email-block-theme-macro.edc"
-
-collections {
-
-       group { name: "segment_layout";
-               parts {
-                       part { name: "bg";
-                               type: RECT;
-                               mouse_events: 1;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       visible: 0;
-                               }
-                       }
-                       part { name: "segment";
-                               type: SWALLOW;
-                               mouse_events: 1;
-                               scale: 1;
-                               description {
-                                       state: "default" 0.0;
-                                       min: 219 42;
-                                       max: 780 42;
-                                       align: 0.5 0.5;
-                                       rel1 { relative: 0.0 0.0; to: "bg"; }
-                                       rel2 { relative: 1.0 1.0; to: "bg"; }
-                               }
-                       }
-               }
-       }
-
-
-       group { name: "elm/genlist/item/dialogue/email.2icon/default";
-               alias: "elm/genlist/item_odd/dialogue/email.2icon/default";
-               alias: "elm/genlist/item_compress/dialogue/email.2icon/default";
-               alias: "elm/genlist/item_compress_odd/dialogue/email.2icon/default";
-               alias: "elm/layout/dialogue/email.2icon";
-               data.item: "stacking" "above";
-               data.item: "selectraise" "on";
-               data.item: "contents" "elm.icon elm.icon2";
-               parts {
-                       GENLIST_PART_BASE( GENLIST_HEIGHT_1LINE )
-                       GENLIST_PART_DIALOGUE_BG_IMAGE
-                       GENLIST_PART_BOTTOM_LINE
-                       GENLIST_PART_PADDING_LEFT( GENLIST_PADDING_32_INC )
-                       GENLIST_PART_PADDING_RIGHT( GENLIST_PADDING_SIZE_RIGHT )
-                       GENLIST_PART_DIALOGUE_ITEM
-                       GENLIST_PART_DIALOGUE_RIGHT_LINE
-                       part { name: "elm.icon2";
-                               clip_to: "disclip";
-                               type: SWALLOW;
-                               scale: 1;
-                               description { state: "default" 0.0;
-                                       rel1 {
-                                               relative: 0.0 0.0;
-                                               to_x: "elm.padding.right";
-                                               offset: -80 0;
-                                       }
-                                       rel2 {
-                                               relative: 0.0 1.0;
-                                               to_x: "elm.padding.right";
-                                       }
-                                       align: 0.5 0.5;
-                               }
-                       }
-
-                       part { name: "elm.padding.icon2.left";
-                               clip_to: "disclip";
-                               type: RECT;
-                               scale: 1;
-                               description { state: "default" 0.0;
-                                       min: GENLIST_PADDING_16_INC 0;
-                                       fixed: 1 0;
-                                       rel1.to_x: "elm.icon2";
-                                       rel2 {
-                                               relative: 0.0 1.0;
-                                               to_x: "elm.icon2";
-                                       }
-                                       align: 1.0 0.0;
-                                       visible: 0;
-                               }
-                       }
-
-                       part { name: "elm.icon";
-                               clip_to: "disclip";
-                               type: SWALLOW;
-                               scale: 1;
-                               description { state: "default" 0.0;
-                                       rel1 {
-                                               relative: 1.0 0.0;
-                                               to_x: "elm.padding.left";
-                                       }
-                                       rel2 {
-                                               relative: 0.0 1.0;
-                                               to_x: "elm.padding.icon2.left";
-                                       }
-                                       align: 0.0 0.0;
-                               }
-                       }
-
-                       GENLIST_PART_DISCLIP
-               }
-               programs {
-                       program { name: "go_disabled";
-                               signal: "elm,state,disabled";
-                               source: "elm";
-                               action: STATE_SET "disabled" 0.0;
-                               target: "disclip";
-                       }
-                       program { name: "go_enabled";
-                               signal: "elm,state,enabled";
-                               source: "elm";
-                               action: STATE_SET "default" 0.0;
-                               target: "disclip";
-                       }
-               }
-       }
-
-}
index 2ed2473..13ec5ec 100755 (executable)
@@ -53,6 +53,7 @@ INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR})
 
 # install xml file & icon
 INSTALL(FILES ${CMAKE_EMAIL_BINARY_DIR}/${PKGNAME}.xml DESTINATION /opt/share/packages)
+INSTALL(FILES ${CMAKE_EMAIL_BINARY_DIR}/${PKGNAME}.account.xml DESTINATION /opt/share/account)
 INSTALL(FILES ${CMAKE_EMAIL_SOURCE_DIR}/${PKGNAME}.png DESTINATION ${ICONDIR})
 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/images DESTINATION ${RESDIR} FILES_MATCHING PATTERN "*.png")
 
diff --git a/main/org.tizen.email.account.xml b/main/org.tizen.email.account.xml
new file mode 100755 (executable)
index 0000000..9e327ea
--- /dev/null
@@ -0,0 +1,3 @@
+<account multiple="true" icon_path="/opt/apps/com.samsung.email/res/images/com.samsung.email.png">
+<capability>http://tizen.org/account/capability/email</capability>
+</account>
index e0bf92a..46ae85e 100755 (executable)
@@ -42,6 +42,7 @@ BuildRequires:  pkgconfig(drm-client)
 BuildRequires:  pkgconfig(status)
 BuildRequires:  pkgconfig(capi-media-metadata-extractor)
 BuildRequires:  pkgconfig(capi-media-image-util)
+BuildRequires:  pkgconfig(libxml-2.0)
 
 
 %description
@@ -113,12 +114,10 @@ ln -sf /usr/bin/ug-client /opt/ug/bin/email-composer-efl
 %{_ugdir}/lib/libug-email-composer-efl.so
 %{_ugdir}/lib/libug-email-viewer-efl.so
 %{_ugdir}/lib/libug-email-account-efl.so
-%{_ugdir}/lib/libug-email-block-efl.so
 %{_ugdir}/lib/libug-email-mailbox-efl.so
 %{_ugdir}/lib/libug-email-setting-efl.so
 %{_appdir}/org.tizen.email/res/edje/email-viewer-theme.edj
 %{_appdir}/org.tizen.email/res/edje/email-setting-theme.edj
-%{_appdir}/org.tizen.email/res/edje/email-block-theme.edj
 %{_appdir}/org.tizen.email/res/edje/email-account-theme.edj
 %{_appdir}/org.tizen.email/res/edje/email-effect-layout.edj
 %{_appdir}/org.tizen.email/res/edje/email-composer-view.edj
@@ -127,5 +126,7 @@ ln -sf /usr/bin/ug-client /opt/ug/bin/email-composer-efl
 %{_appdir}/org.tizen.email/res/images/*
 %{_appdir}/org.tizen.email/bin/email
 %{_appdir}/org.tizen.email/data/_email_default.html
+%{_appdir}/org.tizen.email/data/sp_list.xml
 %{_optdir}/share/packages/org.tizen.email.xml
+%{_optdir}/share/account/org.tizen.email.account.xml
 %{_optdir}/share/icons/default/small/org.tizen.email.png
index 00da175..ac69200 100755 (executable)
@@ -31,7 +31,7 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/common/include)
 
 INCLUDE(FindPkgConfig)
 pkg_check_modules(pkgs-setting REQUIRED ecore glib-2.0 gobject-2.0 elementary utilX vconf
-               appcore-efl email-service ui-gadget-1 bundle dlog edbus capi-appfw-application status)
+               appcore-efl email-service ui-gadget-1 bundle dlog edbus capi-appfw-application status libxml-2.0)
 
 FOREACH(flag ${pkgs-setting_CFLAGS})
        SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
@@ -65,4 +65,5 @@ ADD_DEPENDENCIES(${PROJECT_NAME} email-setting-theme.edj)
 
 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${UGDIR})
 INSTALL(FILES ${CMAKE_SETTING_BINARY_DIR}/email-setting-theme.edj DESTINATION ${EDJDIR})
+INSTALL(FILES ${CMAKE_SETTING_BINARY_DIR}/include/sp_list.xml DESTINATION ${DATADIR})
 
index 7631e46..9044387 100755 (executable)
@@ -19,6 +19,9 @@
 
 #include "email-setting-view.h"
 
+#include <libxml/xmlmemory.h>
+#include <libxml/parser.h>
+
 typedef void (*popup_cb) (void *data, Evas_Object *obj, void *event_info);
 
 typedef enum {
@@ -38,6 +41,9 @@ typedef enum {
 Evas_Object *setting_get_notify(struct viewdata *vd, char *header,
                char *content, int btn_num, char *btn1_lb, popup_cb resp_cb1,
                char *btn2_lb, popup_cb resp_cb2);
+Evas_Object *setting_get_notify_reuse(Evas_Object *notify, struct viewdata *vd, char *header,
+               char *content, int btn_num, char *btn1_lb, popup_cb resp_cb1,
+               char *btn2_lb, popup_cb resp_cb2);
 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);
@@ -59,6 +65,11 @@ void setting_edbus_event_receive(void *local_data, DBusMessage *message);
 void setting_delete_enter(char *string);
 char *setting_get_service_fail_type(int type);
 
+xmlDocPtr setting_create_xml_tree(const char *path);
+void setting_traverse_xml_node(xmlNode *a_node, int depth, void *data);
+void setting_cleanup_xml_parser(xmlDocPtr xml_source);
+void setting_dump_sp_desc(EmailSettingUGD *ugd);
+
 #endif                         /* __EMAIL_SETTING_UTILS_H__ */
 
 /* EOF */
index 684b4e6..a810d43 100755 (executable)
@@ -19,6 +19,7 @@
 
 #include <Elementary.h>
 #include <Ecore_IMF.h>
+#include <Ecore_X.h>
 #include <vconf.h>
 #include <E_DBus.h>
 #include <libintl.h>
@@ -28,6 +29,9 @@
 #include <bundle.h>
 #include <status.h>
 
+#include <libxml/xmlmemory.h>
+#include <libxml/parser.h>
+
 #include "email-types.h"
 #include "email-api.h"
 
@@ -57,6 +61,8 @@
 #define CBAR_ICON_ADD IMGDIR"/01_controlbar_icon_create_folder.png"
 #define TITLE_ICON_REFRESH IMGDIR"/M02_email_icon_title_refresh.png"
 
+#define SP_XML_PATH DATADIR"/sp_list.xml"
+
 typedef enum {
        HOTMAIL = 1,
        GMAIL,
@@ -65,6 +71,22 @@ typedef enum {
        OTHERS
 } AccountInfo;
 
+typedef struct sp_desc EmailSpDesc;
+struct sp_desc {
+       int id;
+       char *csc_code;
+       char *name;
+       char *name_str_id;
+       char *icon_path;
+       char *sending_address;
+       int sending_port;
+       int sending_security;
+       char *receiving_server_type;
+       char *receiving_address;
+       int receiving_port;
+       int receiving_security;
+};
+
 typedef struct ug_data EmailSettingUGD;
 struct ug_data {
        ui_gadget_h ug;
@@ -132,6 +154,8 @@ struct ug_data {
        Ecore_Timer *other_vc_timer;
        Ecore_Timer *edit_vc_timer;
        Ecore_Timer *del_timer;
+       Ecore_Timer *focus_timer;
+       Ecore_Timer *password_timer;
 
        Evas_Object *account_list_view;
        Evas_Object *setting_main_view;
@@ -143,6 +167,10 @@ struct ug_data {
        E_DBus_Connection *dbus_conn;
        E_DBus_Signal_Handler *signal_handler_network;
        E_DBus_Signal_Handler *signal_handler_storage;
+
+       xmlDocPtr xml_source;
+       EmailSpDesc *sp_list;
+       int sp_list_len;
 };
 
 #endif                         /* __EMAIL_SETTING_H__ */
diff --git a/setting/include/sp_list.xml b/setting/include/sp_list.xml
new file mode 100755 (executable)
index 0000000..82acdcf
--- /dev/null
@@ -0,0 +1,54 @@
+<sp_list>\r
+       <sp_desc csc_code="ALL">\r
+               <id>1</id>\r
+               <name>Google</name>\r
+               <name_str_id>IDS_COM_BODY_GOOGLE</name_str_id>\r
+               <icon>/opt/share/icons/default/small/M02_email_list_icon_gmail.png</icon>\r
+               <sending_address>smtp.gmail.com</sending_address>\r
+               <sending_port>465</sending_port>\r
+               <sending_security>0</sending_security>\r
+               <receiving_server_type>imap</receiving_server_type>\r
+               <receiving_address>imap.gmail.com</receiving_address>\r
+               <receiving_port>993</receiving_port>\r
+               <receiving_security>1</receiving_security>\r
+       </sp_desc>\r
+       <sp_desc csc_code="ALL">\r
+               <id>2</id>\r
+               <name>AOL</name>\r
+               <name_str_id>IDS_EMAIL_BODY_AOL</name_str_id>\r
+               <icon>/opt/share/icons/default/small/M02_email_list_icon_AOL.png</icon>\r
+               <sending_address>smtp.aol.com</sending_address>\r
+               <sending_port>465</sending_port>\r
+               <sending_security>1</sending_security>\r
+               <receiving_server_type>imap</receiving_server_type>\r
+               <receiving_address>imap.aol.com</receiving_address>\r
+               <receiving_port>143</receiving_port>\r
+               <receiving_security>0</receiving_security>\r
+       </sp_desc>\r
+       <sp_desc csc_code="ALL">\r
+               <id>3</id>\r
+               <name>Windows Live Hotmail</name>\r
+               <name_str_id>IDS_EMAIL_BODY_WINDOW_LIVE_HOTMAIL</name_str_id>\r
+               <icon>/opt/share/icons/default/small/M02_email_list_icon_hotmail.png</icon>\r
+               <sending_address>smtp.live.com</sending_address>\r
+               <sending_port>587</sending_port>\r
+               <sending_security>2</sending_security>\r
+               <receiving_server_type>pop</receiving_server_type>\r
+               <receiving_address>pop3.live.com</receiving_address>\r
+               <receiving_port>995</receiving_port>\r
+               <receiving_security>1</receiving_security>\r
+       </sp_desc>\r
+       <sp_desc csc_code="SKT">\r
+               <id>4</id>\r
+               <name>Yahoo</name>\r
+               <name_str_id>IDS_EMAIL_BODY_YAHOO_E_MAIL</name_str_id>\r
+               <icon>/opt/share/icons/default/small/M02_email_list_icon_YahooMail.png</icon>\r
+               <sending_address>smtp.mail.yahoo.co.kr</sending_address>\r
+               <sending_port>465</sending_port>\r
+               <sending_security>1</sending_security>\r
+               <receiving_server_type>pop</receiving_server_type>\r
+               <receiving_address>pop.mail.yahoo.co.kr</receiving_address>\r
+               <receiving_port>995</receiving_port>\r
+               <receiving_security>1</receiving_security>\r
+       </sp_desc>\r
+</sp_list>\r
index 60c8f81..7486884 100755 (executable)
@@ -74,6 +74,70 @@ Evas_Object *setting_get_notify(struct viewdata *vd, char *header,
        return notify;
 }
 
+Evas_Object *setting_get_notify_reuse(Evas_Object *notify, struct viewdata *vd, char *header,
+               char *content, int btn_num, char *btn1_lb, popup_cb resp_cb1,
+               char *btn2_lb, popup_cb resp_cb2)
+{
+       debug_log("");
+       Evas_Object *prev_content = NULL;
+       Evas_Object *prev_btn1 = NULL;
+       Evas_Object *prev_btn2 = NULL;
+
+       elm_object_part_text_set(notify, "title,text", "");
+
+       elm_object_text_set(notify, "");
+
+       prev_content = elm_object_content_unset(notify);
+       if (prev_content) {
+               evas_object_del(prev_content);
+       }
+
+       prev_btn1 = elm_object_part_content_unset(notify, "button1");
+       if (prev_btn1) {
+               evas_object_del(prev_btn1);
+       }
+
+       prev_btn2 = elm_object_part_content_unset(notify, "button2");
+       if (prev_btn2) {
+               evas_object_del(prev_btn2);
+       }
+
+       /*reset*/
+
+       if (header) {
+               elm_object_part_text_set(notify, "title,text", header);
+       }
+
+       if (content) {
+               elm_object_text_set(notify, content);
+       }
+
+       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_pb_notify(struct viewdata *vd, char *header,
                int btn_num, char *btn1_lb, popup_cb resp_cb1,
                char *btn2_lb, popup_cb resp_cb2)
@@ -774,4 +838,104 @@ char *setting_get_service_fail_type(int type)
        }
 }
 
+xmlDocPtr setting_create_xml_tree(const char *path)
+{
+       debug_log("");
+       xmlInitParser();
+
+       xmlDocPtr xml_source = NULL;
+       xml_source = xmlParseFile(path);
+
+       if (!xml_source)
+               debug_log("failed to parsing xml file");
+
+       return xml_source;
+}
+
+void setting_traverse_xml_node(xmlNode *a_node, int depth, void *data)
+{
+       debug_log("");
+       xmlNode *cur_node = NULL;
+       EmailSettingUGD *ugd = (EmailSettingUGD *)data;
+       static int i=0;
+       for (cur_node=a_node; cur_node; cur_node=cur_node->next) {
+               if (cur_node->type == XML_ELEMENT_NODE) {
+                       /*debug_log("Level%d Node\nName:%s", depth, cur_node->name);*/
+                       if (cur_node->properties != NULL) {
+                               struct _xmlAttr* pAttr=cur_node->properties;
+                               while (pAttr != NULL) {
+                                       /*debug_log("Property:%s=\"%s\"", pAttr->name, pAttr->children->content);*/
+                                       if (depth == 1 && i < ugd->sp_list_len && g_strcmp0("csc_code", (char *)pAttr->name) == 0)
+                                               ugd->sp_list[i].csc_code = g_strdup((char *)pAttr->children->content);
+                                       pAttr=pAttr->next;
+                               }
+                       }
+
+                       if (cur_node->children != NULL) {
+                               /*debug_log("Content:%s", cur_node->children->content);*/
+                               if (depth == 2 && i < ugd->sp_list_len) {
+                                       if (g_strcmp0("id", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].id = atoi((char *)cur_node->children->content);
+                                       } else if (g_strcmp0("name", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].name = g_strdup((char *)cur_node->children->content);
+                                       } else if (g_strcmp0("name_str_id", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].name_str_id = g_strdup((char *)cur_node->children->content);
+                                       } else if (g_strcmp0("icon", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].icon_path = g_strdup((char *)cur_node->children->content);
+                                       } else if (g_strcmp0("sending_address", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].sending_address = g_strdup((char *)cur_node->children->content);
+                                       } else if (g_strcmp0("sending_port", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].sending_port = atoi((char *)cur_node->children->content);
+                                       } else if (g_strcmp0("sending_security", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].sending_security = atoi((char *)cur_node->children->content);
+                                       } else if (g_strcmp0("receiving_server_type", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].receiving_server_type = g_strdup((char *)cur_node->children->content);
+                                       } else if (g_strcmp0("receiving_address", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].receiving_address = g_strdup((char *)cur_node->children->content);
+                                       } else if (g_strcmp0("receiving_port", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].receiving_port = atoi((char *)cur_node->children->content);
+                                       } else if (g_strcmp0("receiving_security", (char *)cur_node->name) == 0) {
+                                               ugd->sp_list[i].receiving_security = atoi((char *)cur_node->children->content);
+                                       }
+                               }
+                               setting_traverse_xml_node(cur_node->children, depth+1, data);
+                       }
+
+                       if (depth == 1) i++;
+               }
+       }
+}
+
+void setting_cleanup_xml_parser(xmlDocPtr xml_source)
+{
+       debug_log("");
+       if(xml_source != NULL) {
+               xmlFreeDoc(xml_source);
+               xml_source = NULL;
+       }
+}
+
+void setting_dump_sp_desc(EmailSettingUGD *ugd)
+{
+       debug_log("");
+       int i=0;
+       EmailSpDesc *desc = NULL;
+       for (i=0; i<ugd->sp_list_len; i++) {
+               desc = &(ugd->sp_list[i]);
+               debug_log("SP-%d===========================================", i);
+               debug_log("ID:%d", desc->id);
+               debug_log("CSC:%s", desc->csc_code);
+               debug_log("Name:%s", desc->name);
+               debug_log("Name STR:%s", desc->name_str_id);
+               debug_log("Icon:%s", desc->icon_path);
+               debug_log("Sending Address:%s", desc->sending_address);
+               debug_log("Sending Port:%d", desc->sending_port);
+               debug_log("Sending Security:%d", desc->sending_security);
+               debug_log("Receiving Server Type:%s", desc->receiving_server_type);
+               debug_log("Receiving Address:%s", desc->receiving_address);
+               debug_log("Receiving Port:%d", desc->receiving_port);
+               debug_log("Receiving Security:%d", desc->receiving_security);
+               debug_log("");
+       }
+}
 /* EOF */
index db4b0c2..6a1e078 100755 (executable)
@@ -266,6 +266,16 @@ static void on_destroy(ui_gadget_h ug, service_h service, void *priv)
                ugd->popup_validate = NULL;
        }
 
+       if (ugd->password_timer) {
+               ecore_timer_del(ugd->password_timer);
+               ugd->password_timer = NULL;
+       }
+
+       if (ugd->focus_timer) {
+               ecore_timer_del(ugd->focus_timer);
+               ugd->focus_timer = NULL;
+       }
+
        if (ugd->preset_vc_timer) {
                ecore_timer_del(ugd->preset_vc_timer);
                ugd->preset_vc_timer = NULL;
@@ -367,6 +377,39 @@ static void on_start(ui_gadget_h ug, service_h service, void *priv)
                debug_log("Failed to get account list");
        }
 
+#if 0
+       /* create xml tree */
+       xmlDocPtr xml_source = setting_create_xml_tree(SP_XML_PATH);
+       if(!xml_source) {
+               Evas_Object *popup = elm_popup_add(ugd->layout_main);
+               evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+               elm_object_part_text_set(popup, "title,text", dgettext("sys_string", "IDS_COM_POP_WARNING"));
+               elm_object_text_set(popup, N_("Failed to parse resource XML"));
+
+               Evas_Object *btn1 = elm_button_add(popup);
+               elm_object_style_set(btn1, "popup_button/default");
+               elm_object_text_set(btn1, dgettext("sys_string", "IDS_COM_SK_OK"));
+               elm_object_part_content_set(popup, "button1", btn1);
+               evas_object_smart_callback_add(btn1, "clicked", _popup_ok_cb, ugd);
+               evas_object_show(popup);
+               return;
+       }
+       ugd->xml_source = xml_source;
+
+       /* traverse xml tree */
+       xmlNode *root;
+       root= xmlDocGetRootElement(xml_source);
+       int sp_count = xmlChildElementCount(root);
+       ugd->sp_list_len = sp_count;
+       debug_log("Count of SP list:%d", sp_count);
+       if (sp_count > 0) {
+               ugd->sp_list = (EmailSpDesc *)calloc(sp_count, sizeof(EmailSpDesc));
+               setting_traverse_xml_node(root, 0, (void *)ugd);
+               setting_dump_sp_desc(ugd);
+       }
+       setting_cleanup_xml_parser(xml_source);
+#endif
+
        if (!_parse_option(service, ugd)) {
                return;
        }
index 1492f53..d978b64 100755 (executable)
@@ -1037,7 +1037,7 @@ static Eina_Bool _after_save_cb(void *data)
        setting_back_to_prev_view(vd);
        setting_get_small_notify(vd, _("IDS_EMAIL_POP_ACCOUNT_EDITED"));
 
-       return TRUE;
+       return ECORE_CALLBACK_CANCEL;
 }
 
 static void _popup_ok_cb(void *data, Evas_Object *obj, void *event_info)
@@ -1445,6 +1445,7 @@ 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);
@@ -1466,6 +1467,7 @@ 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);
@@ -1488,6 +1490,7 @@ 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);
@@ -1510,6 +1513,7 @@ 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);
@@ -1533,6 +1537,7 @@ 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);
@@ -1554,6 +1559,7 @@ 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);
@@ -1575,6 +1581,7 @@ 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);
@@ -1602,6 +1609,7 @@ 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);
@@ -1628,6 +1636,7 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        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);
@@ -1655,6 +1664,7 @@ 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);
index 86e2668..aa7b613 100755 (executable)
@@ -655,7 +655,7 @@ static void _back_cb(void *data, Evas_Object *obj, void *event_info)
        if (imf_context)
                ecore_imf_context_input_panel_hide(imf_context);
 
-       if (account_data->options.add_signature == TRUE && p->signature_backup) {
+       if (/*account_data->options.add_signature == TRUE && */p->signature_backup) {
                debug_log("signature %s", p->signature_backup);
                account_data->options.signature = g_strdup(p->signature_backup);
                g_free(p->signature_backup);
@@ -760,11 +760,13 @@ static void _onoff_cb(void *data, Evas_Object *obj, void *event_info)
                        if (p->gl_sig_item) {
                                elm_object_item_disabled_set(p->gl_sig_item, EINA_FALSE);
                                elm_entry_context_menu_disabled_set(p->entry_sig, EINA_FALSE);
+                               elm_entry_editable_set(p->entry_sig, TRUE);
                        }
                } else {
                        if (p->gl_sig_item) {
                                elm_object_item_disabled_set(p->gl_sig_item, EINA_TRUE);
                                elm_entry_context_menu_disabled_set(p->entry_sig, EINA_TRUE);
+                               elm_entry_editable_set(p->entry_sig, FALSE);
                        }
                }
        }
@@ -1500,11 +1502,13 @@ static void _gl_sel_cb(void *data, Evas_Object *obj, void *event_info)
                        if (p->gl_sig_item) {
                                elm_object_item_disabled_set(p->gl_sig_item, EINA_FALSE);
                                elm_entry_context_menu_disabled_set(p->entry_sig, EINA_FALSE);
+                               elm_entry_editable_set(p->entry_sig, TRUE);
                        }
                } else {
                        if (p->gl_sig_item) {
                                elm_object_item_disabled_set(p->gl_sig_item, EINA_TRUE);
                                elm_entry_context_menu_disabled_set(p->entry_sig, EINA_TRUE);
+                               elm_entry_editable_set(p->entry_sig, FALSE);
                        }
                }
                break;
index 82480a2..d9633e6 100755 (executable)
@@ -47,12 +47,15 @@ static void _check2_clicked_cb(void *data, Evas_Object *obj, void *event_info);
 static void _check1_clicked_cb2(void *data, Evas_Object *obj, const char *emission, const char *source);
 static void _check2_clicked_cb2(void *data, Evas_Object *obj, const char *emission, const char *source);
 static Eina_Bool _after_validation_cb(void *data);
+static Eina_Bool _password_state_cb(void *data);
+static Eina_Bool _startup_focus_cb(void *data);
 
 static void _popup_ok_cb(void *data, Evas_Object *obj, void *event_info);
 static void _popup_cancel_validation_cb(void *data, Evas_Object *obj, void *event_info);
 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 _entry_theme_changed_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);
@@ -168,10 +171,10 @@ void setting_account_validation_failed_cb(EmailSettingUGD *ugd, gboolean cancele
                evas_object_del(ugd->popup_one);
                ugd->popup_one = NULL;
        }
-       if (ugd->popup_validate) {
+       /*if (ugd->popup_validate) {
                evas_object_del(ugd->popup_validate);
                ugd->popup_validate = NULL;
-       }
+       }*/
 
        if (canceled || ugd->err_code == EMAIL_ERROR_CANCELLED) {
                ugd->popup_one = setting_get_notify(vd,
@@ -232,6 +235,8 @@ static int _create(struct viewdata *vd)
                _set_domain_string(vd);
        }
 
+       ugd->focus_timer = ecore_timer_add(0.5, _startup_focus_cb, (void *)vd);
+
        _create_view(vd);
        vd->refresh = 1;
 
@@ -264,6 +269,16 @@ static int _destroy(struct viewdata *vd)
        evas_object_del(p->genlist);
        evas_object_del(p->cbar);
 
+       if (ugd->password_timer) {
+               ecore_timer_del(ugd->password_timer);
+               ugd->password_timer = NULL;
+       }
+
+       if (ugd->focus_timer) {
+               ecore_timer_del(ugd->focus_timer);
+               ugd->focus_timer = NULL;
+       }
+
        if (ugd->preset_vc_timer) {
                ecore_timer_del(ugd->preset_vc_timer);
                ugd->preset_vc_timer = NULL;
@@ -384,7 +399,9 @@ static void _push_naviframe(struct viewdata *vd)
                snprintf(title_str, sizeof(title_str), "%s", dgettext("sys_string", "IDS_COM_BODY_OTHERS"));
 
        navi_it = elm_naviframe_item_push(vd->ugd->navi_bar, title_str, p->r_button2, NULL, p->layout, NULL);
-       elm_object_item_part_content_set(navi_it, "icon", title_ic);
+       if (vd->ugd->account_info != OTHERS) {
+               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);
@@ -406,11 +423,23 @@ static void _create_view(struct viewdata *vd)
        ugd = vd->ugd;
        p = vd->priv;
 
+       int w, h;
+       ecore_x_window_size_get(ecore_x_window_root_first_get(), &w, &h);
+       debug_log("WINDOW W[%d] H[%d]", w, h);
+
        Evas_Object *sub_ly = elm_layout_add(ugd->navi_bar);
-       if (vd->ugd->account_info == OTHERS)
-               elm_layout_file_set(sub_ly, EV_THEME_PATH, "other_account_add");
-       else
-               elm_layout_file_set(sub_ly, EV_THEME_PATH, "account_add");
+
+       if (w == 480) {
+               if (vd->ugd->account_info == OTHERS)
+                       elm_layout_file_set(sub_ly, EV_THEME_PATH, "other_account_add_wvga");
+               else
+                       elm_layout_file_set(sub_ly, EV_THEME_PATH, "account_add_wvga");
+       } else {
+               if (vd->ugd->account_info == OTHERS)
+                       elm_layout_file_set(sub_ly, EV_THEME_PATH, "other_account_add");
+               else
+                       elm_layout_file_set(sub_ly, EV_THEME_PATH, "account_add");
+       }
        evas_object_size_hint_weight_set(sub_ly, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
        evas_object_show(sub_ly);
 
@@ -438,6 +467,8 @@ static void _create_view(struct viewdata *vd)
 
        char *desc = g_strdup(_("IDS_EMAIL_BODY_SEND_EMAIL_FROM_THIS_ACCOUNT_BY_DEFAULT"));
        Evas_Object *label1 = elm_label_add(checkbox_set);
+       elm_label_wrap_width_set(label1, 600*elm_scale_get());
+       elm_label_line_wrap_set(label1, ELM_WRAP_WORD);
        char *text = g_strconcat("<color=#838B8BFF><font_size=32><align=left>",
                                desc, "</align></font_size></color>", NULL);
        edje_object_signal_callback_add(elm_layout_edje_get(checkbox_set),
@@ -450,6 +481,8 @@ static void _create_view(struct viewdata *vd)
 
        desc = g_strdup(_("IDS_EMAIL_BODY_SHOW_PASSWORD"));
        Evas_Object *label2 = elm_label_add(checkbox_set);
+       elm_label_wrap_width_set(label2, 600*elm_scale_get());
+       elm_label_line_wrap_set(label2, ELM_WRAP_WORD);
        text = g_strconcat("<color=#838B8BFF><font_size=32><align=left>",
                                desc, "</align></font_size></color>", NULL);
        edje_object_signal_callback_add(elm_layout_edje_get(checkbox_set),
@@ -1140,12 +1173,35 @@ static void _check2_clicked_cb(void *data, Evas_Object *obj, void *event_info)
        }
 
        struct priv_data *p = vd->priv;
+       EmailSettingUGD *ugd = NULL;
+       ugd = vd->ugd;
+
        Eina_Bool state = elm_check_state_get(obj);
 
        if (state)
                elm_entry_password_set(p->entry_password, EINA_FALSE);
        else
                elm_entry_password_set(p->entry_password, EINA_TRUE);
+
+       if (elm_object_focus_get(p->entry_password)) {
+               if (ugd->password_timer) {
+                       ecore_timer_del(ugd->password_timer);
+                       ugd->password_timer = NULL;
+               }
+               ugd->password_timer = ecore_timer_add(0.1, _password_state_cb, (void *)vd);
+
+               Ecore_IMF_Context *imf_context = NULL;
+               imf_context = elm_entry_imf_context_get(p->entry_password);
+               int state = ecore_imf_context_input_panel_state_get(imf_context);
+
+               if (state == ECORE_IMF_INPUT_PANEL_STATE_WILL_SHOW || state == ECORE_IMF_INPUT_PANEL_STATE_HIDE) {
+                       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);
+               }
+       }
 }
 
 static void _check2_clicked_cb2(void *data, Evas_Object *obj, const char *emission, const char *source)
@@ -1159,6 +1215,9 @@ static void _check2_clicked_cb2(void *data, Evas_Object *obj, const char *emissi
        }
 
        struct priv_data *p = vd->priv;
+       EmailSettingUGD *ugd = NULL;
+       ugd = vd->ugd;
+
        Eina_Bool state = elm_check_state_get(p->show_passwd_check);
 
        if (state) {
@@ -1168,6 +1227,26 @@ static void _check2_clicked_cb2(void *data, Evas_Object *obj, const char *emissi
                elm_check_state_set(p->show_passwd_check, EINA_TRUE);
                elm_entry_password_set(p->entry_password, EINA_FALSE);
        }
+
+       if (elm_object_focus_get(p->entry_password)) {
+               if (ugd->password_timer) {
+                       ecore_timer_del(ugd->password_timer);
+                       ugd->password_timer = NULL;
+               }
+               ugd->password_timer = ecore_timer_add(0.1, _password_state_cb, (void *)vd);
+
+               Ecore_IMF_Context *imf_context = NULL;
+               imf_context = elm_entry_imf_context_get(p->entry_password);
+               int state = ecore_imf_context_input_panel_state_get(imf_context);
+
+               if (state == ECORE_IMF_INPUT_PANEL_STATE_WILL_SHOW || state == ECORE_IMF_INPUT_PANEL_STATE_HIDE) {
+                       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);
+               }
+       }
 }
 
 static Eina_Bool _after_validation_cb(void *data)
@@ -1178,7 +1257,7 @@ static Eina_Bool _after_validation_cb(void *data)
 
        if (vd == NULL) {
                debug_log("vd is NULL");
-               return EINA_FALSE;
+               return ECORE_CALLBACK_CANCEL;
        }
 
        EmailSettingUGD *ugd = NULL;
@@ -1236,7 +1315,75 @@ static Eina_Bool _after_validation_cb(void *data)
                vd->ugd->atomic_pop = 0;
        }*/
 
-       return EINA_TRUE;
+       return ECORE_CALLBACK_CANCEL;
+}
+
+static Eina_Bool _password_state_cb(void *data)
+{
+       debug_log("");
+
+       struct viewdata *vd = (struct viewdata *)data;
+
+       if (vd == NULL) {
+               debug_log("vd is NULL");
+               return ECORE_CALLBACK_CANCEL;
+       }
+
+       struct priv_data *p = NULL;
+       p = vd->priv;
+       EmailSettingUGD *ugd = NULL;
+       ugd = vd->ugd;
+
+       if (ugd->password_timer) {
+               ecore_timer_del(ugd->password_timer);
+               ugd->password_timer = NULL;
+       }
+
+       Ecore_IMF_Context *imf_context = NULL;
+       imf_context = elm_entry_imf_context_get(p->entry_password);
+       if (imf_context) {
+               ecore_imf_context_input_panel_event_callback_del(imf_context,
+                               ECORE_IMF_INPUT_PANEL_STATE_EVENT, _input_panel_state_changed_cb);
+               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                               _input_panel_state_changed_cb, (void *)vd);
+       }
+
+       return ECORE_CALLBACK_CANCEL;
+}
+
+static Eina_Bool _startup_focus_cb(void *data)
+{
+       debug_log("");
+
+       struct viewdata *vd = (struct viewdata *)data;
+
+       if (vd == NULL) {
+               debug_log("vd is NULL");
+               return ECORE_CALLBACK_CANCEL;
+       }
+
+       struct priv_data *p = NULL;
+       p = vd->priv;
+
+       EmailSettingUGD *ugd = NULL;
+       ugd = vd->ugd;
+
+       if (ugd->focus_timer) {
+               ecore_timer_del(ugd->focus_timer);
+               ugd->focus_timer = NULL;
+       }
+
+       if (ugd->account_info == OTHERS) {
+               p->clicked_object = p->entry_account_name;
+               elm_object_focus_set(p->entry_account_name, EINA_TRUE);
+       } else {
+               p->clicked_object = p->entry_email_address;
+               elm_object_focus_set(p->entry_email_address, EINA_TRUE);
+               elm_entry_cursor_begin_set(p->entry_email_address);
+       }
+
+       return ECORE_CALLBACK_CANCEL;
 }
 
 static void _popup_ok_cb(void *data, Evas_Object *obj, void *event_info)
@@ -1408,6 +1555,21 @@ static void _entry_focused_cb(void *data, Evas_Object *obj, void *event_info)
                return;
        }
 
+       struct viewdata *vd = g_vd;
+       struct priv_data *p = vd->priv;
+
+       if (obj == p->entry_password) {
+               Ecore_IMF_Context *imf_context = NULL;
+               imf_context = elm_entry_imf_context_get(p->entry_password);
+               if (imf_context) {
+                       ecore_imf_context_input_panel_event_callback_del(imf_context,
+                                       ECORE_IMF_INPUT_PANEL_STATE_EVENT, _input_panel_state_changed_cb);
+                       ecore_imf_context_input_panel_event_callback_add(imf_context,
+                                       ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                                       _input_panel_state_changed_cb, (void *)vd);
+               }
+       }
+
        if (!elm_entry_is_empty(obj))
                elm_object_signal_emit(data, "elm,state,eraser,show", "elm");
        elm_object_signal_emit(data, "elm,state,guidetext,hide", "elm");
@@ -1427,6 +1589,36 @@ static void _entry_unfocused_cb(void *data, Evas_Object *obj, void *event_info)
        elm_object_signal_emit(data, "elm,state,eraser,hide", "elm");
 }
 
+static void _entry_theme_changed_cb(void *data, Evas_Object *obj, void *event_info)
+{
+       debug_log("");
+
+       if (!obj) {
+               debug_log("obj is NULL");
+               return;
+       }
+
+       struct viewdata *vd = (struct viewdata *)data;
+
+       if (vd == NULL) {
+               debug_log("vd is NULL");
+               return;
+       }
+
+       struct priv_data *p = NULL;
+       p = vd->priv;
+
+       Ecore_IMF_Context *imf_context = NULL;
+       imf_context = elm_entry_imf_context_get(p->entry_password);
+       if (imf_context) {
+               ecore_imf_context_input_panel_event_callback_del(imf_context,
+                               ECORE_IMF_INPUT_PANEL_STATE_EVENT, _input_panel_state_changed_cb);
+               ecore_imf_context_input_panel_event_callback_add(imf_context,
+                               ECORE_IMF_INPUT_PANEL_STATE_EVENT,
+                               _input_panel_state_changed_cb, (void *)vd);
+       }
+}
+
 static void _eraser_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
 {
        debug_log("");
@@ -1451,13 +1643,25 @@ static void _input_panel_state_changed_cb(void *data, Ecore_IMF_Context *ctx, in
        struct viewdata *vd = (struct viewdata *)data;
        struct priv_data *p = vd->priv;
 
-       if (value == ECORE_IMF_INPUT_PANEL_STATE_SHOW) {
+       int state = ecore_imf_context_input_panel_state_get(ctx);
+
+       if (state == ECORE_IMF_INPUT_PANEL_STATE_SHOW)
+               debug_log("state:SHOW");
+       else if (state == ECORE_IMF_INPUT_PANEL_STATE_HIDE)
+               debug_log("state HIDE");
+
+       if (value == ECORE_IMF_INPUT_PANEL_STATE_SHOW)
+               debug_log("value:SHOW");
+       else if (value == ECORE_IMF_INPUT_PANEL_STATE_HIDE)
+               debug_log("value HIDE");
+
+       if (state == 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) {
+       } else if (state == 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");
@@ -1495,12 +1699,12 @@ 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;
-       EmailSettingUGD *ugd = vd->ugd;
+       //EmailSettingUGD *ugd = vd->ugd;
        Ecore_IMF_Context *imf_context = NULL;
 
        if (!strcmp(part, "elm.icon")) {
                if (index == 1) {
-                       p->icon_get_cnt1++;
+                       //p->icon_get_cnt1++;
 
                        debug_log("");
                        p->ef_account_name = elm_layout_add(p->genlist);
@@ -1534,7 +1738,7 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        if (p->str_account_name)
                                elm_entry_entry_set(p->entry_account_name, p->str_account_name);
 
-                       if (ugd->account_info == OTHERS && p->icon_get_cnt1 == 2 &&
+                       /*if (ugd->account_info == OTHERS && p->icon_get_cnt1 == 2 &&
                                        strcmp(ugd->start_view_type, EMAIL_BUNDLE_VAL_VIEW_ACCOUNT_ADD) != 0) {
                                p->clicked_object = p->entry_account_name;
                                evas_object_show(p->entry_account_name);
@@ -1546,7 +1750,7 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                                p->clicked_object = p->entry_account_name;
                                evas_object_show(p->entry_account_name);
                                elm_object_focus_set(p->entry_account_name, EINA_TRUE);
-                       }
+                       }*/
 
                        return p->ef_account_name;
                } else if (index == 2) {
@@ -1618,7 +1822,7 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
 
                        return p->ef_display_name;
                } else if (index == 4) {
-                       p->icon_get_cnt2++;
+                       //p->icon_get_cnt2++;
 
                        debug_log("");
                        p->ef_email_address = elm_layout_add(p->genlist);
@@ -1652,7 +1856,7 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        if (p->str_email_address)
                                elm_entry_entry_set(p->entry_email_address, p->str_email_address);
 
-                       if (ugd->account_info != OTHERS && p->icon_get_cnt2 == 2 &&
+                       /*if (ugd->account_info != OTHERS && p->icon_get_cnt2 == 2 &&
                                        strcmp(ugd->start_view_type, EMAIL_BUNDLE_VAL_VIEW_ACCOUNT_ADD) != 0) {
                                p->clicked_object = p->entry_email_address;
                                evas_object_show(p->entry_email_address);
@@ -1666,7 +1870,7 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                                evas_object_show(p->entry_email_address);
                                elm_object_focus_set(p->entry_email_address, EINA_TRUE);
                                elm_entry_cursor_begin_set(p->entry_email_address);
-                       }
+                       }*/
 
                        return p->ef_email_address;
                } else if (index == 5) {
@@ -1685,6 +1889,7 @@ static Evas_Object *_gl_ef_content_get_cb(void *data, Evas_Object *obj, const ch
                        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, "theme,changed", _entry_theme_changed_cb, (void *)vd);
                        evas_object_show(p->entry_password);
 
                        imf_context = elm_entry_imf_context_get(p->entry_password);
index 306dcff..cada600 100755 (executable)
@@ -14,7 +14,6 @@
  * limitations under the License.
  */
 
-#include <Ecore_X.h>
 #include "email-setting.h"
 #include "email-setting-utils.h"
 
@@ -186,7 +185,7 @@ static void _create_view(struct viewdata *vd)
        Evas_Object *sub_ly = elm_layout_add(ugd->navi_bar);
 
        if (w == 480)
-               elm_layout_file_set(sub_ly, EV_THEME_PATH, "initial_access_pulbic");
+               elm_layout_file_set(sub_ly, EV_THEME_PATH, "initial_access_public");
        else
                elm_layout_file_set(sub_ly, EV_THEME_PATH, "initial_access_hd_public");
 
index a17607c..e91915f 100755 (executable)
@@ -877,7 +877,7 @@ static Eina_Bool _after_validation_cb(void *data)
 
        if (!vd) {
                debug_log("vd is NULL");
-               return FALSE;
+               return ECORE_CALLBACK_CANCEL;
        }
 
        EmailSettingUGD *ugd = vd->ugd;
@@ -915,7 +915,7 @@ static Eina_Bool _after_validation_cb(void *data)
                vd->ugd->atomic_pop = 0;
        }*/
 
-       return TRUE;
+       return ECORE_CALLBACK_CANCEL;
 }
 
 static void _popup_ok_cb(void *data, Evas_Object *obj, void *event_info)
index 0a71b58..532d120 100755 (executable)
@@ -721,7 +721,7 @@ static Eina_Bool _after_delete_cb(void *data)
 
        if (vd == NULL) {
                debug_log("vd is NULL");
-               return FALSE;
+               return ECORE_CALLBACK_CANCEL;
        }
 
        struct priv_data *p = vd->priv;
@@ -747,7 +747,7 @@ static Eina_Bool _after_delete_cb(void *data)
                /*setting_get_small_notify(vd, dgettext("sys_string", "IDS_COM_POP_DELETED"));*/
        }
 
-       return TRUE;
+       return ECORE_CALLBACK_CANCEL;
 }
 
 static void _popup_cancel_cb(void *data, Evas_Object *obj, void *event_info)
index 68570b4..d1ad014 100755 (executable)
@@ -747,7 +747,7 @@ static Eina_Bool _after_delete_cb(void *data)
 
        if (vd == NULL) {
                debug_log("vd is NULL");
-               return FALSE;
+               return ECORE_CALLBACK_CANCEL;
        }
 
        //struct priv_data *p = vd->priv;
@@ -782,7 +782,7 @@ static Eina_Bool _after_delete_cb(void *data)
                /*setting_get_small_notify(vd, dgettext("sys_string", "IDS_COM_POP_DELETED"));*/
        }
 
-       return TRUE;
+       return ECORE_CALLBACK_CANCEL;
 }
 
 static void _popup_cancel_cb(void *data, Evas_Object *obj, void *event_info)
index 3e4a46b..3398bc1 100755 (executable)
@@ -1287,8 +1287,7 @@ collections {
                                scale: 1;
                                description {
                                        state: "default" 0.0;
-                                       min: 720 16;
-                                       max: 720 16;
+                                       min: 0 16;
                                        fixed: 1 1;
                                        align: 0.5 0;
                                        rel1 { relative: 0 1.0; to_y: "label"; }
@@ -1317,8 +1316,7 @@ collections {
                                repeat_events: 1;
                                scale: 1;
                                description { state: "default" 0.0;
-                                       min: 720 200;
-                                       max: 720 200;
+                                       min: 0 200;
                                        color: 0 0 0 0;
                                        align: 0.0 0.5;
                                }
@@ -1424,16 +1422,16 @@ collections {
                                description { state: "default" 0.0;
                                        min: 0 32;
                                        fixed: 0 1;
-                                       align: 0 0.5;
+                                       align: 0.0 0.0;
                                        rel1 {
                                                relative: 1.0 0.0;
-                                               offset: 16 34;
+                                               offset: 16 33;
                                                to_x: "checkbox.1";
                                                to_y: "subbox.1";
                                        }
                                        rel2 {
                                                relative: 0.0 1.0;
-                                               offset: 0 -34;
+                                               offset: 0 -3;
                                                to_x: "right_padding";
                                                to_y: "subbox.1";
                                        }
@@ -1471,7 +1469,7 @@ collections {
                                description { state: "default" 0.0;
                                        min: 0 32;
                                        fixed: 0 1;
-                                       align: 0 0.5;
+                                       align: 0.0 0.5;
                                        rel1 {
                                                relative: 1.0 0.0;
                                                offset: 16 34;
@@ -1512,8 +1510,7 @@ collections {
                                repeat_events: 1;
                                scale: 1;
                                description { state: "default" 0.0;
-                                       min: 720 128;
-                                       max: 720 128;
+                                       min: 0 158;
                                        color: 0 0 0 0;
                                        align: 0.0 0.5;
                                }
@@ -1537,7 +1534,7 @@ collections {
                                type: RECT;
                                scale: 1;
                                description { state: "default" 0.0;
-                                       min: 0 16;
+                                       min: 0 46;
                                        fixed: 0 1;
                                        visible: 0;
                                        rel1 { to: "base"; relative: 0 1; }
@@ -1602,8 +1599,7 @@ collections {
                                repeat_events: 1;
                                scale: 1;
                                description { state: "default" 0.0;
-                                       min: 720 623;
-                                       max: 720 623;
+                                       min: 0 653;
                                        rel1 { relative: 0.0 0.0;}
                                        rel2 { relative: 1.0 1.0;}
                                        color: 0 0 0 0;
@@ -1625,8 +1621,7 @@ collections {
                                type: SWALLOW;
                                scale: 1;
                                description { state: "default" 0.0;
-                                       min: 720 200;
-                                       max: 720 200;
+                                       min: 0 200;
                                        align: 0 0;
                                        rel1 { relative: 0 1.0; to_y: "list"; }
                                        rel2 { relative: 1 1.0; offset: 0 200; to_y: "list"; }
@@ -1637,8 +1632,7 @@ collections {
                                type: SWALLOW;
                                scale: 1;
                                description { state: "default" 0.0;
-                                       min: 720 128;
-                                       max: 720 128;
+                                       min: 0 158;
                                        align: 0 0;
                                        rel1 { relative: 0 1.0; to_y: "checkbox_set"; }
                                        rel2 { relative: 1 1.0; offset: 0 128; to_y: "checkbox_set"; }
@@ -1654,8 +1648,7 @@ collections {
                                repeat_events: 1;
                                scale: 1;
                                description { state: "default" 0.0;
-                                       min: 720 753;
-                                       max: 720 753;
+                                       min: 0 783;
                                        rel1 { relative: 0.0 0.0;}
                                        rel2 { relative: 1.0 1.0;}
                                        color: 0 0 0 0;
@@ -1677,8 +1670,107 @@ collections {
                                type: SWALLOW;
                                scale: 1;
                                description { state: "default" 0.0;
-                                       min: 720 200;
-                                       max: 720 200;
+                                       min: 0 200;
+                                       align: 0 0;
+                                       rel1 { relative: 0 1.0; to_y: "list"; }
+                                       rel2 { relative: 1 1.0; offset: 0 200; to_y: "list"; }
+                               }
+                       }
+
+                       part { name: "button_set";
+                               type: SWALLOW;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       min: 0 158;
+                                       align: 0 0;
+                                       rel1 { relative: 0 1.0; to_y: "checkbox_set"; }
+                                       rel2 { relative: 1 1.0; offset: 0 128; to_y: "checkbox_set"; }
+                               }
+                       }
+               }
+       }
+       
+#define _SCALE 0.64
+       
+       group { name: "account_add_wvga";
+               parts {
+                       part { name: "bg";
+                               type: RECT;
+                               repeat_events: 1;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       min: 0 653;
+                                       rel1 { relative: 0.0 0.0;}
+                                       rel2 { relative: 1.0 1.0;}
+                                       color: 0 0 0 0;
+                                       align: 0.0 0.0;
+                               }
+                       }
+                       
+                       part { name: "list";
+                               type: SWALLOW;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       align: 0 0;
+                                       rel1 { relative: 0 0; to: "bg"; }
+                                       rel2 { relative: 1 0; offset: 0 295.0*_SCALE; to: "bg"; }
+                               }
+                       }
+
+                       part { name: "checkbox_set";
+                               type: SWALLOW;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       min: 0 200;
+                                       align: 0 0;
+                                       rel1 { relative: 0 1.0; to_y: "list"; }
+                                       rel2 { relative: 1 1.0; offset: 0 200; to_y: "list"; }
+                               }
+                       }
+
+                       part { name: "button_set";
+                               type: SWALLOW;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       min: 0 158;
+                                       align: 0 0;
+                                       rel1 { relative: 0 1.0; to_y: "checkbox_set"; }
+                                       rel2 { relative: 1 1.0; offset: 0 128; to_y: "checkbox_set"; }
+                               }
+                       }
+               }
+       }
+
+       group { name: "other_account_add_wvga";
+               parts {
+                       part { name: "bg";
+                               type: RECT;
+                               repeat_events: 1;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       min: 0 783;
+                                       rel1 { relative: 0.0 0.0;}
+                                       rel2 { relative: 1.0 1.0;}
+                                       color: 0 0 0 0;
+                                       align: 0.0 0.0;
+                               }
+                       }
+                       
+                       part { name: "list";
+                               type: SWALLOW;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       align: 0 0;
+                                       rel1 { relative: 0 0; to: "bg"; }
+                                       rel2 { relative: 1 0; offset: 0 425.0*_SCALE; to: "bg"; }
+                               }
+                       }
+
+                       part { name: "checkbox_set";
+                               type: SWALLOW;
+                               scale: 1;
+                               description { state: "default" 0.0;
+                                       min: 0 200;
                                        align: 0 0;
                                        rel1 { relative: 0 1.0; to_y: "list"; }
                                        rel2 { relative: 1 1.0; offset: 0 200; to_y: "list"; }
@@ -1689,8 +1781,7 @@ collections {
                                type: SWALLOW;
                                scale: 1;
                                description { state: "default" 0.0;
-                                       min: 720 128;
-                                       max: 720 128;
+                                       min: 0 158;
                                        align: 0 0;
                                        rel1 { relative: 0 1.0; to_y: "checkbox_set"; }
                                        rel2 { relative: 1 1.0; offset: 0 128; to_y: "checkbox_set"; }