summaryrefslogtreecommitdiff
path: root/src/lib/elementary/efl_ui_popup_alert_scroll.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/elementary/efl_ui_popup_alert_scroll.c')
-rw-r--r--src/lib/elementary/efl_ui_popup_alert_scroll.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/lib/elementary/efl_ui_popup_alert_scroll.c b/src/lib/elementary/efl_ui_popup_alert_scroll.c
index ac57b3d6b4..ab06d654ab 100644
--- a/src/lib/elementary/efl_ui_popup_alert_scroll.c
+++ b/src/lib/elementary/efl_ui_popup_alert_scroll.c
@@ -17,8 +17,6 @@ _scroller_sizing_eval(Eo *obj, Efl_Ui_Popup_Alert_Scroll_Data *pd, Eina_Size2D m
{
Eina_Rect geom = efl_gfx_geometry_get(obj);
- pd->is_sizing_eval = EINA_TRUE;
-
if (pd->is_expandable_w && !pd->is_expandable_h)
{
if ((pd->max_scroll.w > -1) && (min.w > pd->max_scroll.w))
@@ -47,21 +45,26 @@ _scroller_sizing_eval(Eo *obj, Efl_Ui_Popup_Alert_Scroll_Data *pd, Eina_Size2D m
if (wdir && !hdir)
{
elm_scroller_content_min_limit(pd->scroller, EINA_FALSE, EINA_TRUE);
- efl_gfx_size_set(obj, EINA_SIZE2D(pd->max_scroll.w, geom.h));
+ efl_gfx_size_set(obj, EINA_SIZE2D(pd->max_scroll.w, min.h));
}
else if (!wdir && hdir)
{
elm_scroller_content_min_limit(pd->scroller, EINA_TRUE, EINA_FALSE);
- efl_gfx_size_set(obj, EINA_SIZE2D(geom.w, pd->max_scroll.h));
+ efl_gfx_size_set(obj, EINA_SIZE2D(min.w, pd->max_scroll.h));
}
else if(wdir && hdir)
{
elm_scroller_content_min_limit(pd->scroller, EINA_FALSE, EINA_FALSE);
efl_gfx_size_set(obj, pd->max_scroll);
}
+ else
+ {
+ Eina_Size2D new_size;
+ new_size.w = min.w > geom.w ? min.w : geom.w;
+ new_size.h = min.h > geom.h ? min.h : geom.h;
+ efl_gfx_size_set(obj, new_size);
+ }
}
-
- pd->is_sizing_eval = EINA_FALSE;
}
EOLIAN static void
@@ -69,8 +72,6 @@ _efl_ui_popup_alert_scroll_elm_layout_sizing_eval(Eo *obj, Efl_Ui_Popup_Alert_Sc
{
if (pd->is_sizing_eval) return;
- elm_layout_sizing_eval(efl_super(obj, MY_CLASS));
-
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
Evas_Coord minw = -1, minh = -1;