edje: be recursive on edje_object_scale_set
authorMichaël Bouchaud (yoz) <yoz@efl.so>
Wed, 4 Sep 2013 10:06:03 +0000 (12:06 +0200)
committerMichaël Bouchaud (yoz) <yoz@efl.so>
Wed, 4 Sep 2013 10:06:03 +0000 (12:06 +0200)
ChangeLog
src/lib/edje/edje_util.c

index 1a50d14..27c321a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-09-04  Michael Bouchaud (yoz)
+
+        * fix edje_object_scale_set to be recursive
+
 2013-09-03  Tom Hacohen
 
        * Evas textblock: fixed an issue with markup_get and markup_to_utf8
index ac65f54..ae925c0 100644 (file)
@@ -363,7 +363,7 @@ _scale_set(Eo *obj, void *_pd, va_list *list)
    double scale = va_arg(*list, double);
    Eina_Bool *ret = va_arg(*list, Eina_Bool *);
    if (ret) *ret = EINA_TRUE;
-   Edje *ed, *ged;
+   Edje *ed;
    Evas_Object *o;
    Eina_List *l;
    unsigned int i;
@@ -371,12 +371,10 @@ _scale_set(Eo *obj, void *_pd, va_list *list)
    ed = _pd;
    if (ed->scale == scale) return;
    ed->scale = FROM_DOUBLE(scale);
-   EINA_LIST_FOREACH(ed->groups, l, ged)
-     ged->scale = ed->scale;
    EINA_LIST_FOREACH(ed->subobjs, l, o)
      {
         const char *s = evas_object_type_get(o);
-        if ((s) && (!strcmp(s, "edje"))) edje_object_calc_force(o);
+        if ((s) && (!strcmp(s, "edje"))) edje_object_scale_set(o, scale);
      }
    for (i = 0; i < ed->table_parts_size; i++)
      {