Created attachment 115472 [details] Patch that enables the user to end the drag by tapping Currently for the drag to end user has to wait for a timeout to expire. Make it possible to just tap on a touchpad when you want drag to finish. I'm attaching a patch for this.
nice, looks correct. I'll do the changes to the diagram when I get to it. Any chance you can add a few test cases for this too? test/touchpad.c, you should be able to use the various tap_n_drag cases as baseline. (don't modify them, just use them as a guide)
Created attachment 115541 [details] [review] Test cases for ending drag with a tap
Created attachment 115542 [details] Test cases for ending drag with a tap Sorry, second test case in the last patch isn't good, here is the fixed one.
Created attachment 115572 [details] Updated state diagram
Updated the state diagram, that works out fine. any chance you can add the 'click' test too? i.e. a click before the very last touch up.
Created attachment 115575 [details] [review] Test cases for ending drag with a tap I didn't know how to call the click test's, so I just add "click" after "tap" to the name. I hope that is OK.
all good, thanks. there's another patch set on the list atm that will partially conflict with this set but just take that as general FYI. I'll probably merge yours as-is first and then change it when the other one is merged. see http://lists.freedesktop.org/archives/wayland-devel/2015-May/021801.html
can you double-check the test-touchpad test please, it seems to fail here consistently. touchpad_1fg_multitap_n_drag_tap_click and touchpad_1fg_tap_n_drag_tap_click are the two that fail
nevermind, found it. one more button event was expected, I squashed that in. http://lists.freedesktop.org/archives/wayland-devel/2015-May/021805.html http://lists.freedesktop.org/archives/wayland-devel/2015-May/021806.html
Merged as 46171fbef381fbecec673fa870fafb3ce33e58d3, thanks for all the work.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.