On Wed, 1 Apr 2020 15:16:37 -0400 Christopher Michael <[email protected]>
said:

i didn't. good catch. :)

> Did you mean to leave the 2 printf's in here (at the bottom) ??
> 
> 
> dh
> 
> 
> On 4/1/20 3:13 PM, Carsten Haitzler wrote:
> > raster pushed a commit to branch master.
> >
> > http://git.enlightenment.org/core/enlightenment.git/commit/?id=64f87877a6294ab46684f0da36ef7bc6f1dabe59
> >
> > commit 64f87877a6294ab46684f0da36ef7bc6f1dabe59
> > Author: Carsten Haitzler (Rasterman) <[email protected]>
> > Date:   Wed Apr 1 20:12:15 2020 +0100
> >
> >      fix pointer offset fpor older themes
> >      
> >      fixes T8622
> >      
> >      so due rto optimizations in edje it no longer moves/resizes invsible
> >      parts, so swallow a rect and it wont have moved if it is not visible
> >      thus tracking its geometry by getting the geometry of the swallowed
> >      part only works if its visible, so get the part geom from edje instead
> >      which has to give the calculated geom.
> > ---
> >   src/bin/e_pointer.c | 14 ++++++++------
> >   1 file changed, 8 insertions(+), 6 deletions(-)
> >
> > diff --git a/src/bin/e_pointer.c b/src/bin/e_pointer.c
> > index 61743a2cf..eca3afb7d 100644
> > --- a/src/bin/e_pointer.c
> > +++ b/src/bin/e_pointer.c
> > @@ -225,8 +225,8 @@ _e_pointer_cb_hot_move(void *data, Evas *evas
> > EINA_UNUSED, Evas_Object *obj EINA 
> >      if (!ptr->e_cursor) return;
> >      if (!evas_object_visible_get(ptr->o_ptr)) return;
> > -   evas_object_geometry_get(ptr->buffer_o_hot,
> > -                            &x, &y, NULL, NULL);
> > +   edje_object_part_geometry_get(ptr->o_ptr, "e.swallow.hotspot",
> > +                                 &x, &y, NULL, NULL);
> >      _e_pointer_hot_update(ptr, x, y);
> >   }
> >   
> > @@ -237,8 +237,8 @@ _e_pointer_cb_hot_show(void *data, Evas *evas
> > EINA_UNUSED, Evas_Object *obj EINA int x = 0, y = 0;
> >   
> >      if (!ptr->e_cursor) return;
> > -   evas_object_geometry_get(ptr->buffer_o_hot,
> > -                            &x, &y, NULL, NULL);
> > +   edje_object_part_geometry_get(ptr->o_ptr, "e.swallow.hotspot",
> > +                                 &x, &y, NULL, NULL);
> >      _e_pointer_hot_update(ptr, x, y);
> >   }
> >   
> > @@ -477,8 +477,8 @@ _e_pointer_type_set(E_Pointer *ptr, const char *type)
> >           _e_pointer_x11_setup(ptr, cursor);
> >           if (!cursor[0]) return;
> >   
> > -        evas_object_geometry_get(ptr->buffer_o_hot,
> > -                                 &x, &y, NULL, NULL);
> > +        edje_object_part_geometry_get(ptr->o_ptr, "e.swallow.hotspot",
> > +                                      &x, &y, NULL, NULL);
> >           _e_pointer_hot_update(ptr, x, y);
> >   
> >           if (ptr->canvas)
> > @@ -783,6 +783,7 @@ e_pointer_idler_before(void)
> >   #ifndef HAVE_WAYLAND_ONLY
> >                     Ecore_X_Cursor cur;
> >   
> > +                  printf("update cursor hot %i %i\n", ptr->hot.x,
> > ptr->hot.y); cur = ecore_x_cursor_new(ptr->win, ptr->pixels, ptr->w,
> >                                              ptr->h, ptr->hot.x,
> > ptr->hot.y); ecore_x_window_cursor_set(ptr->win, cur);
> > @@ -830,6 +831,7 @@ e_pointer_object_set(E_Pointer *ptr, Evas_Object *obj,
> > int x, int y) else if ((o != ptr->o_ptr) || (x != px) || (y != py))
> >        {
> >           ecore_evas_cursor_unset(ptr->ee);
> > +        printf("ecore_evas_obj ptr hot %i %i\n", ptr->hot.x, ptr->hot.y);
> >           ecore_evas_object_cursor_set(ptr->ee, ptr->o_ptr, E_LAYER_MAX -
> > 1, ptr->hot.x, ptr->hot.y); evas_object_show(ptr->o_ptr);
> >        }
> >
> 
> 
> _______________________________________________
> enlightenment-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
Carsten Haitzler - [email protected]



_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to