[Webkit-unassigned] [Bug 170981] New: Pinch-zoom should be invisible to the application by default
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Apr 19 00:50:20 PDT 2017
https://bugs.webkit.org/show_bug.cgi?id=170981
Bug ID: 170981
Summary: Pinch-zoom should be invisible to the application by
default
Product: WebKit
Version: Safari 10
Hardware: Unspecified
OS: Unspecified
Status: NEW
Severity: Normal
Priority: P2
Component: HTML DOM
Assignee: webkit-unassigned at lists.webkit.org
Reporter: rbyers at chromium.org
CC: cdumez at apple.com
Developers typically expect APIs like MouseEvent.clientX/Y and getBoundingClientRect to use the same co-ordinate system as position:fixed (what we've been calling "layout viewport co-ordinates"). In Safari's new visual viewport model these APIs return visual co-ordinates instead, resulting in some site bugs under pinch-zoom. As a simple example see https://rbyers.github.io/inputCoords.html - when pinch-zooming in the red box is wrong.
In addition, some sites don't expect scroll offsets to change when panning the pinch zoom viewport, or that changing the scroll position will reset the position of the pinch zoom viewport. For example on apple.com if you zoom in and click the search button in the top bar the viewport doesn't get centered correctly on the search field because there's a window.scrollTo(0,0) call.
Here's some example sites that are broken in Safari today:
https://docs.google.com/document/d/1jxWEzwOT2XgSsg5k2a_3D7PR0bXnB4bL9rATW-Z6egY/edit
Talking with smfr@ he agrees with the principle that pinch-zoom should be completely transparent to the application by default. Developers generally are not thinking about the impact of pinch-zoom, and pinch-zoom is primarily a UA/accessibility feature. He says he'd like to change WebKit to make all these APIs use layout viewport co-ordinates instead of visual viewport ones (i.e. to match Chrome's behavior with the chrome://flags/#inert-visual-viewport flag enabled - see https://crbug.com/489206)
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20170419/ebf8e347/attachment.html>
More information about the webkit-unassigned
mailing list