forked from enlightenment/efl
Evas.Table: Apply mirrored correctly when align is set
Summary: When table items are left aligned and mirrored is set, items should be placed from the right side, but align is not changed. (still left-aligned) @fix Test Plan: make and run attached example Reviewers: cedric, jpeg Subscribers: thiepha, woohyun Differential Revision: https://phab.enlightenment.org/D4758
This commit is contained in:
parent
abd71b2cfc
commit
7ba0707851
|
@ -785,12 +785,14 @@ _evas_object_table_calculate_layout_regular(Evas_Object *o, Evas_Table_Data *pri
|
|||
Eina_List *l;
|
||||
Evas_Coord *cols = NULL, *rows = NULL;
|
||||
Evas_Coord x, y, w, h;
|
||||
Evas_Coord totw;
|
||||
|
||||
c = priv->cache;
|
||||
if (!c) return;
|
||||
|
||||
c->ref++;
|
||||
evas_object_geometry_get(o, &x, &y, &w, &h);
|
||||
totw = w;
|
||||
|
||||
/* handle horizontal */
|
||||
if ((c->total.expands.h <= 0) || (c->total.min.w >= w))
|
||||
|
@ -857,7 +859,7 @@ _evas_object_table_calculate_layout_regular(Evas_Object *o, Evas_Table_Data *pri
|
|||
|
||||
if (priv->is_mirrored)
|
||||
{
|
||||
evas_object_move(opt->obj, x + w - (cx - x + cw), cy);
|
||||
evas_object_move(opt->obj, x + w + 2 * (0.5 - priv->align.h) * (totw - w) - (cx - x + cw), cy);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue