RESOLVED FIXED 99947
Handle two-finger tap gestures in the same way as long-press gestures
https://bugs.webkit.org/show_bug.cgi?id=99947
Summary Handle two-finger tap gestures in the same way as long-press gestures
Terry Anderson
Reported 2012-10-21 17:47:10 PDT
Currently a long-press gesture is used to dispatch a context menu (for platforms defining CONTEXT_MENUS) or to select text (for Android). Additionally, for platforms defining TOUCH_ADJUSTMENT, gesture target fuzzing is performed on the location and touch area of the long-press gesture. This CL will cause two-finger tap gestures to be handled in the same way as long-press gestures. The location and touch area of a two-finger tap gesture will correspond to the location and touch area of the first finger down; the location/area of the second finger will be ignored.
Attachments
Patch (8.79 KB, patch)
2012-10-21 19:02 PDT, Terry Anderson
no flags
Patch for landing (10.83 KB, patch)
2012-10-23 15:54 PDT, Terry Anderson
no flags
Patch for landing after fixing merge conflicts with WK99520 (10.17 KB, patch)
2012-10-24 11:00 PDT, Terry Anderson
no flags
Terry Anderson
Comment 1 2012-10-21 19:02:19 PDT
Terry Anderson
Comment 2 2012-10-21 19:05:35 PDT
Comment on attachment 169821 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=169821&action=review > Source/WebCore/page/EventHandler.cpp:2526 > return handleGestureLongPress(gestureEvent); Is this OK or should I instead have a handleGestureLongPress() and a handleGestureTwoFingerTap() which both call a common function containing the current implementation of handleGestureLongPress() ?
Adam Barth
Comment 3 2012-10-23 12:08:39 PDT
Comment on attachment 169821 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=169821&action=review >> Source/WebCore/page/EventHandler.cpp:2526 >> return handleGestureLongPress(gestureEvent); > > Is this OK or should I instead have a handleGestureLongPress() and a handleGestureTwoFingerTap() which both call a common function containing the current implementation of handleGestureLongPress() ? Its probably clearer to do that. This code really just wants to dispatch based on the type without making any policy decisions about what the gestures mean.
Terry Anderson
Comment 4 2012-10-23 15:54:38 PDT
Created attachment 170256 [details] Patch for landing
Allan Sandfeld Jensen
Comment 5 2012-10-24 03:02:47 PDT
I still believe both of these gestures should be named GestureContextMenu, since there can be different ways to trigger that, and two finger taps might be used for other purposes on other platforms.
Terry Anderson
Comment 6 2012-10-24 11:00:32 PDT
Created attachment 170430 [details] Patch for landing after fixing merge conflicts with WK99520
Terry Anderson
Comment 7 2012-10-24 11:09:06 PDT
(In reply to comment #5) > I still believe both of these gestures should be named GestureContextMenu, since there can be different ways to trigger that, and two finger taps might be used for other purposes on other platforms. I have created https://bugs.webkit.org/show_bug.cgi?id=100270 to discuss this suggestion. Let's land this patch as-is for the time being.
Allan Sandfeld Jensen
Comment 8 2012-10-24 11:19:25 PDT
(In reply to comment #7) > (In reply to comment #5) > > I still believe both of these gestures should be named GestureContextMenu, since there can be different ways to trigger that, and two finger taps might be used for other purposes on other platforms. > > I have created https://bugs.webkit.org/show_bug.cgi?id=100270 to discuss this suggestion. Let's land this patch as-is for the time being. Fine by me. The patch looks good to me too.
WebKit Review Bot
Comment 9 2012-10-24 14:54:29 PDT
Comment on attachment 170430 [details] Patch for landing after fixing merge conflicts with WK99520 Clearing flags on attachment: 170430 Committed r132406: <http://trac.webkit.org/changeset/132406>
WebKit Review Bot
Comment 10 2012-10-24 14:54:33 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.