Paint Holding - 同一オリジン ナビゲーションでの白いフラッシュの低減

しばらくの間、Chrome は Google Chat に移行するときに 新しいページを表示して、ユーザーが安心してページを読み込んでいます。この「一瞬にして 白」ブラウザが白紙の状態になり、 表示されます。特に、ページがより興味深い状態に到達するまでに十分な時間がかかる場合は、ナビゲーションの合間に気を散らす可能性があります。

しかし、ページの読み込みが非常に速い場合、このアプローチは実際にはユーザー エクスペリエンスに悪影響を及ぼします。次のアニメーションは、Google が作成した 現在の状態になっています。

私たちはこのウェブサイトの大ファンです この問題は修正したいと思っています。新しい動作でこれを実現しました。 これはペイントホールディングと呼ばれるもので ブラウザは 特にページが高速であれば ペイントが開始されますこれにより ユーザー エクスペリエンスが向上します。

コンポジタ コミットは、特定のページ読み込みシグナル(PLS)(コンテンツの初回ペイント / 固定タイムアウトなど)に達するまで延期されます。メインスレッドのレンダリング処理と実装スレッドへの commit を区別します(後者のみが延期されます)。PLS が発生するまで待つことで、 白色または点灯します。

この作業の目的は、同じオリジンの 2 つのページ間の Chrome でのナビゲーションをシームレスにし、古いコンテンツと新しいコンテンツの間に白色または単色の背景が点滅することなく、高速なデフォルトのナビゲーション エクスペリエンスを提供することでした。

Chrome Canary(Chrome 76)でペイント ホールド機能をお試しいただき、ご意見やご感想をお寄せください。 デベロッパーは、ソースコードに変更を加えることなく、 ページを共有して活用しましょう。