diff --git a/legacy/edje/ChangeLog b/legacy/edje/ChangeLog index e4f53e1764..64b6a99e36 100644 --- a/legacy/edje/ChangeLog +++ b/legacy/edje/ChangeLog @@ -386,3 +386,5 @@ 2012-03-07 Cedric Bail * Correctly count and propagate preload signal with GROUP. + * Fix rotation with fixed point. + diff --git a/legacy/edje/NEWS b/legacy/edje/NEWS index 01b76769b1..2f00d0a4e8 100644 --- a/legacy/edje/NEWS +++ b/legacy/edje/NEWS @@ -24,6 +24,7 @@ Improvements: Fixes: * Correctly count and propagate preload signal with GROUP. + * Fix rotation with fixed point. Changes since Edje 1.0.0: ------------------------- diff --git a/legacy/edje/src/lib/edje_calc.c b/legacy/edje/src/lib/edje_calc.c index 0484b67edb..2738cb5fc5 100644 --- a/legacy/edje/src/lib/edje_calc.c +++ b/legacy/edje/src/lib/edje_calc.c @@ -1809,9 +1809,9 @@ _edje_part_recalc_single_map(Edje *ed, } params->map.center.z = 0; - params->map.rotation.x = TO_DOUBLE(desc->map.rot.x); - params->map.rotation.y = TO_DOUBLE(desc->map.rot.y); - params->map.rotation.z = TO_DOUBLE(desc->map.rot.z); + params->map.rotation.x = desc->map.rot.x; + params->map.rotation.y = desc->map.rot.y; + params->map.rotation.z = desc->map.rot.z; if (light) { @@ -2831,7 +2831,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta } evas_map_util_3d_rotate(map, - pf->map.rotation.x, pf->map.rotation.y, pf->map.rotation.z, + TO_DOUBLE(pf->map.rotation.x), TO_DOUBLE(pf->map.rotation.y), TO_DOUBLE(pf->map.rotation.z), pf->map.center.x, pf->map.center.y, pf->map.center.z); // calculate light color & position etc. if there is one diff --git a/legacy/edje/src/lib/edje_private.h b/legacy/edje/src/lib/edje_private.h index 9636129107..8fbc4af137 100644 --- a/legacy/edje/src/lib/edje_private.h +++ b/legacy/edje/src/lib/edje_private.h @@ -1202,7 +1202,7 @@ struct _Edje_Calc_Params int x, y, z; } center; // 12 struct { - double x, y, z; + FLOAT_T x, y, z; } rotation; // 24 struct { int x, y, z;