New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 807622 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Regression: Pointer Event offset coordinates affected by pinch-zoom

Reported by andrew.m...@trihedral.com, Jan 31 2018

Issue description

Steps to reproduce the problem:
1. Open the attached PointerEventBadCoords.html in Chrome 64+ on a touchscreen device (eg Android Smartphone) in landscape orientation.
2. Pinch-zoom in so that the 500x200 black div gets as big as it can without going off-screen.
3. Tap the touchscreen in the bottom-right corner of black div. The offsetX and offsetY of a pointerup event on the div will be displayed in the middle of the div.

What is the expected behavior?
I'd expect to see an x-coordinate a little under 500 and a y-coordinate a little under 200.

What went wrong?
I see an x-coordinate above 500 and a y-coordinate above 200. E.g. in PointerEventBadCoordsScreenshot.png, you see the following coordinates: (615, 249). If I zoom out instead of in, I see coordinates well under (500, 200). Basically, offsetX and offsetY on the pointerup event, when triggered by a touch, are being affected by the zoom level from the pinch-zoom, which doesn't seem correct according to the spec.

Did this work before? Yes 63.0.3239.111

Does this work in other browsers? Yes

Chrome version: 64.0.3282.123  Channel: stable
OS Version: 6.0.1
Flash Version: 

I've also seen this issue with Chrome 64.0.3282.119 on Windows 10 (10.0.16299 Build 16299), using the Microsoft Windows Simulator to simulate touch events (interestingly, Pointer Events triggered by mouse clicks still are correct even when pinch-zoomed). Using IE 11 and Edge in the same environment, I do not see the problem.
 
PointerEventBadCoords.html
679 bytes View Download
PointerEventBadCoordsScreenshot.png
28.7 KB View Download
Labels: Needs-Triage-M64
Labels: Needs-triage-Mobile
Cc: nyerramilli@chromium.org pnangunoori@chromium.org sandeepkumars@chromium.org
Labels: -Pri-2 hasbisect-per-revision FoundIn-66 RegressedIn-64 Target-66 FoundIn-65 Target-65 Triaged-Mobile FoundIn-64 Target-64 Pri-1
Owner: nzolghadr@chromium.org
Status: Assigned (was: Unconfirmed)
Tested the issue in Android and able to reproduce the issue. 

Steps Followed:
1. Launched the Chrome 
2. Navigated to above attached HTML page
3. Observed irregular values on pinch zoom in landscape mode

Chrome versions tested:
64.0.3282.123

OS:
Android 7.0.0, 6.0.1

Android Devices:
Samsung J7 & S7

Using the per-revision bisect providing the bisect results,
Good build: 64.0.3269.0
Bad build: 64.0.3270.2

You are looking for a change made after 516790(GOOD), but before 516791(BAD).

CHANGELOG URL:
The script might not always return single CL as suspect as some perf builds might get missing due to failure.

https://chromium.googlesource.com/chromium/src/+/35f77bad7ab2a81abbee7cba9ff38872ed76b8dc

From the CL's above, assigning the issue to the owner concerned.

@nzolghadr: Could you please look into the issue, and assign it to concerned owner if this is not related your change.

Please navigate to below link for log's and video--
go/chrome-androidlogs/807622

Thanks!!
Status: Started (was: Assigned)
Project Member

Comment 5 by bugdroid1@chromium.org, Feb 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/735fa061d0f531bd0704c4c368d59edc1c1fea3a

commit 735fa061d0f531bd0704c4c368d59edc1c1fea3a
Author: Navid Zolghadr <nzolghadr@chromium.org>
Date: Wed Feb 14 20:59:48 2018

Fix coordinate space for touch pointer events

Consider frame scale for calculating coordinates
of touch pointer events.

Bug:  809942 ,  811715 , 809106,  807622 
Change-Id: I5503583cd8c0e8b41b7e17fd59170a6f1dff7fa1
Reviewed-on: https://chromium-review.googlesource.com/914690
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Commit-Queue: Navid Zolghadr <nzolghadr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536813}
[modify] https://crrev.com/735fa061d0f531bd0704c4c368d59edc1c1fea3a/third_party/WebKit/Source/core/events/PointerEventFactory.cpp
[modify] https://crrev.com/735fa061d0f531bd0704c4c368d59edc1c1fea3a/third_party/WebKit/Source/core/input/PointerEventManagerTest.cpp

Status: Fixed (was: Started)

Sign in to add a comment