aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/elc_hoversel.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/elc_hoversel.c')
-rw-r--r--src/lib/elc_hoversel.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/lib/elc_hoversel.c b/src/lib/elc_hoversel.c
index ab7271a8e..20285c432 100644
--- a/src/lib/elc_hoversel.c
+++ b/src/lib/elc_hoversel.c
@@ -334,9 +334,20 @@ _resizing_eval(Evas_Object *obj, Elm_Hoversel_Data *sd)
if (xx < 0) xx = x;
if ((xx + ww) > (x + w))
- ww = (x + w) - xx;
+ {
+ if ((obj_x + obj_w - x) > ((x + w) - obj_x))
+ {
+ elm_layout_signal_emit(sd->hover, "elm,state,align,right", "elm");
+ if ((obj_x + obj_w - ww) < x)
+ ww = obj_x + obj_w - x;
+ }
+ else
+ {
+ elm_layout_signal_emit(sd->hover, "elm,state,align,default", "elm");
+ ww = (x + w) - xx;
+ }
+ }
}
-
evas_object_size_hint_min_set(sd->spacer, ww, hh);
}