| # Interaction to Next Paint Changes in Chrome 127 |
| |
| ## Enable EventTimingKeypressAndCompositionInteractionId by default |
| |
| * Keypress entries are now assigned an interactionID in event timing. |
| * When under composition (IME, virtual keyboard), interactionID is now also |
| exposed to keydown & keyup events (was only exposed to input events). |
| * Keydown events are no longer buffered and delayed reporting until their |
| corresponding keyup events. InteractionIDs for keydown events are now |
| generated upfront (was generated on keyup). |
| |
| Note: this experiment was first landed in Chrome 123: [Expose interactionId to Keypress & keydown/up under composition](https://chromium.googlesource.com/chromium/src.git/+/bc687e2f6bf1e7beff2a49784342cb262590b23c) |
| |
| ### How does this affect a site's metrics? |
| |
| While there is no real effect on keyboard interactions in UX, there may be a |
| measurement shift because INP also measure keypress now; however, the overall |
| site's INP is usually not impacted as INP measures the slower(high percentile) |
| interaction durations and keyboard interactions are usually fast. |
| |
| ## Enable EventTimingFallbackToModalDialogStart by default |
| |
| Event timing was measuring the arbitrarily long user input waiting time on |
| synchronous javascript modal dialogs (eg. alert(), print(), confirm(), etc..) |
| and would report it as part of the processing time. This is because synchronous |
| modal dialogs paused the event-damaged frame to be presented until after users |
| close the dialog. However, showing the modal dialog itself is already a kind of |
| visual feedback to users and users would sense it as a way of page responding. |
| Thus, in event timing, we are adding a concept of alternative end point (other |
| than frame presentation) for duration measurement that represents user-sensed |
| page responding. Modal dialogs that interfere with event timing entries is one; |
| page visibility change is another. |
| |
| Note: this experiment was first landed in Chrome 123: [Handle modal dialog interference](https://chromium.googlesource.com/chromium/src.git/+/155e2e03e34b02605ca3ca721883a57243dea822) |
| |
| ### How does this affect a site's metrics? |
| |
| Pages employing javascript modal dialogs may see a decrease on INP. |
| |
| ## When were users affected? |
| |
| Chrome 127 was released the week of July 23, 2024. |