I have an upcoming patch which further modifies this behavior, and it may cause a regression here since I don't know what the original issue was.
On Thu, Jun 15, 2017 at 9:53 PM Jean-Philippe André <[email protected]> wrote: > On 15 June 2017 at 22:08, Mike Blumenkrantz < > [email protected]> > wrote: > > > I considered making this change, but I'm not sure it's viable to keep > this > > unless we are agreeing to never send pointer devices with events; this > > change breaks all assumptions which could be made by current users of the > > device api since it will result in "random" devices being used if > multiple > > pointers exist for a seat. > > > > Indeed. And this brings us back to T5515. > For this specific change I could have first looked for the pointer and then > the seat. Maybe a seat could have a primary pointer, so that one would be > used if we don't have a specific pointer info. But this would still not be > a perfect solution. The problem is that the info about the original device > is lost when going from ecore_evas to evas and back to ecore_evas_buffer. > Honestly I'm not sure what we should do. > > > > > > > On Thu, Jun 15, 2017 at 7:31 AM Jean-Philippe ANDRÉ <[email protected]> > > wrote: > > > > > jpeg pushed a commit to branch master. > > > > > > > > > http://git.enlightenment.org/core/efl.git/commit/?id= > > 1af62db8f8e80b58864320cc47c53e0d19bd73d2 > > > > > > commit 1af62db8f8e80b58864320cc47c53e0d19bd73d2 > > > Author: Jean-Philippe Andre <[email protected]> > > > Date: Thu Jun 15 20:26:54 2017 +0900 > > > > > > evas: Fix mouse events in inlined windows > > > > > > There is a mismatch between seat & pointer. > > > See @zmike's comments in T5515. Having both seat and pointer > > > devices as different devices leads to these kinds of issues. > > > Really annoying. > > > > > > Ref T5515 > > > --- > > > src/lib/evas/canvas/evas_main.c | 7 ++++--- > > > 1 file changed, 4 insertions(+), 3 deletions(-) > > > > > > diff --git a/src/lib/evas/canvas/evas_main.c > > > b/src/lib/evas/canvas/evas_main.c > > > index ea3e5daa4e..1e3452e892 100644 > > > --- a/src/lib/evas/canvas/evas_main.c > > > +++ b/src/lib/evas/canvas/evas_main.c > > > @@ -1132,13 +1132,14 @@ _evas_pointer_data_by_device_ > > get(Evas_Public_Data > > > *edata, Efl_Input_Device *poin > > > { > > > Eina_List *l; > > > Evas_Pointer_Data *pdata; > > > + Efl_Input_Device *seat = NULL; > > > > > > - if (!pointer) > > > - pointer = edata->default_mouse; > > > + if (pointer) seat = efl_input_device_seat_get(pointer); > > > + if (!seat) seat = edata->default_seat; > > > > > > EINA_LIST_FOREACH(edata->pointers, l, pdata) > > > { > > > - if (pdata->pointer == pointer) > > > + if (pdata->seat->seat == seat) > > > return pdata; > > > } > > > return NULL; > > > > > > -- > > > > > > > > > > > ------------------------------------------------------------ > > ------------------ > > Check out the vibrant tech community on one of the world's most > > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > _______________________________________________ > > enlightenment-devel mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > > > > > > -- > Jean-Philippe André > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > enlightenment-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
