dtap...@chromium.org None. The life-cycle of when these events should fire is not in any specification.But it is tracked (https://github.com/w3c/pointerevents/issues/9)
Align continuous mouse events (mousemove, mousewheel) so that they occur close to the rAF as possible. Historical events can be accessed via getCoalescedEvents (see https://w3c.github.io/pointerevents/extension.html#extensions-to-the-pointerevent-interface)Note: rAF aligned touch events are already shipped in M59.
Continuous events coalesce together; ie. the newer event usually overrides the effect of the first one. Most often these continuous mouse events cause work that is not necessary, hit tests, and style updates. If you get two occurring inside the same rAF call then the first work is useless because it didn't actually update the display.Note that some drawing apps require all the details of all the points that occurred. These are accessible via the historical event API.We have conducted a Variation trial on Canary and Dev releases since March 21st 2017 and no reported issues have been filed with regard to the adjusted timing of these events.Firefox: Mixed signals (see https://www.w3.org/Bugs/Public/show_bug.cgi?id=28876)
Edge: No public signals Safari: No public signals Web developers: Mixed signals (some positivehttps://groups.google.com/a/chromium.org/forum/#!searchin/input-dev/rAF$20Aligned/input-dev/Aqdge_cj060/DwaDu1o9AQAJ, some negative
https://bugs.chromium.org/p/chromium/issues/detail?id=642368&desc=2#c35) Drawing Apps might have reduced fidelity with fast moving mice. Can be corrected by slowing the gesture or updating the app to read the historical events for even better fidelity that existed in the past.None
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
Page views impacted: not something we can really /measure I think, but anecdotally somewhat low but non-trivial - just art/drawing scenariosPerformance: positive (though hard numbers would help justify this) - mousemove events can drive a lot of work on some sites, doing them at a bad time/rate can be really bad for perf. Dave do you have some traces or other data from specific sites in mouse-drag scenarios? Dragging-animation scenarios (which this will help) are very common, especially in comparison to the art scenarios that will be hurt.
Severity of breakage: low - should be largely cosmetic (drawn curves with ~60 points per second instead of eg. an unreliable 120). Users will move their input device more slowly to compensate when necessary.
Ease of adaptation: moderately positive - getCoalescedEvents API was designed/shipped to easily enable this transition for the rare use cases that need to opt-in. This requires the use of pointer events, but pointer events themselves are designed to be incrementally usable inside of code designed for MouseEvent (i.e. getCoalescedEvents returns an array of PointerEvent objects, each of which is also a valid MouseEvent object with a new 'type' value - 'pointermove' instead of 'mousemove').
Interoperability: some real risk on the desktop/mouse-specific front. This will mean Chrome is different from AFAIK every other desktop browser.
Standards conformance: neutral now (unspecified) but positive long-term because this is something we COULD specify (as opposed to leaving it an impl detail)
Outreach: none yet AFAIK, but probably important
> I see that this was filed and discussed in 2015. Was there an attempt to write it up and spec it precisely as part of the pointer events spec since then?No there wasn't an attempt to formally spec it. Do you have an example from CSS/HTML that defines the document lifecycle should occur? I can see us augmenting the HTML spec to add another step here indicating to dispatch any pending input at step 1. And then augmenting the UI Events spec indicating that UA may choose to wait to dispatch a native mousemove/wheel event by placing it in a pending queue that is flushed during rAF. But a UA must maintain order of all events.
On Thu, May 4, 2017 at 6:52 AM, 'Dave Tapuska' via blink-dev <blin...@chromium.org> wrote:> I see that this was filed and discussed in 2015. Was there an attempt to write it up and spec it precisely as part of the pointer events spec since then?No there wasn't an attempt to formally spec it. Do you have an example from CSS/HTML that defines the document lifecycle should occur? I can see us augmenting the HTML spec to add another step here indicating to dispatch any pending input at step 1. And then augmenting the UI Events spec indicating that UA may choose to wait to dispatch a native mousemove/wheel event by placing it in a pending queue that is flushed during rAF. But a UA must maintain order of all events.Possibly. What about also modifying the pointer event spec to say something about all this?
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw9SybU70a4uM6WsevFzJgrB7JfqRqcCXYh%3DJkkv6Xpi%2Bg%40mail.gmail.com.
lgtm2
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw9SybU70a4uM6WsevFzJgrB7JfqRqcCXYh%3DJkkv6Xpi%2Bg%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CALjhuidt%3D649g4%2BmoSqcwONHw7YuzQ9cD84GRSUucbCeBAjGAQ%40mail.gmail.com.
LGTM3
lgtm2
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw9SybU70a4uM6WsevFzJgrB7JfqRqcCXYh%3DJkkv6Xpi%2Bg%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CALjhuidt%3D649g4%2BmoSqcwONHw7YuzQ9cD84GRSUucbCeBAjGAQ%40mail.gmail.com.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/36869216-2995-40d2-9171-f8926725b42c%40chromium.org.