<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>311569</bug_id>
          
          <creation_ts>2026-04-06 10:14:18 -0700</creation_ts>
          <short_desc>White brief full-screen flash after cold start, despite dark background_color / early document background</short_desc>
          <delta_ts>2026-04-22 15:08:54 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>Safari 26</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 26</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=300249</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=45640</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>andreisovidiu</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>formularsumo</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2197264</commentid>
    <comment_count>0</comment_count>
    <who name="">andreisovidiu</who>
    <bug_when>2026-04-06 10:14:18 -0700</bug_when>
    <thetext>When opening an installed PWA on iOS 26 and iOS 17 from a cold start (e.g. after force-quit), there is often a very short full-viewport white flash after the system/launch splash.

The visible sequence:
1. Dark - native splash / theme-aligned frame
2. White - one or a few frames
3. Dark - first meaningful web paint (shell or content)

The flash is transient but highly noticeable and hurts perceived quality for dark-themed apps. The flash is not perceived if the OS is set to light and not dark but only when the OS is dark and the app dark (when OS is set to light, there is a smooth transition from light to dark theme of the app)

- We have tried web-side mitigations verified in production HTML, including:

- Manifest background_color / theme_color aligned with the app

- Inline background-color on &lt;html&gt; and &lt;body&gt; from the root document

- Critical CSS in &lt;head&gt; (html, body { background-color: …; color-scheme: dark })

- Global CSS on html after stylesheet load

None of these eliminated the white frame on iOS standalone cold start. Android (installed PWA) does not show a comparable flash with the same deployment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2197267</commentid>
    <comment_count>1</comment_count>
    <who name="">andreisovidiu</who>
    <bug_when>2026-04-06 10:20:35 -0700</bug_when>
    <thetext>Expected result:
The viewport should remain continuously dark from the launch through first web paint, matching manifest and document background, with no full-screen white frame.

Actual result:
A brief white full-screen flash appears between splash and first dark web paint on iOS standalone PWA cold start. Android Chrome installed PWA: not reproduced with the same site.

Stack (for context only): Next.js 15, React 19, Firebase Auth on client; issue reproduced on production builds, not only dev server.

To reproduce add to home screen the following app and cold start multiple times.

https://gympulsed.vercel.app/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2197369</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2026-04-06 13:49:44 -0700</bug_when>
    <thetext>Thank you for the report! Possibly a dupe of the bugs I&apos;m relating, but leaving it to the experts to decide.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2197509</commentid>
    <comment_count>3</comment_count>
    <who name="">andreisovidiu</who>
    <bug_when>2026-04-06 23:25:56 -0700</bug_when>
    <thetext>(In reply to Alexey Proskuryakov from comment #2)
&gt; Thank you for the report! Possibly a dupe of the bugs I&apos;m relating, but
&gt; leaving it to the experts to decide.

Thank you Alexey, can you please share the link to your bug report?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2199228</commentid>
    <comment_count>4</comment_count>
    <who name="">andreisovidiu</who>
    <bug_when>2026-04-11 10:55:15 -0700</bug_when>
    <thetext>Any update on the bug?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2199769</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-04-13 10:15:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/174668890&gt;</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>