path: root/src/lib/elementary/elc_naviframe.c
diff options
authorMike Blumenkrantz <>2019-07-30 13:11:48 -0400
committerMike Blumenkrantz <>2019-07-30 13:12:52 -0400
commit7e517e2a1196207bbfe76ce9ab12be3093d9afc5 (patch)
tree106c98b6ad2720f0504b7d254e4efdfcd4cec253 /src/lib/elementary/elc_naviframe.c
parent586f41f92772ab789364bcd788e7717f92ba86de (diff)
elm/efl_ui: remove elm_layout_sizing_eval implementations
Summary: historically there have been two methods of calculating sizes in elm: * elm_layout_sizing_eval * evas_object_smart_calculate (now efl_canvas_group_calculate) the former was used to set size hints on widgets, while the latter was used to perform internal size calcs for the widget. for things to work correctly, these functions had to be triggered in just the right order at just the right time. many hard-to-fix bugs related to widget sizing over the years have been the result of this split this patch removes elm_layout_sizing_eval implementations so that all widgets perform both internal size calcs and size hint setting all in the same function, ensuring that these are always in sync the result is that in the vast majority of cases, far fewer recalcs happen for widgets, and they are quicker to achieve their final size Depends on D9438 Reviewers: bu5hm4n Reviewed By: bu5hm4n Subscribers: bu5hm4n, cedric, #reviewers, #committers Tags: #efl_widgets Maniphest Tasks: T8059 Differential Revision:
Diffstat (limited to 'src/lib/elementary/elc_naviframe.c')
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/elementary/elc_naviframe.c b/src/lib/elementary/elc_naviframe.c
index 862edec..b14f679 100644
--- a/src/lib/elementary/elc_naviframe.c
+++ b/src/lib/elementary/elc_naviframe.c
@@ -908,7 +908,7 @@ _elm_naviframe_item_elm_widget_item_signal_emit(Eo *eo_it EINA_UNUSED,
908} 908}
909 909
910EOLIAN static void 910EOLIAN static void
911_elm_naviframe_elm_layout_sizing_eval(Eo *obj, Elm_Naviframe_Data *sd) 911_elm_naviframe_efl_canvas_group_calculate(Eo *obj, Elm_Naviframe_Data *sd)
912{ 912{
913 Evas_Coord minw = 0, minh = 0; 913 Evas_Coord minw = 0, minh = 0;
914 Elm_Naviframe_Item_Data *it, *top; 914 Elm_Naviframe_Item_Data *it, *top;
@@ -2047,7 +2047,7 @@ ELM_PART_OVERRIDE_TEXT_GET(elm_naviframe, ELM_NAVIFRAME, Elm_Naviframe_Data)
2047/* Internal EO APIs and hidden overrides */ 2047/* Internal EO APIs and hidden overrides */
2048 2048
2050 ELM_LAYOUT_SIZING_EVAL_OPS(elm_naviframe), \ 2050 EFL_CANVAS_GROUP_CALC_OPS(elm_naviframe), \
2051 EFL_CANVAS_GROUP_ADD_DEL_OPS(elm_naviframe) 2051 EFL_CANVAS_GROUP_ADD_DEL_OPS(elm_naviframe)
2052 2052
2053#include "elm_naviframe_item_eo.c" 2053#include "elm_naviframe_item_eo.c"