New issue
Advanced search Search tips

Issue 873684 link

Starred by 5 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 2
Type: Feature
Launch-M-Target: 71-Stable
Launch-Privacy: NeedInfo
Rollout-Type: Default

Blocked on:
issue 880524
issue 882908
issue 900791



Sign in to add a comment

Add pointerrawmove event for raf aligned move events

Project Member Reported by nzolghadr@chromium.org, Aug 13

Issue description

Please provide a link to your UX implementation review here before requesting review.
 
Labels: -Type-Bug Type-Launch-OWP
Summary: Add pointerrawmove event for raf aligned move events (was: Add pointerrawmove event for non raf aligned move events)
Project Member

Comment 3 by bugdroid1@chromium.org, Aug 29

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

commit 8fdb6114e53446376e1f5a8d3a841cc6ea16b928
Author: Navid Zolghadr <nzolghadr@chromium.org>
Date: Wed Aug 29 19:00:54 2018

Add pointerrawmove implementation

Push a new PointerRawMove in the main thread
event queue for MouseMove events.
Note that we do not send compatibility mouse
events for this type. Only PointerEvent with the
type pointerrawmove.
Also note that this change only adds pointerrawmove
for mouse events at this point. pointerrawmove for
touch events should come in the following CLs.

Intent to implement:
https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/84RGJvm_PMM

Bug: 873684
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Icb003b8ba978f1c64157dbbe79222a687d4aa42d
Reviewed-on: https://chromium-review.googlesource.com/1181171
Reviewed-by: Mustaq Ahmed <mustaq@chromium.org>
Reviewed-by: Rick Byers <rbyers@chromium.org>
Reviewed-by: David Bokan <bokan@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Ella Ge <eirage@chromium.org>
Commit-Queue: Navid Zolghadr <nzolghadr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#587226}
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/cc/input/event_listener_properties.h
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/content/renderer/input/main_thread_event_queue.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/content/renderer/input/main_thread_event_queue.h
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/content/renderer/input/main_thread_event_queue_task_list.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/content/renderer/input/main_thread_event_queue_task_list.h
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/content/renderer/input/main_thread_event_queue_unittest.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/content/renderer/render_widget.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/content/renderer/render_widget.h
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/WebKit/LayoutTests/external/wpt/interfaces/pointerevents.idl
[add] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/WebKit/LayoutTests/external/wpt/pointerevents/extension/pointerevent_pointerrawmove-manual.html
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/WebKit/LayoutTests/external/wpt/pointerevents/idlharness.window-expected.txt
[add] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/WebKit/LayoutTests/external/wpt_automation/pointerevents/extension/pointerevent_pointerrawmove-manual-automation.js
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/WebKit/LayoutTests/fast/dom/Window/property-access-on-cached-window-after-frame-navigated-expected.txt
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/WebKit/LayoutTests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-and-gced-expected.txt
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/WebKit/LayoutTests/fast/dom/Window/property-access-on-cached-window-after-frame-removed-expected.txt
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/WebKit/LayoutTests/webexposed/element-instance-property-listing-expected.txt
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/public/platform/web_input_event.h
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/public/web/web_widget_client.h
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/dom/global_event_handlers.h
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/dom/global_event_handlers.idl
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/dom/node.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/events/event_type_names.json5
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/events/pointer_event_factory.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/events/pointer_event_factory.h
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/exported/web_view_impl.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/frame/event_handler_registry.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/frame/event_handler_registry.h
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/html/html_attribute_names.json5
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/html/html_element.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/input/pointer_event_manager.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/layout/scrollbars_test.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/page/chrome_client_impl.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/core/page/page_widget_delegate.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/third_party/blink/renderer/platform/runtime_enabled_features.json5
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/ui/events/blink/DEPS
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/ui/events/blink/blink_event_util.cc
[modify] https://crrev.com/8fdb6114e53446376e1f5a8d3a841cc6ea16b928/ui/events/blink/web_input_event_traits.cc

Cc: tbuck...@chromium.org
Blockedon: 880524
Labels: Launch-Privacy-ReviewRequested
Blockedon: 882908
Labels: OS-Android OS-Chrome OS-Linux OS-Mac OS-Windows
Labels: Launch-M-Target-71-Stable
Labels: -Type-Launch-OWP Type-Launch
Type-Launch-OWP is deprecated.
Project Member

Comment 11 by chrome-privacy-bot@chromium.org, Nov 1

Blockedon: 900791
Labels: -Launch-Privacy-ReviewRequested Launch-Privacy-NeedInfo PrivacyReview-900791
Filing issue 900791 to track the privacy review for this launch.
Labels: MovedFromTypeLaunchOWP
Labels: Rollout-Type-Default
Bulk Edit: Updating Rollout-Type to Default since no Launch/Target Exp bits are set. 
Please update Rollout-Type to Finch and include Launch/Target Exp bits if not intended be launched as default  

Description: Show this description
Description: Show this description
Description: Show this description
Description: Show this description
Description: Show this description
Description: Show this description
Labels: -Type-Launch Type-FLT-Launch FLT-Conversion
Stable-M-Target: 71
Automatic generating of FLT Launch data.
Description: Show this description
M71 Stable launch is coming VERY soon, pls have all cross functional reviews done ASAP or punt it to M72.
Stable-M-Target: -71
Labels: Restrict-View-Google
Status: review_requested
Status: review_requested
This feature doesn't need a security review. I mistakenly set this field to ReviewRequested and now cannot set it to "NotSet".
Labels: FLT-Conversion-1
Please do not modify this value.
Updating this issue's FLT-Conversion label.
Cc: rbyers@chromium.org
The given link, https://github.com/w3c/pointerevents/issues/214, doesn't seem to describe a finalized design. Am I misreading it?

I'd much prefer rbyers' proposal of either having applications install a handler `onpointerdown` or having the caller poll. I don't love adding new, global, high-resolution clocks, especially (as rbyers points out) the vast majority of callers are doing tracking or other "non-primary" use-cases.

Webkit opposes the proposal, as of 2012 (https://lists.webkit.org/pipermail/webkit-dev/2012-December/023050.html). Are there more recent signals from them?
This might be a better link for the proposal. This was at the end of that issue:
https://github.com/w3c/pointerevents/pull/260

Rick was suggesting to add an option to pointerdown listeners to get the events with high frequency. In terms of security and capabilities exposed it is the same as us introducing a new event and ask developers to listen to that. There was some performance problems with that solution and that is why we went with new event type. This was also discussed in the issue.

The polling solution is not going to work. It didn't do a good job for gamepad API either. That is why those guys are also trying to add an event for every time something is changed so the app can go and poll (or just expose the things that changed since the last time in that event). 

One thing I'm confused is that what does this have to do with high-resolution clock? We are already exposing all these events data with their timestamp through getCoalescedEvents API on pointermove event itself. This new event is just about delivering those events faster rather than delaying it and then let the app know that it happened at that timestamp in the past.
Back in 2012 Webkit opposed pointerevents in general (not this particular new feature that we recently came up with). But they also came around recently and started landing the changes for pointerevents (the original spec). This pointerrawmove feature is still under discussion.
Labels: Type-Feature
Labels: -Restrict-View-Google
Bulk updating old OWP-Launch bugs to once again be public. OWP-Launch (previously used as public/transparent blink launch process) was not supposed to have been remapped to Type=Launch.
Labels: Type-FLT-Launch
Preparing this issue to be converted back into the old format.

Will change Type back to 'Feature' after.
Labels: FLT-Conversion
Labels: Type-Feature
Labels: Type-FLT-Launch
Labels: Type-Feature

Sign in to add a comment