apply winset theme to entry 36/35436/3
authorSoohye Shin <soohye.shin@samsung.com>
Sat, 14 Feb 2015 10:08:19 +0000 (19:08 +0900)
committerSoohye Shin <soohye.shin@samsung.com>
Mon, 16 Feb 2015 01:46:16 +0000 (10:46 +0900)
Change-Id: If5b82d0e1ab452cb5886cd30191ec78093687e0a
Signed-off-by: Soohye Shin <soohye.shin@samsung.com>
edje/bar/ubar.edc
include/defs.h
src/bus.c
src/engine.c
src/ubar.c

index 1c6160c..37edc71 100644 (file)
@@ -1115,8 +1115,8 @@ group {
                        }
                }
                part {
-                       name, "bg.entry";
-                       type, RECT;
+                       name, PART_USER_LOGIN_PW;
+                       type, SWALLOW;
                        scale, 1;
                        description {
                                state, "default" 0.0;
@@ -1131,132 +1131,8 @@ group {
                                        to, "padding.name";
                                        relative, 1.0 1.0;
                                }
-                               color, 27 32 45 40;
-                       }
-                       description {
-                               state, "focus" 0.0;
-                               inherit, "default" 0.0;
-                               color, 69 143 255 255;
-                       }
-               }
-               part {
-                       name, "padding.border";
-                       type, RECT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               min, 2 2;
-                               fixed, 1 1;
-                               align, 0.0 0.0;
-                               rel1.to, "bg.entry";
-                               rel2 {
-                                       to, "bg.entry";
-                                       relative, 0.0 0.0;
-                               }
-                               visible, 0;
-                       }
-               }
-               part {
-                       name, "bg.entry.border";
-                       type, RECT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               min, 306 46;
-                               fixed, 1 1;
-                               align, 0.0 0.0;
-                               rel1 {
-                                       to, "padding.border";
-                                       relative, 1.0 1.0;
-                               }
-                               rel2 {
-                                       to, "padding.border";
-                                       relative, 1.0 1.0;
-                               }
-                       }
-               }
-               part {
-                       name, PART_USER_LOGIN_PW_DESC;
-                       type, TEXT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               fixed, 1 1;
-                               rel1.to, "bg.entry.border";
-                               rel2.to, "bg.entry.border";
-                               text {
-                                       font, "TizenSans";
-                                       size, 22;
-                                       align, 0.5 0.5;
-                               }
-                               color, 27 32 45 100;
-                               visible, 1;
-                       }
-                       description {
-                               state, "hide" 0.0;
-                               inherit, "default" 0.0;
-                               visible, 0;
-                       }
-                       description {
-                               state, "wrongpw" 0.0;
-                               inherit, "default" 0.0;
-                               color, 220 0 0 255;
-                               visible, 1;
                        }
                }
-               part {
-                       name, PART_USER_LOGIN_PW;
-                       type, SWALLOW;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               fixed, 1 1;
-                               rel1.to, PART_USER_LOGIN_PW_DESC;
-                               rel2.to, PART_USER_LOGIN_PW_DESC;
-                       }
-               }
-       }
-       programs {
-               program {
-                       name, "show.pw";
-                       signal, SIG_SHOW_PW;
-                       source, SRC_PROG;
-                       action, STATE_SET "default" 0.0;
-                       transition, LINEAR 0.1;
-                       target, PART_USER_LOGIN_PW_DESC;
-               }
-               program {
-                       name, "hide.pw";
-                       signal, SIG_HIDE_PW;
-                       source, SRC_PROG;
-                       action, STATE_SET "hide" 0.0;
-                       transition, LINEAR 0.1;
-                       target, PART_USER_LOGIN_PW_DESC;
-               }
-               program {
-                       name, "show.wrong.pw";
-                       signal, SIG_SHOW_WRONG_PW;
-                       source, SRC_PROG;
-                       action, STATE_SET "wrongpw" 0.0;
-                       transition, LINEAR 0.1;
-                       target, PART_USER_LOGIN_PW_DESC;
-               }
-               program {
-                       name, "focus.pw";
-                       signal, SIG_FOCUS;
-                       source, SRC_PROG;
-                       action, STATE_SET "focus" 0.0;
-                       transition, LINEAR 0.1;
-                       target, "bg.entry";
-               }
-               program {
-                       name, "unfocus.pw";
-                       signal, SIG_UNFOCUS;
-                       source, SRC_PROG;
-                       action, STATE_SET "default" 0.0;
-                       transition, LINEAR 0.1;
-                       target, "bg.entry";
-               }
        }
 }
 
@@ -1331,8 +1207,8 @@ group {
                        }
                }
                part {
-                       name, "bg.entry";
-                       type, RECT;
+                       name, PART_USER_LOGIN_PW;
+                       type, SWALLOW;
                        scale, 1;
                        description {
                                state, "default" 0.0;
@@ -1344,133 +1220,9 @@ group {
                                        relative, 1.0 1.0;
                                }
                                rel2.to, "padding.entry";
-                               color, 27 32 45 40;
-                       }
-                       description {
-                               state, "focus" 0.0;
-                               inherit, "default" 0.0;
-                               color, 69 143 255 255;
-                       }
-               }
-               part {
-                       name, "padding.border";
-                       type, RECT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               min, 2 2;
-                               fixed, 1 1;
-                               align, 0.0 0.0;
-                               rel1.to, "bg.entry";
-                               rel2 {
-                                       to, "bg.entry";
-                                       relative, 0.0 0.0;
-                               }
-                               visible, 0;
-                       }
-               }
-               part {
-                       name, "bg.entry.border";
-                       type, RECT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               min, 306 46;
-                               fixed, 1 1;
-                               align, 0.0 0.0;
-                               rel1 {
-                                       to, "padding.border";
-                                       relative, 1.0 1.0;
-                               }
-                               rel2 {
-                                       to, "padding.border";
-                                       relative, 1.0 1.0;
-                               }
-                       }
-               }
-               part {
-                       name, PART_USER_LOGIN_PW_DESC;
-                       type, TEXT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               fixed, 1 1;
-                               rel1.to, "bg.entry.border";
-                               rel2.to, "bg.entry.border";
-                               text {
-                                       font, "TizenSans";
-                                       size, 22;
-                                       align, 0.5 0.5;
-                               }
-                               color, 27 32 45 100;
-                               visible, 1;
-                       }
-                       description {
-                               state, "hide" 0.0;
-                               inherit, "default" 0.0;
-                               visible, 0;
-                       }
-                       description {
-                               state, "wrongpw" 0.0;
-                               inherit, "default" 0.0;
-                               color, 220 0 0 255;
-                               visible, 1;
-                       }
-               }
-               part {
-                       name, PART_USER_LOGIN_PW;
-                       type, SWALLOW;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               fixed, 1 1;
-                               rel1.to, PART_USER_LOGIN_PW_DESC;
-                               rel2.to, PART_USER_LOGIN_PW_DESC;
                        }
                }
        }
-       programs {
-               program {
-                       name, "show.pw";
-                       signal, SIG_SHOW_PW;
-                       source, SRC_PROG;
-                       action, STATE_SET "default" 0.0;
-                       transition, LINEAR 0.1;
-                       target, PART_USER_LOGIN_PW_DESC;
-               }
-               program {
-                       name, "hide.pw";
-                       signal, SIG_HIDE_PW;
-                       source, SRC_PROG;
-                       action, STATE_SET "hide" 0.0;
-                       transition, LINEAR 0.1;
-                       target, PART_USER_LOGIN_PW_DESC;
-               }
-               program {
-                       name, "show.long.pw";
-                       signal, SIG_SHOW_WRONG_PW;
-                       source, SRC_PROG;
-                       action, STATE_SET "wrongpw" 0.0;
-                       transition, LINEAR 0.1;
-                       target, PART_USER_LOGIN_PW_DESC;
-               }
-               program {
-                       name, "focus.pw";
-                       signal, SIG_FOCUS;
-                       source, SRC_PROG;
-                       action, STATE_SET "focus" 0.0;
-                       transition, LINEAR 0.1;
-                       target, "bg.entry";
-               }
-               program {
-                       name, "unfocus.pw";
-                       signal, SIG_UNFOCUS;
-                       source, SRC_PROG;
-                       action, STATE_SET "default" 0.0;
-                       transition, LINEAR 0.1;
-                       target, "bg.entry";
-               }
-       }
 }
 
 group {
@@ -1648,8 +1400,8 @@ group {
                        }
                }
                part {
-                       name, "bg.entry";
-                       type, RECT;
+                       name, PART_POPUP_ENTRY_NAME;
+                       type, SWALLOW;
                        scale, 1;
                        description {
                                state, "default" 0.0;
@@ -1664,88 +1416,6 @@ group {
                                        to, "padding.name";
                                        relative, 0.0 1.0;
                                }
-                               color, 27 32 45 40;
-                       }
-                       description {
-                               state, "focus" 0.0;
-                               inherit, "default" 0.0;
-                               color, 69 143 255 255;
-                       }
-               }
-               part {
-                       name, "padding.border";
-                       type, RECT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               min, 2 2;
-                               fixed, 1 1;
-                               align, 0.0 0.0;
-                               rel1.to, "bg.entry";
-                               rel2 {
-                                       to, "bg.entry";
-                                       relative, 0.0 0.0;
-                               }
-                               visible, 0;
-                       }
-               }
-               part {
-                       name, "bg.entry.border";
-                       type, RECT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               min, 266 46;
-                               fixed, 1 1;
-                               align, 0.0 0.0;
-                               rel1 {
-                                       to, "padding.border";
-                                       relative, 1.0 1.0;
-                               }
-                               rel2 {
-                                       to, "padding.border";
-                                       relative, 1.0 1.0;
-                               }
-                       }
-               }
-               part {
-                       name, PART_POPUP_ENTRY_NAME_DESC;
-                       type, TEXT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               fixed, 1 1;
-                               rel1.to, "bg.entry.border";
-                               rel2.to, "bg.entry.border";
-                               text {
-                                       font, "TizenSans";
-                                       size, 22;
-                                       align, 0.5 0.5;
-                               }
-                               color, 27 32 45 100;
-                               visible, 1;
-                       }
-                       description {
-                               state, "hide" 0.0;
-                               inherit, "default" 0.0;
-                               visible, 0;
-                       }
-                       description {
-                               state, "wrongpw" 0.0;
-                               inherit, "default" 0.0;
-                               color, 220 0 0 255;
-                               visible, 1;
-                       }
-               }
-               part {
-                       name, PART_POPUP_ENTRY_NAME;
-                       type, SWALLOW;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               fixed, 1 1;
-                               rel1.to, PART_POPUP_ENTRY_NAME_DESC;
-                               rel2.to, PART_POPUP_ENTRY_NAME_DESC;
                        }
                }
                part {
@@ -1758,18 +1428,18 @@ group {
                                min, 0 10;
                                align, 0.0 0.0;
                                rel1 {
-                                       to, "bg.entry";
+                                       to, PART_POPUP_ENTRY_NAME;
                                        relative, 0.0 1.0;
                                }
                                rel2 {
-                                       to, "bg.entry";
+                                       to, PART_POPUP_ENTRY_NAME;
                                        relative, 0.0 1.0;
                                }
                        }
                }
                part {
-                       name, "bg.pw.entry";
-                       type, RECT;
+                       name, PART_POPUP_ENTRY_PW;
+                       type, SWALLOW;
                        scale, 1;
                        description {
                                state, "default" 0.0;
@@ -1781,163 +1451,7 @@ group {
                                        relative, 1.0 1.0;
                                }
                                rel2.to, "padding.pw";
-                               color, 27 32 45 40;
-                       }
-                       description {
-                               state, "focus" 0.0;
-                               inherit, "default" 0.0;
-                               color, 69 143 255 255;
-                       }
-               }
-               part {
-                       name, "padding.pw.border";
-                       type, RECT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               min, 2 2;
-                               fixed, 1 1;
-                               align, 0.0 0.0;
-                               rel1.to, "bg.pw.entry";
-                               rel2 {
-                                       to, "bg.pw.entry";
-                                       relative, 0.0 0.0;
-                               }
-                               visible, 0;
-                       }
-               }
-               part {
-                       name, "bg.pw.entry.border";
-                       type, RECT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               min, 266 46;
-                               fixed, 1 1;
-                               align, 0.0 0.0;
-                               rel1 {
-                                       to, "padding.pw.border";
-                                       relative, 1.0 1.0;
-                               }
-                               rel2 {
-                                       to, "padding.pw.border";
-                                       relative, 1.0 1.0;
-                               }
-                       }
-               }
-               part {
-                       name, PART_POPUP_ENTRY_PW_DESC;
-                       type, TEXT;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               fixed, 1 1;
-                               rel1.to, "bg.pw.entry.border";
-                               rel2.to, "bg.pw.entry.border";
-                               text {
-                                       font, "TizenSans";
-                                       size, 22;
-                                       align, 0.5 0.5;
-                               }
-                               color, 27 32 45 100;
-                               visible, 1;
-                       }
-                       description {
-                               state, "hide" 0.0;
-                               inherit, "default" 0.0;
-                               visible, 0;
-                       }
-                       description {
-                               state, "wrongpw" 0.0;
-                               inherit, "default" 0.0;
-                               color, 220 0 0 255;
-                               visible, 1;
-                       }
-               }
-               part {
-                       name, PART_POPUP_ENTRY_PW;
-                       type, SWALLOW;
-                       scale, 1;
-                       description {
-                               state, "default" 0.0;
-                               fixed, 1 1;
-                               rel1.to, PART_POPUP_ENTRY_PW_DESC;
-                               rel2.to, PART_POPUP_ENTRY_PW_DESC;
                        }
                }
        }
-       programs {
-               program {
-                       name, "show.pw";
-                       signal, SIG_SHOW_PW;
-                       source, SRC_PROG;
-                       action, STATE_SET "default" 0.0;
-                       transition, LINEAR 0.1;
-                       target, PART_POPUP_ENTRY_PW_DESC;
-               }
-               program {
-                       name, "show.name";
-                       signal, SIG_SHOW_NAME;
-                       source, SRC_PROG;
-                       action, STATE_SET "default" 0.0;
-                       transition, LINEAR 0.1;
-                       target, PART_POPUP_ENTRY_NAME_DESC;
-               }
-               program {
-                       name, "hide.pw";
-                       signal, SIG_HIDE_PW;
-                       source, SRC_PROG;
-                       action, STATE_SET "hide";
-                       transition, LINEAR 0.1;
-                       target, PART_POPUP_ENTRY_PW_DESC;
-               }
-               program {
-                       name, "hide.name";
-                       signal, SIG_HIDE_NAME;
-                       source, SRC_PROG;
-                       action, STATE_SET "hide";
-                       transition, LINEAR 0.1;
-                       target, PART_POPUP_ENTRY_NAME_DESC;
-               }
-               program {
-                       name, "focus.pw";
-                       signal, SIG_FOCUS;
-                       source, SRC_PROG;
-                       action, STATE_SET "focus" 0.0;
-                       transition, LINEAR 0.1;
-                       target, "bg.pw.entry";
-               }
-               program {
-                       name, "focus.name";
-                       signal, SIG_FOCUS_NAME;
-                       source, SRC_PROG;
-                       action, STATE_SET "focus" 0.0;
-                       transition, LINEAR 0.1;
-                       target, "bg.entry";
-               }
-               program {
-                       name, "unfocus.pw";
-                       signal, SIG_UNFOCUS;
-                       source, SRC_PROG;
-                       action, STATE_SET "unfocus" 0.0;
-                       transition, LINEAR 0.1;
-                       target, "bg.pw.entry";
-               }
-               program {
-                       name, "unfocus.name";
-                       signal, SIG_UNFOCUS_NAME;
-                       source, SRC_PROG;
-                       action, STATE_SET "unfocus" 0.0;
-                       transition, LINEAR 0.1;
-                       target, "bg.entry";
-               }
-               program {
-                       name, "show.wrong.name";
-                       signal, SIG_SHOW_WRONG;
-                       source, SRC_PROG;
-                       action, STATE_SET "wrongpw" 0.0;
-                       transition, LINEAR 0.1;
-                       target, PART_POPUP_ENTRY_NAME_DESC;
-               }
-       }
 }
index c0fe6fb..c57c165 100644 (file)
 #define STYLE_BTN_HOVERTEXT "hovertext"
 #define STYLE_BTN_DIM_HOVERTEXT "dimhovertext"
 #define STYLE_CTXPOPUP_HOVER "hoverpopup"
+#define STYLE_ENTRY "input.field.small"
 #define STYLE_LABEL_SLIDE_LEFT "slide_style_24_left"
 #define STYLE_LABEL_SLIDE_CENTER "slide_style_24_center"
 #define STYLE_LABEL_SLIDE_LEFT_32 "slide_style_32_left"
index 6f77f05..e6a9eb6 100644 (file)
--- a/src/bus.c
+++ b/src/bus.c
@@ -1196,6 +1196,8 @@ int bus_change_user(const char *username, const char *password)
                        1000, &serial, NULL, &error);
        if (!res) {
                _ERR("failed to switch user, %s", error ? error->message : "");
+               g_object_unref(msg);
+               g_object_unref(conn);
                g_error_free(error);
                return -1;
        }
index 16ceffb..e320b12 100644 (file)
@@ -26,6 +26,7 @@
 #include <gum/gum-user.h>
 #include <gum/gum-user-service.h>
 #include <gum/common/gum-user-types.h>
+#include <Elementary.h>
 
 #include "engine.h"
 #include "bus.h"
index 2dddd37..b6494a6 100644 (file)
@@ -857,7 +857,7 @@ static enum bar_event _back(struct bar_info *info)
 static Eina_Bool _add_popup_btn(Evas_Object *p, struct _ubar_item *item,
                struct _btn_info *btn_info, int size)
 {
-       Evas_Object *btn, *firstbtn;
+       Evas_Object *btn;
        int i;
 
        if (!p || !item || !btn_info) {
@@ -865,7 +865,6 @@ static Eina_Bool _add_popup_btn(Evas_Object *p, struct _ubar_item *item,
                return EINA_FALSE;
        }
 
-       firstbtn = NULL;
        for (i = 0; i < size; i++) {
                btn = elm_button_add(p);
                if (!btn) {
@@ -882,14 +881,8 @@ static Eina_Bool _add_popup_btn(Evas_Object *p, struct _ubar_item *item,
                                btn_info[i].click_cb, item);
                evas_object_event_callback_add(btn, EVAS_CALLBACK_MOUSE_MOVE,
                                _mouse_over, NULL);
-
-               if (i == 0)
-                       firstbtn = btn;
        }
 
-       if (firstbtn)
-               elm_object_focus_set(firstbtn, EINA_TRUE);
-
        return EINA_TRUE;
 }
 
@@ -1153,38 +1146,6 @@ static Eina_Bool _load_users(struct _ubar_data *bar, Evas_Object *p)
        return EINA_TRUE;
 }
 
-static void _entry_focused(void *data, Evas_Object *obj, void *ei)
-{
-       struct _ubar_data *bar;
-       Evas_Object *ly;
-
-       if (!data) {
-               _ERR("Invalid arguemtn");
-               return;
-       }
-
-       bar = data;
-       ly = elm_object_parent_widget_get(obj);
-       if (!ly)
-               return;
-
-       elm_object_signal_emit(ly, SIG_HIDE_PW, SRC_PROG);
-       elm_object_signal_emit(ly, SIG_FOCUS, SRC_PROG);
-
-       if (bar->popup_cur)
-               elm_object_signal_emit(bar->popup_cur->eo, SIG_FOCUS, SRC_PROG);
-}
-
-static void _entry_unfocused(void *data, Evas_Object *obj, void *ei)
-{
-       if (elm_entry_is_empty(obj)) {
-               elm_object_signal_emit(data, SIG_SHOW_PW, SRC_PROG);
-               elm_object_part_text_set(data, PART_USER_LOGIN_PW_DESC,
-                               MESSAGE_PW);
-       }
-       elm_object_signal_emit(data, SIG_UNFOCUS, SRC_PROG);
-}
-
 static Evas_Object *_add_entry(Evas_Object *p, const char *part, bool password)
 {
        Evas_Object *entry;
@@ -1200,16 +1161,16 @@ static Evas_Object *_add_entry(Evas_Object *p, const char *part, bool password)
                evas_object_del(p);
                return NULL;
        }
+       if (password) {
+               elm_entry_password_set(entry, EINA_TRUE);
+               elm_config_password_show_last_set(EINA_FALSE);
+       }
+       elm_object_style_set(entry, STYLE_ENTRY);
        elm_entry_single_line_set(entry, EINA_TRUE);
        elm_entry_input_panel_language_set(entry,
                        ELM_INPUT_PANEL_LANG_ALPHABET);
        elm_entry_cursor_end_set(entry);
-       if (password)
-               elm_entry_password_set(entry, EINA_TRUE);
-       /* FIXME: entry scroll style
        elm_entry_scrollable_set(entry, EINA_TRUE);
-       */
-       /* TODO: IME */
        elm_scroller_policy_set(entry, ELM_SCROLLER_POLICY_OFF,
                        ELM_SCROLLER_POLICY_OFF);
        elm_object_part_content_set(p, part, entry);
@@ -1218,38 +1179,6 @@ static Evas_Object *_add_entry(Evas_Object *p, const char *part, bool password)
        return entry;
 }
 
-static void _id_entry_focused(void *data, Evas_Object *obj, void *ei)
-{
-       struct _ubar_data *bar;
-       Evas_Object *ly;
-
-       if (!data) {
-               _ERR("Invalid argument");
-               return;
-       }
-
-       bar = data;
-       ly = elm_object_parent_widget_get(obj);
-       if (!ly)
-               return;
-
-       elm_object_signal_emit(ly, SIG_HIDE_NAME, SRC_PROG);
-       elm_object_signal_emit(ly, SIG_FOCUS_NAME, SRC_PROG);
-
-       if (bar->popup_cur)
-               elm_object_signal_emit(bar->popup_cur->eo, SIG_FOCUS, SRC_PROG);
-}
-
-static void _id_entry_unfocused(void *data, Evas_Object *obj, void *ei)
-{
-       if (elm_entry_is_empty(obj)) {
-               elm_object_signal_emit(data, SIG_SHOW_NAME, SRC_PROG);
-               elm_object_part_text_set(data, PART_POPUP_ENTRY_NAME_DESC,
-                               MESSAGE_ID);
-       }
-       elm_object_signal_emit(data, SIG_UNFOCUS_NAME, SRC_PROG);
-}
-
 static void _popup_arrow_clicked(void *data, Evas_Object *obj,
                const char *emission, const char *source)
 {
@@ -1306,7 +1235,6 @@ static Eina_Bool _add_popup_items(struct _ubar_item *item, Evas_Object *popup)
        }
        elm_object_signal_callback_add(left_arrow, SIG_ARROW_CLICKED, SRC_EDJE,
                        _popup_arrow_clicked, item);
-       item->left_arrow = left_arrow;
 
        right_arrow = _add_arrow(item, ly, GRP_UBAR_RIGHT_ARROW,
                        PART_RIGHT_ARROW);
@@ -1317,7 +1245,6 @@ static Eina_Bool _add_popup_items(struct _ubar_item *item, Evas_Object *popup)
        }
        elm_object_signal_callback_add(right_arrow, SIG_ARROW_CLICKED, SRC_EDJE,
                        _popup_arrow_clicked, item);
-       item->right_arrow = right_arrow;
 
        if (!_load_users(item->bar, ly)) {
                _ERR("failed to create users");
@@ -1331,12 +1258,6 @@ static Eina_Bool _add_popup_items(struct _ubar_item *item, Evas_Object *popup)
                evas_object_del(ly);
                return EINA_FALSE;
        }
-       elm_object_part_text_set(ly, PART_POPUP_ENTRY_NAME_DESC, MESSAGE_ID);
-       evas_object_smart_callback_add(id_entry, "focused",
-                       _id_entry_focused, item->bar);
-       evas_object_smart_callback_add(id_entry, "unfocused",
-                       _id_entry_unfocused, ly);
-       item->id_entry = id_entry;
 
        pw_entry = _add_entry(ly, PART_POPUP_ENTRY_PW, true);
        if (!pw_entry) {
@@ -1344,11 +1265,12 @@ static Eina_Bool _add_popup_items(struct _ubar_item *item, Evas_Object *popup)
                evas_object_del(ly);
                return EINA_FALSE;
        }
-       elm_object_part_text_set(ly, PART_POPUP_ENTRY_PW_DESC, MESSAGE_PW);
-       evas_object_smart_callback_add(pw_entry, "focused", _entry_focused,
-                       item->bar);
-       evas_object_smart_callback_add(pw_entry, "unfocused", _entry_unfocused,
-                       ly);
+       elm_object_focus_next_object_set(pw_entry, item->btn[0],
+                       ELM_FOCUS_DOWN);
+
+       item->left_arrow = left_arrow;
+       item->right_arrow = right_arrow;
+       item->id_entry = id_entry;
        item->pw_entry = pw_entry;
 
        return EINA_TRUE;
@@ -1472,6 +1394,8 @@ static Eina_Bool _load_edit_popup(struct _ubar_item *item)
                }
        }
 
+       elm_object_signal_emit(item->eo, SIG_HLIGHT_FROM_POPOVER, SRC_PROG);
+
        item->popup = popup;
        item->state = POPUP_STATE_EDIT;
 
@@ -1520,12 +1444,6 @@ static Eina_Bool _add_delete_item(Evas_Object *p, struct _ubar_item *item)
                evas_object_del(ly);
                return EINA_FALSE;
        }
-       elm_object_part_text_set(ly, PART_USER_LOGIN_PW_DESC, MESSAGE_PW);
-       evas_object_smart_callback_add(entry, "focused", _entry_focused,
-                       item->bar);
-       evas_object_smart_callback_add(entry, "unfocused", _entry_unfocused,
-                       ly);
-
        item->pw_entry = entry;
 
        return EINA_TRUE;
@@ -1569,15 +1487,20 @@ static Eina_Bool _load_delete_popup(struct _ubar_item *item)
                return EINA_FALSE;
        }
        evas_object_show(popup);
-       item->popup = popup;
 
        if (!_add_delete_item(popup, item)) {
                _ERR("failed to create login item");
                evas_object_del(popup);
                return EINA_FALSE;
        }
+
+       if (item->pw_entry)
+               elm_object_focus_set(item->pw_entry, EINA_TRUE);
+
        elm_object_signal_emit(item->eo, SIG_HLIGHT_FROM_POPOVER, SRC_PROG);
+
        item->state = POPUP_STATE_DELETE;
+       item->popup = popup;
 
        return EINA_TRUE;
 }
@@ -1675,11 +1598,8 @@ static Eina_Bool _add_login_item(Evas_Object *p, struct _ubar_item *item)
                evas_object_del(ly);
                return EINA_FALSE;
        }
-       elm_object_part_text_set(ly, PART_USER_LOGIN_PW_DESC, MESSAGE_PW);
-       evas_object_smart_callback_add(entry, "focused", _entry_focused,
-                       item->bar);
-       evas_object_smart_callback_add(entry, "unfocused", _entry_unfocused,
-                       ly);
+       elm_object_focus_next_object_set(entry, item->btn[0],
+                       ELM_FOCUS_DOWN);
 
        item->pw_entry = entry;
 
@@ -1729,9 +1649,13 @@ static Eina_Bool _load_login_popup(struct _ubar_item *item)
                return EINA_FALSE;
        }
 
+       if (item->pw_entry)
+               elm_object_focus_set(item->pw_entry, EINA_TRUE);
+
+       elm_object_signal_emit(item->eo, SIG_HLIGHT_FROM_POPOVER, SRC_PROG);
+
        item->popup = popup;
        item->state = POPUP_STATE_LOGIN;
-       elm_object_signal_emit(item->eo, SIG_HLIGHT_FROM_POPOVER, SRC_PROG);
 
        return EINA_TRUE;
 }
@@ -1797,7 +1721,6 @@ static Eina_Bool _add_ctxpopup_btn(struct _ubar_item *item, Evas_Object *base)
                return EINA_FALSE;
        }
 
-       firstbtn = NULL;
        for (i = 0; i < sizeof(btn_info) / sizeof(*btn_info); i++) {
                btn = elm_button_add(base);
                if (!btn) {
@@ -2036,11 +1959,11 @@ static Eina_Bool _load_add_popup(struct _ubar_item *item)
                        elm_object_focus_set(cur->eo, EINA_TRUE);
        }
 
+       elm_object_signal_emit(item->eo, SIG_HLIGHT_FROM_POPOVER, SRC_PROG);
+
        item->popup = popup;
        item->state = POPUP_STATE_ADD;
 
-       elm_object_signal_emit(item->eo, SIG_HLIGHT_FROM_POPOVER, SRC_PROG);
-
        return EINA_TRUE;
 }