elm_toolbar: use prepare to get focus into the items again
This commit is contained in:
parent
6acaf6350c
commit
d24c00d2be
|
@ -653,8 +653,6 @@ _resize_job(void *data)
|
||||||
eina_list_free(list);
|
eina_list_free(list);
|
||||||
|
|
||||||
_mirrored_set(obj, efl_ui_mirrored_get(obj));
|
_mirrored_set(obj, efl_ui_mirrored_get(obj));
|
||||||
|
|
||||||
_item_focus_eval_all(obj, sd);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -855,7 +853,7 @@ _elm_toolbar_item_elm_widget_item_focus_set(Eo *eo_it, Elm_Toolbar_Item_Data *it
|
||||||
if (!elm_object_focus_get(obj))
|
if (!elm_object_focus_get(obj))
|
||||||
elm_object_focus_set(obj, EINA_TRUE);
|
elm_object_focus_set(obj, EINA_TRUE);
|
||||||
|
|
||||||
if (!elm_widget_focus_get(obj))
|
if (!elm_object_focus_get(obj))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (eo_it != sd->focused_item)
|
if (eo_it != sd->focused_item)
|
||||||
|
@ -864,15 +862,18 @@ _elm_toolbar_item_elm_widget_item_focus_set(Eo *eo_it, Elm_Toolbar_Item_Data *it
|
||||||
_elm_toolbar_item_unfocused(sd->focused_item);
|
_elm_toolbar_item_unfocused(sd->focused_item);
|
||||||
_elm_toolbar_item_focused(eo_it);
|
_elm_toolbar_item_focused(eo_it);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!elm_widget_focus_get(obj))
|
if (!elm_object_focus_get(obj))
|
||||||
return;
|
return;
|
||||||
if (eo_it)
|
if (eo_it)
|
||||||
_elm_toolbar_item_unfocused(eo_it);
|
_elm_toolbar_item_unfocused(eo_it);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
evas_object_focus_set(VIEW(it), focused);
|
||||||
|
|
||||||
_elm_widget_item_highlight_in_theme(obj, EO_OBJ(it));
|
_elm_widget_item_highlight_in_theme(obj, EO_OBJ(it));
|
||||||
_elm_widget_highlight_in_theme_update(obj);
|
_elm_widget_highlight_in_theme_update(obj);
|
||||||
_elm_widget_focus_highlight_start(obj);
|
_elm_widget_focus_highlight_start(obj);
|
||||||
|
@ -4110,6 +4111,13 @@ elm_toolbar_icon_order_lookup_get(const Evas_Object *obj EINA_UNUSED)
|
||||||
return ELM_ICON_LOOKUP_FDO_THEME;
|
return ELM_ICON_LOOKUP_FDO_THEME;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EOLIAN static void
|
||||||
|
_elm_toolbar_efl_ui_focus_object_prepare_logical(Eo *obj, Elm_Toolbar_Data *pd)
|
||||||
|
{
|
||||||
|
_item_focus_eval_all(obj, pd);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Standard widget overrides */
|
/* Standard widget overrides */
|
||||||
|
|
||||||
ELM_WIDGET_KEY_DOWN_DEFAULT_IMPLEMENT(elm_toolbar, Elm_Toolbar_Data)
|
ELM_WIDGET_KEY_DOWN_DEFAULT_IMPLEMENT(elm_toolbar, Elm_Toolbar_Data)
|
||||||
|
|
|
@ -344,6 +344,7 @@ class Elm.Toolbar (Elm.Widget, Elm.Interface_Scrollable, Efl.Ui.Direction,
|
||||||
Efl.Ui.Menu.first_item { get; }
|
Efl.Ui.Menu.first_item { get; }
|
||||||
Efl.Ui.Menu.last_item { get; }
|
Efl.Ui.Menu.last_item { get; }
|
||||||
Efl.Ui.Menu.items { get; }
|
Efl.Ui.Menu.items { get; }
|
||||||
|
Efl.Ui.Focus.Object.prepare_logical;
|
||||||
}
|
}
|
||||||
events {
|
events {
|
||||||
item,focused; [[Called when toolbar item got focus]]
|
item,focused; [[Called when toolbar item got focus]]
|
||||||
|
|
Loading…
Reference in New Issue