fix minor glitches with edje box.
authorbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 10 Jul 2009 23:13:09 +0000 (23:13 +0000)
committerbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 10 Jul 2009 23:13:09 +0000 (23:13 +0000)
still missing:
  * box.max
  * proper handling of min/max, need to behave like text.

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/edje@41297 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/edje_calc.c
src/lib/edje_util.c

index 342d51a..41291a8 100644 (file)
@@ -1242,9 +1242,9 @@ _edje_box_recalc_apply(Edje *ed, Edje_Real_Part *ep, Edje_Calc_Params *p3, Edje_
        evas_object_smart_calculate(ep->object);
      }
    evas_object_size_hint_min_get(ep->object, &min_w, &min_h);
-   if (chosen_desc->box.min.h)
+   if (chosen_desc->box.min.h && (p3->w < min_w))
      p3->w = min_w;
-   if (chosen_desc->box.min.v)
+   if (chosen_desc->box.min.v && (p3->h < min_w))
      p3->h = min_h;
 }
 
index d2f9791..d5fdf31 100644 (file)
@@ -2732,11 +2732,11 @@ _edje_real_part_box_remove_all(Edje_Real_Part *rp, Eina_Bool clear)
    while (children)
      {
        Evas_Object *child_obj = children->data;
-       _edje_box_child_remove(rp, child_obj);
        if (evas_object_data_get(child_obj, "\377 edje.box_item"))
          i++;
        else
          {
+            _edje_box_child_remove(rp, child_obj);
             if (!evas_object_box_remove_at(rp->object, i))
               return EINA_FALSE;
             if (clear)