efl_ui_focus_manager: give feedback if setting root worked or not

so a potential caller can make sure if the set of root worked or not
This commit is contained in:
Marcel Hollerbach 2017-04-30 11:25:17 +02:00
parent 0ebe80fa0b
commit 059239a997
2 changed files with 12 additions and 2 deletions

View File

@ -1314,7 +1314,7 @@ _efl_ui_focus_manager_move(Eo *obj EINA_UNUSED, Efl_Ui_Focus_Manager_Data *pd, E
return candidate;
}
EOLIAN static void
EOLIAN static Eina_Bool
_efl_ui_focus_manager_root_set(Eo *obj EINA_UNUSED, Efl_Ui_Focus_Manager_Data *pd, Efl_Ui_Focus_Object *root)
{
Node *node;
@ -1322,13 +1322,15 @@ _efl_ui_focus_manager_root_set(Eo *obj EINA_UNUSED, Efl_Ui_Focus_Manager_Data *p
if (pd->root)
{
ERR("Root element can only be set once!");
return;
return EINA_FALSE;
}
node = _register(obj, pd, root, NULL);
node->type = NODE_TYPE_ONLY_LOGICAL;
pd->root = node;
return EINA_TRUE;
}
EOLIAN static Efl_Ui_Focus_Object*

View File

@ -180,6 +180,14 @@ class Efl.Ui.Focus.Manager (Efl.Object) {
This property can only be set once.
]]
set {
return : bool;
}
get {
}
values {
root : Efl.Ui.Focus.Object @nonull; [[Will be registered into
this manager object.]]