Re: [E-devel] [EGIT] [core/enlightenment] master 01/01: fix pointer offset fpor older themes

2020-04-01 Thread The Rasterman
On Wed, 1 Apr 2020 15:16:37 -0400 Christopher Michael 
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) 
> > 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,
> > -, , NULL, NULL);
> > +   edje_object_part_geometry_get(ptr->o_ptr, "e.swallow.hotspot",
> > + , , 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,
> > -, , NULL, NULL);
> > +   edje_object_part_geometry_get(ptr->o_ptr, "e.swallow.hotspot",
> > + , , 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,
> > - , , NULL, NULL);
> > +edje_object_part_geometry_get(ptr->o_ptr, "e.swallow.hotspot",
> > +  , , 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
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> 


-- 
- Codito, ergo sum - "I code, therefore I am" --
Carsten Haitzler - ras...@rasterman.com



___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/enlightenment] master 01/01: fix pointer offset fpor older themes

2020-04-01 Thread Christopher Michael

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) 
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,
-, , NULL, NULL);
+   edje_object_part_geometry_get(ptr->o_ptr, "e.swallow.hotspot",
+ , , 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,
-, , NULL, NULL);
+   edje_object_part_geometry_get(ptr->o_ptr, "e.swallow.hotspot",
+ , , 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,

- , , NULL, NULL);
+edje_object_part_geometry_get(ptr->o_ptr, "e.swallow.hotspot",
+  , , 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
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel