cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=c567f0ba9f2ebb77f82c232dfb88ff235c0e224a
commit c567f0ba9f2ebb77f82c232dfb88ff235c0e224a Author: Jaehwan Kim <[email protected]> Date: Sat Oct 18 13:56:30 2014 +0200 edje: fix the image set bug. Summary: Before using the parameter ep->param1.set, it should be set. Test Plan: diff --git a/data/themes/edc/elm/button.edc b/data/themes/edc/elm/button.edc index 097ce85..34a2b98 100644 --- a/data/themes/edc/elm/button.edc +++ b/data/themes/edc/elm/button.edc @@ -3,6 +3,15 @@ group { name: "elm/button/base/default"; alias: "elm/button/base/naviframe/back_btn/pager"; images.image: "button_normal.png" COMP; images.image: "button_clicked.png" COMP; + images { + set { + name: "button_normal"; + image { + image: "button_normal.png" COMP; + size: 0 0 9999 9999; + } + } + } #define ICON 1 #define LABEL 2 #define MASK 3 @@ -74,7 +83,7 @@ group { name: "elm/button/base/default"; parts { image { "base"; nomouse; desc { "default"; - image.normal: "button_normal.png"; + image.normal: "button_normal"; image.border: 4 4 3 5; image.middle: SOLID; rel1.offset: -1 0; and print the value ep->param1.set about "base" part of "elm/button/base/default" group before it is used. It has a NULL at first time. Reviewers: raster, jinsol, herb, cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D1516 Signed-off-by: Cedric BAIL <[email protected]> --- src/lib/edje/edje_calc.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c index 851c15e..9cfcce5 100644 --- a/src/lib/edje/edje_calc.c +++ b/src/lib/edje/edje_calc.c @@ -9,7 +9,7 @@ static void _edje_part_recalc_single(Edje *ed, Edje_Real_Part *ep, Edje_Real_Part *rel1_to_x, Edje_Real_Part *rel1_to_y, Edje_Real_Part *rel2_to_x, Edje_Real_Part *rel2_to_y, Edje_Real_Part *confine_to, Edje_Real_Part *threshold, - Edje_Calc_Params *params, Edje_Real_Part_Set *set, + Edje_Calc_Params *params, Evas_Coord mmw, Evas_Coord mmh, FLOAT_T pos); @@ -2258,7 +2258,6 @@ _edje_part_recalc_single(Edje *ed, Edje_Real_Part *confine_to, Edje_Real_Part *threshold, Edje_Calc_Params *params, - Edje_Real_Part_Set *set, Evas_Coord mmw, Evas_Coord mmh, FLOAT_T pos) { @@ -2312,8 +2311,11 @@ _edje_part_recalc_single(Edje *ed, { case EDJE_PART_TYPE_IMAGE: { + Edje_Real_Part_Set *set; Edje_Part_Description_Image *img_desc = (Edje_Part_Description_Image*) desc; + _edje_real_part_image_set(ed, ep, pos); + /* border */ params->type.common.spec.image.l = img_desc->image.border.l; params->type.common.spec.image.r = img_desc->image.border.r; @@ -2323,6 +2325,7 @@ _edje_part_recalc_single(Edje *ed, params->type.common.spec.image.border_scale_by = img_desc->image.border.scale_by; + set = ep->param1.set; if (set && set->set) { #define SET_BORDER_DEFINED(Result, Value) Result = Value ? Value : Result; @@ -3391,7 +3394,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta chosen_desc, center[0], light[0], persp[0], rp1[Rel1X], rp1[Rel1Y], rp1[Rel2X], rp1[Rel2Y], confine_to, - threshold, p1, ep->param1.set, mmw, mmh, + threshold, p1, mmw, mmh, pos); #ifdef EDJE_CALC_CACHE if (flags == FLAG_XY) ep->param1.state = ed->state; @@ -3460,7 +3463,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta chosen_desc, center[1], light[1], persp[1], rp2[Rel1X], rp2[Rel1Y], rp2[Rel2X], rp2[Rel2Y], confine_to, - threshold, p2, ep->param2->set, mmw, mmh, + threshold, p2, mmw, mmh, pos); #ifdef EDJE_CALC_CACHE if (flags == FLAG_XY) ep->param2->state = ed->state; --
