Need to create a new touch block before sending double-tap gesture events
Categories
(Core :: Panning and Zooming, defect, P3)
Tracking
()
People
(Reporter: hiro, Unassigned)
References
Details
For double-tap events on Mac we send a double-tap gesture event directly, so if there's a previous touch event block which was prevented double-tap-zoom by specifying touch-action: none
or some such, the new incoming doubel-tap gesture events also will be prevented by the stale touch event block.
One of tests I wrote for bug 1715179 added to the last block of this subtests causes timeouts on the next helper_doubletap_zoom_smooth.html?touchpad.
I believe this bug should happen in production, but I could NOT find any bug reports, so for now I will add a workaround in the bug, that is just sending a new touch event in the new test.
Comment 1•1 year ago
|
||
(In reply to Hiroyuki Ikezoe (:hiro) from comment #0)
I believe this bug should happen in production, but I could NOT find any bug reports
On Mac, there are no touchscreen devices yet, and on other platforms we don't support touchpad double-tap zoom yet, so I don't think this can currently come up in production.
If it comes up in the future, a proper fix will involve addressing this comment as well. I think the fix will involve having TapGestureInput
track whether it came from touch events or a touchpad.
Reporter | ||
Comment 2•1 year ago
|
||
Even if we don't yet support touchscreen, we do send touch gestures triggered by double-tap on touchpad, it will re-use the same touch block, isn't it?
Reporter | ||
Comment 3•1 year ago
|
||
Oops, do I misunderstand what touch-action
is supposed to? I should NOT prevent double-tap-to-zoom on touchpad?
Reporter | ||
Comment 4•1 year ago
|
||
Okay, now I understand what Botond means. Without touchscreen we never generate touch block at all. Thus it won't happen in production.
And now I found an interesting spec desctiption;
Note
In some cases, touchpads (like those found on a laptop) will allow the user to scroll by "dragging" on the touchpad. However, this is generally achieved by the touchpad generating "fake" mouse wheel events, so this wouldn't count as a direct manipulation.
Comment 5•1 year ago
•
|
||
Right, touch-action
does not currently prevent touchpad double-tap zoom.
The question of whether it should is an interesting one, the spec doesn't seem to say clearly (another section says "direct manipulation interactions (which are not limited to touch, despite the property's name)", suggesting that touchpad double-tap zoom could be covered). It would be interesting to check other browsers' behaviour here and perhaps file a spec issue to clarify.
Comment 6•1 year ago
|
||
(In reply to Botond Ballo [:botond] from comment #5)
Right,
touch-action
does not currently prevent touchpad double-tap zoom.The question of whether it should is an interesting one, the spec doesn't seem to say clearly (another section says "direct manipulation interactions (which are not limited to touch, despite the property's name)", suggesting that touchpad double-tap zoom could be covered). It would be interesting to check other browsers' behaviour here and perhaps file a spec issue to clarify.
There is an ongoing spec discussion here: https://github.com/w3c/pointerevents/issues/478
Updated•1 year ago
|
Description
•