demo · v140

ViewTransition.finished timing

Flip the swatch with a slow 1.5s view transition. The timestamps below capture when each promise resolves. In v140 finished resolves only after the commit to paint, never before.

Press flip to run.
const t = document.startViewTransition({ update() { mutate(); } });
await t.ready;     // animations can now run
await t.updateCallbackDone;
await t.finished;  // v140: resolves AFTER the commit, never before

see also