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; --
