Contact emails
n...@chromium.org, tdre...@chromium.org
Explainer
Explainer with processing model includes First Input Timing.
Spec
Spec draft is on the works. TAG review for EventTiming, which includes First Input, is not yet completed.
However, we have received privacy and security reviews at the launch bug
Summary
This intent is only to ship First Input Timing. This API provides developers with timing information about latency of the very first discrete user interaction (key down, mouse down, pointer down followed by pointer up, or click). We propose exposing the PerformanceEventTiming entry for the first input, which contains:
The type of the event.
The event hardware timestamp.
Time when even handlers begin and time when they finish executing.
Whether or not the event was cancelable.
We plan to not ship the rendering timestamp at this point (do we shall ship with |duration| set to 0). After some conversation with Microsoft, we decided to do some changes in how we present rendering information in Event Timing and Element Timing. Input delay is defined to be the time when event handlers begin being executed minus the event hardware timestamp, so the API allows computing this for the first input.
Comment on the urgency to ship: we’d like to ship First Input Timing ASAP ahead of the rest of Event Timing because we've been actively promoting First Input Delay (FID) to developers as one of the key metrics to help measure and optimize responsiveness, and as the field companion to TTI. We've been actively promoting it at key developers events (both I/O and CDS), we already surface it in our tools (Lighthouse and PageSpeed Insights), and CrUX exposes it as an experimental metric. To complete the picture, we need to enable RUM providers to gather FID. Even though we’ve extended the Origin Trial for Event Timing, we do not want to block the remaining EventTiming work (for example, implementing event counts correctly) on shipping FID.
Link to “Intent to Implement” blink-dev discussion
Intent to Implement for EventTiming
Origin Trial feedback summary
This section contains Event Timing Origin Trial feedback that is relevant to First Input Timing. One major user said that their event handling framework seemed to prevent them from using the API (injected lag was not being captured in the event timings). In the future we plan to solve this by adding a signal so the developers can tell us when event work is done.
Another major user said that they’d like to use Event Timing to report a more accurate FID than the event-handler based version.
Is this feature supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
Yes.
Debuggability
First Input Timing will be exposed to the Performance Timeline (performance.getEntries…) and could be observed via PerformanceObserver (observer.observe({entryTypes: [‘firstInput’...).
Risks
Interoperability and Compatibility
Event Timing as a whole was presented at TPAC, and the minutes are here. From this, we infer the following:
Edge: Public support
Firefox: Public support
Safari: Hard to say… slight negative signals: expressed general support for solving problem of event latency, but some minor concerns over API shape and security of rendering timestamps.
Web developers: Mostly positive feedback from OriginTrial. Some constructive feedback in terms of what can be improved but no negative feedback against the API itself.
Ergonomics
No ergonomics concerns.
Activation
There is already a polyfill for First Input Timing. This API just makes the information readily available via the Web Platform.
Is this feature fully tested by web-platform-tests? Link to test suite results from wpt.fyi.
Move from http/tests in to external/wpt is progress.
Entry on the feature dashboard
We currently only have a feature entry for Event Timing. Since we plan to ship First Input Timing in advance without the rest of Event Timing, it might be worth creating a separate entry (let me know).
We plan to not ship the rendering timestamp at this point (do we shall ship with |duration| set to 0). After some conversation with Microsoft, we decided to do some changes in how we present rendering information in Event Timing and Element Timing.
--
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.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAKgcGXixY0jbBUqOEiQBeZen4Z1Lzjc-RKRxLVZoMJpG1gnqwQ%40mail.gmail.com.
We (DevRel) always encourage a separate entry.
On Mon, Nov 26, 2018 at 10:52 PM 'Sadrul Chowdhury' via blink-dev <blin...@chromium.org> wrote:I am interested to know some details about the plan for measuring the rendering time for Event Timing/Element Timing apis. Is that available somewhere?
--
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.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/6b5da8a6-3fe5-4a45-909f-1e86cf88ae5e%40chromium.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.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/73827e64-4250-4c39-a225-3b321c74dd95%40chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACj%3DBEg7m_pSmP29-_Ff1dsAQ7N7MVad3Y85cmgu%3Dovy4sKDCw%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/73827e64-4250-4c39-a225-3b321c74dd95%40chromium.org.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/73827e64-4250-4c39-a225-3b321c74dd95%40chromium.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/CACj%3DBEg7m_pSmP29-_Ff1dsAQ7N7MVad3Y85cmgu%3Dovy4sKDCw%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/966ce76a-75d6-478d-b5b3-663eaa5e2b05%40chromium.org.
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/73827e64-4250-4c39-a225-3b321c74dd95%40chromium.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/CACj%3DBEg7m_pSmP29-_Ff1dsAQ7N7MVad3Y85cmgu%3Dovy4sKDCw%40mail.gmail.com.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/73827e64-4250-4c39-a225-3b321c74dd95%40chromium.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/CACj%3DBEg7m_pSmP29-_Ff1dsAQ7N7MVad3Y85cmgu%3Dovy4sKDCw%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/966ce76a-75d6-478d-b5b3-663eaa5e2b05%40chromium.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/8b2511f2-3aae-4aab-8fd1-135bd73b6a36%40chromium.org.
LGTM3
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
LGTM3
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/73827e64-4250-4c39-a225-3b321c74dd95%40chromium.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/1a566f5c-35b7-4ccd-b148-8abb932b1b38%40chromium.org.
LGTM3
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/73827e64-4250-4c39-a225-3b321c74dd95%40chromium.org.