Skip to content

fix(desktop): no seam while the vault doors are shut; smaller mark - #20

Merged
pyramation merged 1 commit into
mainfrom
feat/seamless-vault-door
Aug 8, 2026
Merged

fix(desktop): no seam while the vault doors are shut; smaller mark#20
pyramation merged 1 commit into
mainfrom
feat/seamless-vault-door

Conversation

@pyramation

Copy link
Copy Markdown
Contributor

Summary

At rest the doors were still two 50%-width panels sitting edge to edge, so a hairline showed down the middle of the locked screen. The panels now only exist while there is motion; shut, the surface is a single element. The mark is also half the size (22vh, max 192px), which reads as elegant rather than a splash screen.

-{['left','right'].map(side => <Panel …/>)}   // always split, seam visible at rest
+{sealed
+  ? <div data-testid="vault-door-sealed" class="inset-0">{face}</div>
+  : ['left','right'].map(side => <Panel …/>)}

The swap is invisible because the face is factored into one Face that is always centred on the viewport: sealed it is centred in a full-width element, split each panel clips a viewport-wide copy at the same place, so the pixels are identical on the frame the split happens (which is also the frame the panels start moving). The boxShadow is now unconditional on the panels for the same reason — panels only render while moving, so it can never be visible at rest. Also drops the seam divider element that used to draw that line deliberately, and moves the controls to bottom-[12vh] to sit with the smaller mark.

Verified in the running app: the locked screen is one surface with the mark at 174px (22vh of 793), and sampling getComputedStyle during unlock shows sealed→split then translateX 0 → -637px over the 560ms ease-out before the panels unmount.

Screenshots

Opening and closing, captured from the running app:

doors opening

doors closing

Link to Devin session: https://app.devin.ai/sessions/04636534e07048089ffb6b78142e12cd
Requested by: @pyramation

@pyramation pyramation self-assigned this Aug 8, 2026
@devin-ai-integration

Copy link
Copy Markdown

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment, CI, and merge conflict monitoring

@pyramation
pyramation merged commit 307872d into main Aug 8, 2026
5 checks passed
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