New issue
Advanced search Search tips

Issue 773813 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , iOS , Chrome , Mac , Fuchsia
Pri: 2
Type: Bug

Blocking:
issue 456625



Sign in to add a comment

PointerEvents of type mouse should have fractional coordinates

Project Member Reported by eirage@chromium.org, Oct 11 2017

Issue description

Edge already have fractional coordinates in all PointerEvents for a while, for all pointerTypes including “mouse”.

we exposed fractional coordinates for PointerEvents of type “touch" from M56. 

We should match Edge to have fractional coordinates for PointerEvent type "mouse"
 

Comment 1 by eirage@chromium.org, Oct 11 2017

Blocking: 456625

Comment 2 by mustaq@chromium.org, Oct 11 2017

Labels: Hotlist-Input-Dev Hotlist-Interop OS-Android OS-Chrome OS-Fuchsia OS-iOS OS-Linux OS-Mac OS-Windows
Project Member

Comment 3 by bugdroid1@chromium.org, Oct 20 2017

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

commit eb1ed68adbff3578ce9656b6720f96afa164bcf6
Author: Ella Ge <eirage@chromium.org>
Date: Fri Oct 20 18:14:18 2017

Fractional WebMouseEvent Creation

This cl remove misc truncation in WebMouseEvent Creation.
Including where use WebMouseEvent constructor,
SetPositionInWidget and SetPositionInScreen.
And also remove a unused constructor of WebMouseEvent.

In this CL we add coordinates getters override in PointerEvent
to prevent fractions for PE type "mouse" exposed.

After this CL, fractions of:
MouseEvent are not exposed.
PointerEvent of type "mouse" are not exposed.
PointerEvent of type "pen" are exposed. 
(pen already partially exposed through touch in M62,
change to fully fractional after this CL) 

Bug:  456625 , 773813 
Change-Id: Idfe3fb0766b4a96509dbcd4f49719323a8484d0f
Reviewed-on: https://chromium-review.googlesource.com/692337
Commit-Queue: Ella Ge <eirage@chromium.org>
Reviewed-by: Mustaq Ahmed <mustaq@chromium.org>
Reviewed-by: Navid Zolghadr <nzolghadr@chromium.org>
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Alexandre Elias <aelias@chromium.org>
Cr-Commit-Position: refs/heads/master@{#510494}
[modify] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/content/common/input/synthetic_web_input_event_builders.cc
[modify] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/content/common/input/synthetic_web_input_event_builders.h
[modify] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/content/renderer/gpu/gpu_benchmarking_extension.cc
[add] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-event-mouse-coords-in-zoom-and-scroll.html
[add] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-event-pen-coords-in-zoom-and-scroll.html
[modify] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/third_party/WebKit/Source/core/events/MouseEvent.cpp
[modify] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/third_party/WebKit/Source/core/events/MouseEvent.h
[modify] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/third_party/WebKit/Source/core/events/PointerEvent.h
[modify] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/third_party/WebKit/Source/core/events/PointerEventFactory.cpp
[modify] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/third_party/WebKit/Source/core/exported/WebPluginContainerImpl.cpp
[modify] https://crrev.com/eb1ed68adbff3578ce9656b6720f96afa164bcf6/third_party/WebKit/public/platform/WebMouseEvent.h

Project Member

Comment 4 by bugdroid1@chromium.org, Oct 20 2017

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

commit 3a60d6f9078fe09a42c1e2ba3163ffe7f727170a
Author: Sahel Sharifymoghaddam <sahel@chromium.org>
Date: Fri Oct 20 20:20:21 2017

Revert "Fractional WebMouseEvent Creation"

This reverts commit eb1ed68adbff3578ce9656b6720f96afa164bcf6.

Reason for revert: seems like newly added tests fast/events/pointerevents/pointer-event-mouse-coords-in-zoom-and-scroll.html and fast/events/pointerevents/pointer-event-pen-coords-in-zoom-and-scroll.html fail in WebKit Linux Trusty Leak:

https://uberchromegw.corp.google.com/i/chromium.webkit/builders/WebKit%20Linux%20Trusty%20Leak/builds/11111

Original change's description:
> Fractional WebMouseEvent Creation
> 
> This cl remove misc truncation in WebMouseEvent Creation.
> Including where use WebMouseEvent constructor,
> SetPositionInWidget and SetPositionInScreen.
> And also remove a unused constructor of WebMouseEvent.
> 
> In this CL we add coordinates getters override in PointerEvent
> to prevent fractions for PE type "mouse" exposed.
> 
> After this CL, fractions of:
> MouseEvent are not exposed.
> PointerEvent of type "mouse" are not exposed.
> PointerEvent of type "pen" are exposed. 
> (pen already partially exposed through touch in M62,
> change to fully fractional after this CL) 
> 
> Bug:  456625 , 773813 
> Change-Id: Idfe3fb0766b4a96509dbcd4f49719323a8484d0f
> Reviewed-on: https://chromium-review.googlesource.com/692337
> Commit-Queue: Ella Ge <eirage@chromium.org>
> Reviewed-by: Mustaq Ahmed <mustaq@chromium.org>
> Reviewed-by: Navid Zolghadr <nzolghadr@chromium.org>
> Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
> Reviewed-by: Alexandre Elias <aelias@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#510494}

TBR=aelias@chromium.org,dtapuska@chromium.org,mustaq@chromium.org,nzolghadr@chromium.org,eirage@chromium.org

Change-Id: Ib1ba4436dc81215ec8bfbde4618d81faea226a47
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  456625 ,  773813 
Reviewed-on: https://chromium-review.googlesource.com/730851
Reviewed-by: Sahel Sharifymoghaddam <sahel@chromium.org>
Commit-Queue: Sahel Sharifymoghaddam <sahel@chromium.org>
Cr-Commit-Position: refs/heads/master@{#510543}
[modify] https://crrev.com/3a60d6f9078fe09a42c1e2ba3163ffe7f727170a/content/common/input/synthetic_web_input_event_builders.cc
[modify] https://crrev.com/3a60d6f9078fe09a42c1e2ba3163ffe7f727170a/content/common/input/synthetic_web_input_event_builders.h
[modify] https://crrev.com/3a60d6f9078fe09a42c1e2ba3163ffe7f727170a/content/renderer/gpu/gpu_benchmarking_extension.cc
[delete] https://crrev.com/6997d6145bb73e87ec7f5555af00f312e792ee40/third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-event-mouse-coords-in-zoom-and-scroll.html
[delete] https://crrev.com/6997d6145bb73e87ec7f5555af00f312e792ee40/third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-event-pen-coords-in-zoom-and-scroll.html
[modify] https://crrev.com/3a60d6f9078fe09a42c1e2ba3163ffe7f727170a/third_party/WebKit/Source/core/events/MouseEvent.cpp
[modify] https://crrev.com/3a60d6f9078fe09a42c1e2ba3163ffe7f727170a/third_party/WebKit/Source/core/events/MouseEvent.h
[modify] https://crrev.com/3a60d6f9078fe09a42c1e2ba3163ffe7f727170a/third_party/WebKit/Source/core/events/PointerEvent.h
[modify] https://crrev.com/3a60d6f9078fe09a42c1e2ba3163ffe7f727170a/third_party/WebKit/Source/core/events/PointerEventFactory.cpp
[modify] https://crrev.com/3a60d6f9078fe09a42c1e2ba3163ffe7f727170a/third_party/WebKit/Source/core/exported/WebPluginContainerImpl.cpp
[modify] https://crrev.com/3a60d6f9078fe09a42c1e2ba3163ffe7f727170a/third_party/WebKit/public/platform/WebMouseEvent.h

Project Member

Comment 5 by bugdroid1@chromium.org, Oct 24 2017

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

commit 287861b16095946a4e12eb70c6e64a69fd00b243
Author: Ella Ge <eirage@chromium.org>
Date: Tue Oct 24 18:43:53 2017

Reland "Fractional WebMouseEvent Creation"

This is a reland of eb1ed68adbff3578ce9656b6720f96afa164bcf6
Original change's description:
> Fractional WebMouseEvent Creation
> 
> This cl remove misc truncation in WebMouseEvent Creation.
> Including where use WebMouseEvent constructor,
> SetPositionInWidget and SetPositionInScreen.
> And also remove a unused constructor of WebMouseEvent.
> 
> In this CL we add coordinates getters override in PointerEvent
> to prevent fractions for PE type "mouse" exposed.
> 
> After this CL, fractions of:
> MouseEvent are not exposed.
> PointerEvent of type "mouse" are not exposed.
> PointerEvent of type "pen" are exposed. 
> (pen already partially exposed through touch in M62,
> change to fully fractional after this CL) 
> 
> Bug:  456625 , 773813 
> Change-Id: Idfe3fb0766b4a96509dbcd4f49719323a8484d0f
> Reviewed-on: https://chromium-review.googlesource.com/692337
> Commit-Queue: Ella Ge <eirage@chromium.org>
> Reviewed-by: Mustaq Ahmed <mustaq@chromium.org>
> Reviewed-by: Navid Zolghadr <nzolghadr@chromium.org>
> Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
> Reviewed-by: Alexandre Elias <aelias@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#510494}

Bug:  456625 ,  773813 
Change-Id: I0df1a30859b1c4d1901320877eb7eef4672ab71a
Reviewed-on: https://chromium-review.googlesource.com/735840
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Alexandre Elias <aelias@chromium.org>
Commit-Queue: Ella Ge <eirage@chromium.org>
Cr-Commit-Position: refs/heads/master@{#511218}
[modify] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/content/common/input/synthetic_web_input_event_builders.cc
[modify] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/content/common/input/synthetic_web_input_event_builders.h
[modify] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/content/renderer/gpu/gpu_benchmarking_extension.cc
[add] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-event-mouse-coords-in-zoom-and-scroll.html
[add] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-event-pen-coords-in-zoom-and-scroll.html
[modify] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/third_party/WebKit/Source/core/events/MouseEvent.cpp
[modify] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/third_party/WebKit/Source/core/events/MouseEvent.h
[modify] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/third_party/WebKit/Source/core/events/PointerEvent.h
[modify] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/third_party/WebKit/Source/core/events/PointerEventFactory.cpp
[modify] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/third_party/WebKit/Source/core/exported/WebPluginContainerImpl.cpp
[modify] https://crrev.com/287861b16095946a4e12eb70c6e64a69fd00b243/third_party/WebKit/public/platform/WebMouseEvent.h

Project Member

Comment 6 by bugdroid1@chromium.org, Nov 2 2017

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

commit 7df0011e7c0b02142de10305da65b00d7e5428f2
Author: Ella Ge <eirage@chromium.org>
Date: Thu Nov 02 03:17:05 2017

Implement Fractional MouseEvent and mousetype PointerEvent behind flags

This is the last patch of fractional MouseEvent.

Add a non-web exposed feature flag for fractional coordinates in ME.
Add a experimental flag to expose fractional coordinates
for PointerEvent of type "mouse"
Add Layouttests for fractional pointer event coordinates.

Intent to implement and ship for expose fractions for PE
type mouse: 
https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/ssfd-_V26Ls

Bug:  456625 ,  773813 
Change-Id: I036f4953857907daf3131fd260331dc9dd2e4874
Reviewed-on: https://chromium-review.googlesource.com/692341
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Rick Byers <rbyers@chromium.org>
Reviewed-by: Mustaq Ahmed <mustaq@chromium.org>
Reviewed-by: Navid Zolghadr <nzolghadr@chromium.org>
Commit-Queue: Ella Ge <eirage@chromium.org>
Cr-Commit-Position: refs/heads/master@{#513390}
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/LayoutTests/NeverFixTests
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/LayoutTests/VirtualTestSuites
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-event-mouse-coords-in-zoom-and-scroll.html
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/LayoutTests/fast/events/synthetic-events/tap-on-scaled-screen.html
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/LayoutTests/plugins/touch-events-synthesized-expected.txt
[add] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/LayoutTests/virtual/mouseevent_fractional/fast/events/README.txt
[add] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/LayoutTests/virtual/mouseevent_fractional/fast/events/mouse-coords-in-zoom-and-scroll.html
[add] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/LayoutTests/virtual/mouseevent_fractional/fast/events/mouse-right-coords-in-zoom-and-scroll-right.html
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/Source/core/events/MouseEvent.h
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/Source/core/events/PointerEvent.cpp
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/Source/core/events/PointerEvent.h
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/Source/core/events/WebInputEventConversion.cpp
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/Source/core/events/WebInputEventConversion.h
[modify] https://crrev.com/7df0011e7c0b02142de10305da65b00d7e5428f2/third_party/WebKit/Source/platform/runtime_enabled_features.json5

Labels: M-64
Project Member

Comment 8 by bugdroid1@chromium.org, Nov 9 2017

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

commit 9d5de00296c359ea4b91c71fffd41cc2ad28dd41
Author: Ella Ge <eirage@chromium.org>
Date: Thu Nov 09 02:49:49 2017

Enable fractional Mouse type pointerEvent by default

Enable factional mouse type pointer event by default

Intent to implement and ship:
https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/ssfd-_V26Ls

Bug:  773813 
Change-Id: Ie8010d27b4c0a6b43fec7cfab04e153dce21536d
Reviewed-on: https://chromium-review.googlesource.com/753511
Reviewed-by: Rick Byers <rbyers@chromium.org>
Commit-Queue: Ella Ge <eirage@chromium.org>
Cr-Commit-Position: refs/heads/master@{#515072}
[modify] https://crrev.com/9d5de00296c359ea4b91c71fffd41cc2ad28dd41/third_party/WebKit/Source/platform/runtime_enabled_features.json5

Status: Fixed (was: Assigned)
Project Member

Comment 10 by bugdroid1@chromium.org, Jan 8 2018

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

commit 889c7e61145d0c28a9c2de0e3c5246caaf501782
Author: Ella Ge <eirage@chromium.org>
Date: Mon Jan 08 16:42:55 2018

Add pointerevent fractional coordinates wpt

this test contains a manual test and its automation.
In the test, use a scaled iframe to make pointer event client
coordinates get scale.
The test need to click on three black squares, and will verify
if any coordinate in the pointerevent has fraction.

Test pointer type: mouse, touch and pen
Test event type: pointerdown, pointerup, pointermove, pointerover,
pointerenter, pointerout, pointerleave.


Bug:  773813 
Change-Id: I30b799081e85218a4df40bc224c364752554ef53
Reviewed-on: https://chromium-review.googlesource.com/833073
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Commit-Queue: Ella Ge <eirage@chromium.org>
Cr-Commit-Position: refs/heads/master@{#527645}
[modify] https://crrev.com/889c7e61145d0c28a9c2de0e3c5246caaf501782/third_party/WebKit/LayoutTests/TestExpectations
[add] https://crrev.com/889c7e61145d0c28a9c2de0e3c5246caaf501782/third_party/WebKit/LayoutTests/external/wpt/pointerevents/pointerevent_fractional_coordinates-manual.html
[add] https://crrev.com/889c7e61145d0c28a9c2de0e3c5246caaf501782/third_party/WebKit/LayoutTests/external/wpt/pointerevents/resources/pointerevent_fractional_coordinates-iframe.html
[add] https://crrev.com/889c7e61145d0c28a9c2de0e3c5246caaf501782/third_party/WebKit/LayoutTests/external/wpt_automation/pointerevents/pointerevent_fractional_coordinates-manual-automation.js

Project Member

Comment 11 by bugdroid1@chromium.org, Nov 1

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

commit 2f4ef023e85d509f85495a6aeed4437d10820e65
Author: Ella Ge <eirage@chromium.org>
Date: Thu Nov 01 14:14:34 2018

Retire FractionalMouseTypePointerEvent flag

Fractional Mouse type pointerEvent shipped in M64
https://chromium-review.googlesource.com/753511
https://www.chromestatus.com/feature/5117956774166528

Remove the flag and clean up related todo.

BUG= 773813 

Change-Id: Id8e17705b43d3bfe55deeed2a3bf7d39b61a71ed
Reviewed-on: https://chromium-review.googlesource.com/c/1230577
Reviewed-by: Mustaq Ahmed <mustaq@chromium.org>
Reviewed-by: David Bokan <bokan@chromium.org>
Commit-Queue: Ella Ge <eirage@chromium.org>
Cr-Commit-Position: refs/heads/master@{#604572}
[modify] https://crrev.com/2f4ef023e85d509f85495a6aeed4437d10820e65/third_party/blink/renderer/core/events/pointer_event.cc
[modify] https://crrev.com/2f4ef023e85d509f85495a6aeed4437d10820e65/third_party/blink/renderer/core/events/pointer_event.h
[modify] https://crrev.com/2f4ef023e85d509f85495a6aeed4437d10820e65/third_party/blink/renderer/platform/runtime_enabled_features.json5

Sign in to add a comment