Skip to content

fix(warmup): the boot screen fits the device it boots on - #224

Merged
tranh0anghuan merged 1 commit into
testfrom
fix/warmup-responsive
Sep 18, 2026
Merged

tranh0anghuan merged 1 commit into
testfrom
fix/warmup-responsive

Conversation

@tranh0anghuan

Copy link
Copy Markdown
Contributor

Measured in a headless browser at 320 through 1440: the splash overflowed by 8px across and 16px down at EVERY viewport. still carries the UA's default 8px margin while this screen is up — loader.css ships no reset and the app's stylesheet has not arrived yet, which is the whole reason the screen exists — so width:100vw; height:100vh never fit. On a phone that is a splash you can pan sideways with its right edge cut off.

The card was worse: 455px of content plus 32px padding is a 519px border box, and loader.css caps it with max-width:100vw, which caps the CONTENT box. On a 375px phone it measured 439px at x:-24, hanging off both edges with no effective padding, and the progress track — left:0/right:0 on that card — ran the full width of the screen with its rounded ends clipped off.

  • position:fixed resolves against the initial containing block, so the body margin cannot reach the splash and no ancestor can resize it
  • 100dvh after 100vh: 100vh on a phone is the viewport with the URL bar retracted, so centring against it put the lockup low, behind the toolbar, for as long as the toolbar showed
  • border-box on the card, with its 519px footprint restated as a sum so nothing above phone width is resized
  • phone, tablet and short-viewport breakpoints: full bleed (the 32px radius is drawn on a full-screen element, so it notches the display corners rather than rounding a card), compacted padding, lockup and caption

Overflow is now 0 in both axes from 280px to 1440px. Above tablet width the card, lockup and bar keep their exact measurements; the only change there is that the screen is no longer offset by the body margin.

Measured in a headless browser at 320 through 1440: the splash overflowed
by 8px across and 16px down at EVERY viewport. <body> still carries the
UA's default 8px margin while this screen is up — loader.css ships no
reset and the app's stylesheet has not arrived yet, which is the whole
reason the screen exists — so `width:100vw; height:100vh` never fit. On a
phone that is a splash you can pan sideways with its right edge cut off.

The card was worse: 455px of content plus 32px padding is a 519px border
box, and loader.css caps it with max-width:100vw, which caps the CONTENT
box. On a 375px phone it measured 439px at x:-24, hanging off both edges
with no effective padding, and the progress track — left:0/right:0 on that
card — ran the full width of the screen with its rounded ends clipped off.

- position:fixed resolves against the initial containing block, so the body
  margin cannot reach the splash and no ancestor can resize it
- 100dvh after 100vh: 100vh on a phone is the viewport with the URL bar
  retracted, so centring against it put the lockup low, behind the toolbar,
  for as long as the toolbar showed
- border-box on the card, with its 519px footprint restated as a sum so
  nothing above phone width is resized
- phone, tablet and short-viewport breakpoints: full bleed (the 32px radius
  is drawn on a full-screen element, so it notches the display corners
  rather than rounding a card), compacted padding, lockup and caption

Overflow is now 0 in both axes from 280px to 1440px. Above tablet width the
card, lockup and bar keep their exact measurements; the only change there is
that the screen is no longer offset by the body margin.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Credits must be used to enable repository wide code reviews.

@tranh0anghuan
tranh0anghuan merged commit a631d58 into test Sep 18, 2026
9 checks passed
@sonarqubecloud

Copy link
Copy Markdown

@github-actions

github-actions Bot commented Sep 18, 2026

Copy link
Copy Markdown

Claude encountered an error after 0s —— View job


I'll analyze this and get back to you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant