This defines the widget as a focus layer.
A focus layer is the uppermost widget which receives input and handles all focus related events for as long as it exists and is visible. It's not possible to escape this layer with focus movements.
Once the object is hidden or destroyed the focus will go back to the main window, where it was before.
⇒ Efl.Ui.Widget_Focus_Manager (mixin) ⇒ Efl.Ui.Focus.Manager (interface)
constructor [Overridden from Efl.Object]
Efl_Object *efl_constructor(Eo *obj);
focus_manager (get) [Overridden from Efl.Ui.Focus.Object]
Efl_Ui_Focus_Manager *efl_ui_focus_object_focus_manager_get(const Eo *obj);
focus_parent (get) [Overridden from Efl.Ui.Focus.Object]
Efl_Ui_Focus_Object *efl_ui_focus_object_focus_parent_get(const Eo *obj);
invalidate [Overridden from Efl.Object]
void efl_invalidate(Eo *obj);
move [Overridden from Efl.Ui.Focus.Manager]
Moves the focus in the given direction to the next regular widget.
Efl_Ui_Focus_Object *efl_ui_focus_manager_move(Eo *obj, Efl_Ui_Focus_Direction direction);
visible (get, set) [Overridden from Efl.Gfx.Entity]
Eina_Bool efl_gfx_entity_visible_get(const Eo *obj); void efl_gfx_entity_visible_set(Eo *obj, Eina_Bool v);
behaviour (get, set) protected
Sets the behaviour of the focus layer.
void efl_ui_focus_layer_behaviour_get(const Eo *obj, Eina_Bool *enable_on_visible, Eina_Bool *cycle); void efl_ui_focus_layer_behaviour_set(Eo *obj, Eina_Bool enable_on_visible, Eina_Bool cycle);
enable (get, set) protected
Whether the focus layer is enabled. This can be handled automatically through Efl.Gfx.Entity.visible and Efl.Ui.Focus.Layer.behaviour.
Eina_Bool efl_ui_focus_layer_enable_get(const Eo *obj); void efl_ui_focus_layer_enable_set(Eo *obj, Eina_Bool v);
focus_manager_create protected
[Overridden from Efl.Ui.Widget_Focus_Manager]
If the widget needs a focus manager, this function will be called.
Efl_Ui_Focus_Manager *efl_ui_widget_focus_manager_create(Eo *obj, Efl_Ui_Focus_Object *root);
focus_state_apply protected
[Overridden from Efl.Ui.Widget]
Eina_Bool efl_ui_widget_focus_state_apply(Eo *obj, Efl_Ui_Widget_Focus_State current_state, Efl_Ui_Widget_Focus_State configured_state, Efl_Ui_Widget *redirect);
Efl.Ui.Focus.Manager | ||
---|---|---|
border_elements (get) | ||
dirty_logic_freeze | Disables the cache invalidation when an object is moved. | |
dirty_logic_unfreeze | Enables the cache invalidation when an object is moved. | |
fetch | Fetches the data from a registered node. | |
logical_end | Returns the last logical object. | |
manager_focus (get, set) | The element which is currently focused by this manager. | |
pop_history_stack | Removes the uppermost history element, and focuses the previous one. | |
redirect (get, set) | Add another manager to serve the move requests. | |
request_move | Returns the object in the direction from child . |
|
request_subchild | Returns the widget in the direction next. | |
reset_history | Resets the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list. | |
root (get, set) | Root node for all logical sub-trees. | |
setup_on_first_touch | Called when this manager is set as redirect. | |
viewport_elements (get) | ||
Efl.Ui.Widget_Focus_Manager | ||
destructor |
Efl.Ui.Focus.Manager | ||
---|---|---|
coords,dirty | Cached relationship calculation results have been invalidated. | |
dirty_logic_freeze,changed | Called when this focus manager is frozen or thawed, even_info being true indicates that it is now frozen, false indicates that it is thawed. |
|
flush,pre | After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion. | |
manager_focus,changed | The manager_focus property has changed. The previously focused object is passed as an event argument. | |
redirect,changed | Redirect object has changed, the old manager is passed as an event argument. |