While doing some digging as to why evas_object_resize was taking a lot longer than evas_object_move, I noticed that evas_object_move is NOT calling evas_object_recalc_clippees unless the obj->layer->evas->events_frozen <= 0.

I compared the code with what is in evas_object_resize and noticed that evas_object_resize is calling evas_object_recalc_clippees regardless if events were frozen or not. I've attached a patch that makes evas_object_resize work like evas_object_move in this regard.

I have tested this patch with E and also with Elementary and did not notice any artifacts or problems.

I currently do not have ewl or etk installed so I did not test with those, but if someone else has those installed and is brave enough, please feel free to test this patch.

I did NOT do a direct commit on this as evas is a very core part of EFL and I did not want to purposely break things without 1) more testing & 2) confirmation/approval from people that know evas better than myself...

Anyway, the patch is attached. Please report any issues that are found...

Cheers,
dh
Index: evas_object_main.c
===================================================================
--- evas_object_main.c  (revision 41626)
+++ evas_object_main.c  (working copy)
@@ -511,14 +511,15 @@
                                              obj->layer->evas->pointer.x,
                                              obj->layer->evas->pointer.y, 1, 
1);
      }
+
    obj->cur.geometry.w = w;
    obj->cur.geometry.h = h;
 ////   obj->cur.cache.geometry.validity = 0;
    evas_object_change(obj);
    evas_object_clip_dirty(obj);
-   evas_object_recalc_clippees(obj);
    if (obj->layer->evas->events_frozen <= 0)
      {
+        evas_object_recalc_clippees(obj);
        //   if (obj->func->coords_recalc) obj->func->coords_recalc(obj);
        if (!pass)
          {
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to