raster pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=78c26e5f8defa77f53a4a1205052186043516db1

commit 78c26e5f8defa77f53a4a1205052186043516db1
Author: Carsten Haitzler (Rasterman) <[email protected]>
Date:   Thu Aug 8 23:53:18 2019 +0100

    e comp - dont send messages uselessly with same values to theme
    
    when border changes send then but not all the time. this drops some
    mebryo overhead i was seening.
---
 src/bin/e_comp_object.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index db4de0d40..b63d944c5 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -61,14 +61,16 @@ typedef struct _E_Comp_Object
    E_Client *ec;
 
    E_Comp_Object_Frame client_inset;
-   struct
-   {
+   struct {
       double          start;
       double          val;
       int             x, y;
       E_Direction     dir;
       Ecore_Animator *anim;
    } shade;
+   struct {
+      int             bx, by, bxx, byy;
+   } border;
 
    Eina_Stringshare   *frame_theme;
    Eina_Stringshare   *frame_name;
@@ -4141,11 +4143,17 @@ e_comp_object_dirty(Evas_Object *obj)
              bxx = -cw->client_inset.r, byy = -cw->client_inset.b;
           }
      }
+   if ((cw->border.bx != bx) || (cw->border.by != by) ||
+       (cw->border.bxx != bxx) || (cw->border.byy != byy))
    {
       Edje_Message_Int_Set *msg;
       Edje_Message_Int msg2;
       Eina_Bool id = (bx || by || bxx || byy);
 
+      cw->border.bx = bx;
+      cw->border.by = by;
+      cw->border.bxx = bxx;
+      cw->border.byy = byy;
       msg = alloca(sizeof(Edje_Message_Int_Set) + (sizeof(int) * 3));
       msg->count = 4;
       msg->val[0] = bx;

-- 


Reply via email to