summaryrefslogtreecommitdiff
path: root/src/lib/ecore_input_evas
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/ecore_input_evas')
-rw-r--r--src/lib/ecore_input_evas/ecore_input_evas.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/lib/ecore_input_evas/ecore_input_evas.c b/src/lib/ecore_input_evas/ecore_input_evas.c
index 28d06e06e0..7866bd5d9a 100644
--- a/src/lib/ecore_input_evas/ecore_input_evas.c
+++ b/src/lib/ecore_input_evas/ecore_input_evas.c
@@ -531,6 +531,9 @@ _ecore_event_evas_mouse_button(Ecore_Event_Mouse_Button *e, Ecore_Event_Press pr
531 531
532 if (e->multi.device == 0) 532 if (e->multi.device == 0)
533 { 533 {
534 ecore_event_evas_seat_modifier_lock_update(lookup->evas,
535 e->modifiers,
536 efl_input_device_seat_get(e->dev));
534 if (press == ECORE_DOWN) 537 if (press == ECORE_DOWN)
535 { 538 {
536 if (!lookup->direct || 539 if (!lookup->direct ||
@@ -610,6 +613,9 @@ ecore_event_evas_mouse_move(void *data EINA_UNUSED, int type EINA_UNUSED, void *
610 if (e->multi.device == 0) 613 if (e->multi.device == 0)
611 { 614 {
612 _ecore_event_evas_push_mouse_move(e); 615 _ecore_event_evas_push_mouse_move(e);
616 ecore_event_evas_seat_modifier_lock_update(lookup->evas,
617 e->modifiers,
618 efl_input_device_seat_get(e->dev));
613 if (!lookup->direct || 619 if (!lookup->direct ||
614 !lookup->direct(lookup->window, ECORE_EVENT_MOUSE_MOVE, e)) 620 !lookup->direct(lookup->window, ECORE_EVENT_MOUSE_MOVE, e))
615 { 621 {
@@ -668,6 +674,9 @@ _ecore_event_evas_mouse_io(Ecore_Event_Mouse_IO *e, Ecore_Event_IO io)
668 674
669 lookup = _ecore_event_window_match(e->event_window); 675 lookup = _ecore_event_window_match(e->event_window);
670 if (!lookup) return ECORE_CALLBACK_PASS_ON; 676 if (!lookup) return ECORE_CALLBACK_PASS_ON;
677 ecore_event_evas_seat_modifier_lock_update(lookup->evas,
678 e->modifiers,
679 efl_input_device_seat_get(e->dev));
671 switch (io) 680 switch (io)
672 { 681 {
673 case ECORE_IN: 682 case ECORE_IN:
@@ -713,6 +722,8 @@ ecore_event_evas_mouse_wheel(void *data EINA_UNUSED, int type EINA_UNUSED, void
713 e = event; 722 e = event;
714 lookup = _ecore_event_window_match(e->event_window); 723 lookup = _ecore_event_window_match(e->event_window);
715 if (!lookup) return ECORE_CALLBACK_PASS_ON; 724 if (!lookup) return ECORE_CALLBACK_PASS_ON;
725 ecore_event_evas_seat_modifier_lock_update(lookup->evas, e->modifiers,
726 efl_input_device_seat_get(e->dev));
716 if (!lookup->direct || 727 if (!lookup->direct ||
717 !lookup->direct(lookup->window, ECORE_EVENT_MOUSE_WHEEL, e)) 728 !lookup->direct(lookup->window, ECORE_EVENT_MOUSE_WHEEL, e))
718 { 729 {