Evas_Object *delete;
Eina_Bool locked;
+ Evas_Object *table_item[MAX_ITEM_COUNT];
+
char *selected_photo;
struct datamgr *dm;
priv->icon = icon;
priv->focus_icon = focus_icon;
}
-
static Evas_Object *_pack_icon(Evas_Object *table, struct icon_info *_icon_info,
int i)
{
elm_object_focus_allow_set(priv->photo, EINA_TRUE);
}
+static void _set_focus_icon_list(struct _priv *priv)
+{
+ int i;
+
+ for (i = 0; i < MAX_ITEM_COUNT; i++) {
+ if (i/4 == 0) {
+ if (i == 0)
+ elm_object_focus_next_object_set(priv->table_item[i], priv->table_item[i+1], ELM_FOCUS_RIGHT);
+ else if (i == 3)
+ elm_object_focus_next_object_set(priv->table_item[i], priv->table_item[i-1], ELM_FOCUS_LEFT);
+ else {
+ elm_object_focus_next_object_set(priv->table_item[i], priv->table_item[i+1], ELM_FOCUS_RIGHT);
+ elm_object_focus_next_object_set(priv->table_item[i], priv->table_item[i-1], ELM_FOCUS_LEFT);
+ }
+ elm_object_focus_next_object_set(priv->table_item[i], priv->table_item[i+4], ELM_FOCUS_DOWN);
+ } else {
+ if (i == 4)
+ elm_object_focus_next_object_set(priv->table_item[i], priv->table_item[i+1], ELM_FOCUS_RIGHT);
+ else if (i == 7)
+ elm_object_focus_next_object_set(priv->table_item[i], priv->table_item[i-1], ELM_FOCUS_LEFT);
+ else {
+ elm_object_focus_next_object_set(priv->table_item[i], priv->table_item[i+1], ELM_FOCUS_RIGHT);
+ elm_object_focus_next_object_set(priv->table_item[i], priv->table_item[i-1], ELM_FOCUS_LEFT);
+ }
+ elm_object_focus_next_object_set(priv->table_item[i], priv->table_item[i-4], ELM_FOCUS_UP);
+ }
+ }
+}
+
static void _add_icon_list(struct _priv *priv)
{
Evas_Coord x, y, w, h;
}
elm_ctxpopup_horizontal_set(ctxpopup, EINA_TRUE);
elm_ctxpopup_auto_hide_disabled_set(ctxpopup, EINA_TRUE);
+ evas_object_resize(ctxpopup, 812,348);
evas_object_smart_callback_add(ctxpopup, "dismissed", _dismissed, priv);
ly = utils_add_layout(ctxpopup, GRP_USER_EDIT_ICON_LIST, false, NULL);
evas_object_show(ctxpopup);
evas_object_geometry_get(priv->photo, &x, &y, &w, &h);
- evas_object_move(ctxpopup,
- ELM_SCALE_SIZE(x + w + CTXPOPUP_X),
- ELM_SCALE_SIZE(y + CTXPOPUP_Y));
-
+ evas_object_move(ctxpopup, ELM_SCALE_SIZE(x + w), ELM_SCALE_SIZE(y-30));
table = utils_add_table(ly, true, PART_USER_EDIT_ICON_LIST);
if (!table) {
_ERR("failed to add table");
if (!eo)
continue;
+ priv->table_item[i] = eo;
inputmgr_add_callback(eo, INPUT_HANDLER_TYPE_EO, &handler,
priv);
if (i == 0)
elm_object_focus_set(eo, EINA_TRUE);
}
+ _set_focus_icon_list(priv);
+
+ elm_object_focus_allow_set(priv->name, EINA_FALSE);
+ elm_object_focus_allow_set(priv->delete, EINA_FALSE);
+ elm_object_focus_allow_set(priv->done, EINA_FALSE);
+ elm_object_focus_allow_set(priv->cancel, EINA_FALSE);
elm_object_focus_allow_set(priv->photo, EINA_FALSE);
priv->ctxpopup = ctxpopup;
}
evas_object_del(priv->ctxpopup);
priv->ctxpopup = NULL;
+
+ elm_object_focus_allow_set(priv->name, EINA_TRUE);
elm_object_focus_allow_set(priv->photo, EINA_TRUE);
+ elm_object_focus_allow_set(priv->done, EINA_TRUE);
+ elm_object_focus_allow_set(priv->cancel, EINA_TRUE);
+ elm_object_focus_allow_set(priv->delete, EINA_TRUE);
}
static void _select_eo(struct _priv *priv, Evas_Object *obj)