forked from enlightenment/efl
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
This commit is contained in:
parent
a1141d8378
commit
1af62db8f8
|
@ -1132,13 +1132,14 @@ _evas_pointer_data_by_device_get(Evas_Public_Data *edata, Efl_Input_Device *poin
|
||||||
{
|
{
|
||||||
Eina_List *l;
|
Eina_List *l;
|
||||||
Evas_Pointer_Data *pdata;
|
Evas_Pointer_Data *pdata;
|
||||||
|
Efl_Input_Device *seat = NULL;
|
||||||
|
|
||||||
if (!pointer)
|
if (pointer) seat = efl_input_device_seat_get(pointer);
|
||||||
pointer = edata->default_mouse;
|
if (!seat) seat = edata->default_seat;
|
||||||
|
|
||||||
EINA_LIST_FOREACH(edata->pointers, l, pdata)
|
EINA_LIST_FOREACH(edata->pointers, l, pdata)
|
||||||
{
|
{
|
||||||
if (pdata->pointer == pointer)
|
if (pdata->seat->seat == seat)
|
||||||
return pdata;
|
return pdata;
|
||||||
}
|
}
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
Loading…
Reference in New Issue