Add more tests for Linux touchpad zooming
Categories
(Core :: Panning and Zooming, task, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox88 | --- | fixed |
People
(Reporter: botond, Assigned: aemad)
References
Details
Attachments
(1 file)
(deleted),
text/x-phabricator-request
|
Details |
Bug 1640186 is adding machinery for synthesizing native touchpad pinch events from a test (on Linux), and uses that machinery to test one scenario (zooming in).
It would be useful to test a few additional scenarios:
-
Zooming out
-
Zooming in and out in the same gesture. This is useful test coverage because an earlier version of the patch tripped an assertion in this scenario, at the time the gesture transitioned from zoom-in to zoom-out.
-
Zooming in on a page that handles zooming itself (rather than letting the browser zoom).
Reporter | ||
Comment 1•4 years ago
|
||
(In reply to Botond Ballo [:botond] from comment #0)
- Zooming in on a page that handles zooming itself (rather than letting the browser zoom).
More detail on this: recall that, for the purpose of dispatching events to web content, the browser converts PinchGestureInput
events into WidgetWheelEvent
s with the Control modifier set.
WidgetWheelEvent
s get dispatched to the page as wheel
events. So, the page can listen for wheel
events and call preventDefault()
on those that have the Control modifier, which tells the browser not to perform the default action (in this case, zooming) for the event.
In the test, we can assert that the wheel
event's properties such as deltaY
have reasonable values. This tests that our Linux widget code populates the PinchGestureInput
with reasonable values which then turn into a reasonable deltaY
.
Reporter | ||
Comment 2•4 years ago
|
||
(In reply to Botond Ballo [:botond] from comment #1)
In the test, we can assert that the
wheel
event's properties such asdeltaY
have reasonable values. This tests that our Linux widget code populates thePinchGestureInput
with reasonable values which then turn into a reasonabledeltaY
.
We actually discovered today that the deltaY
values are too small to be able to zoom in via touchpad pinch on Google Maps.
We should fix that, along with adding this test case, before enabling touchpad pinch zooming by default in bug 1688717, to avoid regressing the user experience on Google Maps. (Therefore I am marking this bug as blocking bug 1688717.)
Reporter | ||
Comment 3•4 years ago
|
||
(In reply to Botond Ballo [:botond] from comment #2)
We should fix that, along with adding this test case, before enabling touchpad pinch zooming by default in bug 1688717, to avoid regressing the user experience on Google Maps. (Therefore I am marking this bug as blocking bug 1688717.)
After thinking more about this, I realized that touchpad pinch gestures have no effect on Linux with apz.gtk.touchpad_pinch.enabled=false
, so the observed behaviour on Google Maps, while suboptimal and something we should fix, is not a regression, and therefore does not need to block bug 1688717.
Updated•4 years ago
|
Updated•4 years ago
|
Comment 6•4 years ago
|
||
bugherder |
Description
•