diff options
author | Povilas Kanapickas <povilas@radix.lt> | 2022-02-05 18:52:48 +0200 |
---|---|---|
committer | Povilas Kanapickas <povilas@radix.lt> | 2022-02-05 19:13:32 +0200 |
commit | b3986884ccf82da894fa967c1f60a3336a5faf36 (patch) | |
tree | 464d1ea004b69b8ad4bde8eed4967d5f452f9e3d | |
parent | 4c2d751df9db11e8ea14dc60bf936a8aa56227f7 (diff) |
grab: Update tests for change of touch and async grab interaction
This test covers
https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/866 which
fixes https://gitlab.freedesktop.org/xorg/xserver/-/issues/1255.
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
-rw-r--r-- | tests/server/grab.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/tests/server/grab.cpp b/tests/server/grab.cpp index 4d1226c..005548d 100644 --- a/tests/server/grab.cpp +++ b/tests/server/grab.cpp @@ -1374,7 +1374,7 @@ TEST_F(TouchGrabTest, AsyncGrabSameClientAfterTouchBegunNoTouchesInGrabMaskUngra "The selection of C1 takes precedence over the selection of C2.\n" "A touch begins.\n" "Client C1 creates an active async grab without touch events in the mask\n" - "The touch end event is immediately sent to client C1." + "The touch end event is *not* sent to client C1." "Touch is updated, but all events related to it should be discarded.\n" "C2 does not get any events.\n"); @@ -1404,7 +1404,9 @@ TEST_F(TouchGrabTest, AsyncGrabSameClientAfterTouchBegunNoTouchesInGrabMaskUngra GrabModeAsync, GrabModeAsync, False, mask.GetMask())); XSync(dpy1, False); - EXPECT_EVENT(XIDeviceEvent, tend1, dpy1, GenericEvent, xi2_opcode, XI_TouchEnd); + // Not sending touch end event after async grab without touches is known bug + // It can't be fixed because GTK3 menu relies on the buggy behavior. + // EXPECT_EVENT(XIDeviceEvent, tend1, dpy1, GenericEvent, xi2_opcode, XI_TouchEnd); ASSERT_TRUE(NoEventPending(dpy1)); TouchDev().TouchUpdate(120, 100, 0); @@ -1423,7 +1425,7 @@ TEST_F(TouchGrabTest, AsyncGrabSameClientAfterTouchBegunNoTouchesInGrabMaskUngra "The selection of C1 takes precedence over the selection of C2.\n" "A touch begins.\n" "Client C1 creates an active async grab without touch events in the mask\n" - "The touch end event is immediately sent to client C1." + "The touch end event is *not* sent to client C1." "Touch is updated, but all events related to it should be discarded.\n" "C2 does not get any events.\n"); @@ -1453,7 +1455,9 @@ TEST_F(TouchGrabTest, AsyncGrabSameClientAfterTouchBegunNoTouchesInGrabMaskUngra GrabModeAsync, GrabModeAsync, False, mask.GetMask())); XSync(dpy1, False); - EXPECT_EVENT(XIDeviceEvent, tend1, dpy1, GenericEvent, xi2_opcode, XI_TouchEnd); + // Not sending touch end event after async grab without touches is known bug + // It can't be fixed because GTK3 menu relies on the buggy behavior. + // EXPECT_EVENT(XIDeviceEvent, tend1, dpy1, GenericEvent, xi2_opcode, XI_TouchEnd); ASSERT_TRUE(NoEventPending(dpy1)); TouchDev().TouchUpdate(120, 100, 0); |