Evas_Coord_Rectangle *hover_area);
static Elm_Ctxpopup_Direction _calc_base_geometry(Evas_Object *obj,
Evas_Coord_Rectangle *rect);
-static void _update_arrow(Evas_Object *obj, Elm_Ctxpopup_Direction dir);
+static void _update_arrow(Evas_Object *obj, Elm_Ctxpopup_Direction dir, Evas_Coord_Rectangle rect);
static void _sizing_eval(Evas_Object *obj);
static void _shift_base_by_arrow(Evas_Object *arrow,
Elm_Ctxpopup_Direction dir,
}
static void
-_update_arrow(Evas_Object *obj, Elm_Ctxpopup_Direction dir)
+_update_arrow(Evas_Object *obj, Elm_Ctxpopup_Direction dir, Evas_Coord_Rectangle base_size)
{
Evas_Coord x, y;
Evas_Coord_Rectangle arrow_size;
- Evas_Coord_Rectangle base_size;
Widget_Data *wd;
double drag;
evas_object_geometry_get(obj, &x, &y, NULL, NULL);
evas_object_geometry_get(wd->arrow, NULL, NULL, &arrow_size.w,
&arrow_size.h);
- evas_object_geometry_get(wd->base, &base_size.x, &base_size.y,
- &base_size.w, &base_size.h);
edje_object_part_unswallow(wd->base, wd->arrow);
//Base
wd->dir = _calc_base_geometry(obj, &rect);
_show_signal_emit(obj, wd->dir);
- _update_arrow(obj, wd->dir);
+ _update_arrow(obj, wd->dir, rect);
_shift_base_by_arrow(wd->arrow, wd->dir, &rect);
//resize scroller according to final size.