I kept the safety error message for easier debugging.
Test scenario:
elementary_test -to "Window Inline"
Click on an entry. Press Shift+Tab.
Ping @bu5hm4n
EOLIAN static void
_efl_ui_focus_manager_root_focus_efl_ui_focus_manager_focus_set(Eo *obj, Efl_Ui_Focus_Manager_Root_Focus_Data *pd, Efl_Ui_Focus_Object *focus)
{
+ EINA_SAFETY_ON_NULL_RETURN(focus);
efl_ui_focus_manager_focus_set(efl_super(obj, MY_CLASS), _trap(pd, focus));
}
do {
last = efl_ui_focus_manager_logical_end(rec_manager);
+ EINA_SAFETY_ON_NULL_GOTO(last.element, end);
efl_ui_focus_manager_focus_set(rec_manager, last.element);
rec_manager = efl_ui_focus_manager_redirect_get(rec_manager);
} while (!last.is_regular_end);
}
+end:
return EINA_TRUE;
}
Eina_Rectangle geom;
int pan_x, pan_y;
+ EINA_SAFETY_ON_NULL_RETURN(focus);
efl_ui_focus_manager_focus_set(efl_super(obj, MY_SCROLLABLE_INTERFACE), focus);
- if (!focus) return;
-
evas_object_geometry_get(focus, &geom.x, &geom.y, &geom.w, &geom.h);
elm_obj_pan_pos_get(pd->pan_obj, &pan_x, &pan_y);
geom.x = geom.x + pan_x;