Onboarding was designed for mobile only, so the desktop is a tablet by default #67
Labels
No labels
needs-info
needs-triage
ready-for-agent
ready-for-human
v2
wayfinder:grilling
wayfinder:map
wayfinder:prototype
wayfinder:research
wayfinder:task
wayfinder:ticket
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
aiko/denpa#67
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found on 2026-07-31, running the desktop app through enrolment for the first time.
The design has no desktop
docs/design/denpa-receiver/README.md:183opens § 3a with its own answer:292×600 is a phone. Every screen beneath that heading is specified at that size, and no desktop treatment is given anywhere in § 3a. Compare § 3b Settings, which says exactly what the desktop does — "Sheet occupies the right 600px of 1024; she stays visible at left". Onboarding got no equivalent sentence, and nobody noticed because onboarding is the least-seen screen in the product: you pass through it once per device and then never again.
What desktop gets instead
There is no desktop layout in the client at all.
components/receiver/chrome-plan.ts:153-156:Two layouts,
mobileandtablet-landscape. A desktop window is sorted intotablet-landscapeand gets that row's onboarding: a 640px measure (ONBOARDING_MEASURE_PX) centred on a ground that fills the window. The desktop is a tablet as far as this codebase is concerned.That is not wrong so much as undecided. It has simply never been looked at, because until
#26landed nobody had to pass through setup on the desktop.The default window sits exactly on the breakpoint
TABLET_LANDSCAPE_MIN_WIDTHis 900 (chrome-plan.ts:28) andtauri.conf.jsonopens the window at 900×670. The comparison is>=, so the default window resolves to tablet-landscape by a single pixel. Drag it one pixel narrower and the whole app — setup and chrome both — flips to the phone layout.Nothing is broken by this today. It is recorded because a layout that depends on the window being exactly its default width is a coin balanced on its edge, and the next person to change either number will not know they are touching two things.
#49did not cause this856ed03deleted onboarding'sSCREEN_WIDTH/SCREEN_HEIGHT, which was right: on a device that constant drew setup as a 292×600 box floating in black, 60% of the Pixel's width. Removing it fixed Android and made the desktop's missing design visible for the first time, because the black around the card had been standing in for a frame.The titlebar half is already fixed
Setup covered the window's only close, minimize and drag region —
tauri.conf.jsonsetsdecorations: falsefor § 1b's pal, there is one window, andWindowReceiverdrew its own titlebar while the onboarding branch did not. Fixed onissue/denpa-67-onboarding-titlebar; this issue is only the visual question.Beyond onboarding: the chrome wants a redesign
Raised by the operator on 2026-07-31, and this issue is the first place it has somewhere to sit.
The two-layout table is the whole story of how this app handles size, and it was drawn from a design that described a phone and a tablet. The desktop was never a case in it. Now that the desktop is a first-class surface — it is the machine she runs on, and the one you are most likely to be sitting at — the chrome should be designed for it rather than sorted into the nearest existing row.
That is a larger piece of work than this issue, and it should not be smuggled in under a setup screen. What this issue asks for is the decision; the redesign itself wants its own ticket once there is an opinion to build from. Worth deciding at the same time:
desktopbecomes a third layout, or whether tablet-landscape is genuinely right and only the breakpoint is wrongAcceptance
chrome-plan.tsis where it goes — setup takes its size from that table and must not grow a constant of its own again (#49)Related
denpa#49,denpa#66,ollvt-hermes-bridge#26, design § 3a / § 3b / § 1bDecided 2026-07-31: tablet-landscape is deliberately what the desktop uses.
No third layout. Onboarding is passed through once per device and never seen again, and the 640px measure on a filled ground is not wrong at 900px — it is simply the row it was sorted into, now chosen on purpose rather than by default.
chrome-plan.tskeeps its two rows.That decision does not cover the chrome, which is a separate and larger question. This issue's job is now:
TABLET_LANDSCAPE_MIN_WIDTHis 900 and the comparison is>=, so the default window resolves to tablet-landscape by one pixel and a one-pixel drag flips the whole app to phone. Move the window default to 1024×700 so the default sits clear of the boundary; leave the breakpoint where the design put itThe third layout stays available to that follow-up if the redesign wants one. It is not being pre-built for a setup screen.
Moving to
ready-for-agent— the decision theready-for-humanlabel was waiting on is made.Merged to
maininee25aaa, implementing the 2026-07-31 decision on this issue.All four acceptance items are met:
tauri.conf.jsonopens at 1024x700 instead of 900x670, so the default no longer sits one pixel from flipping the whole app to the phone layout.TABLET_LANDSCAPE_MIN_WIDTHstays at 900 where the design put it.chrome-plan.tskeeps its two rows; setup takes its size from that table and grew no constant of its own.Tests.
chrome-plan.test.ts(+18) pins the breakpoint behaviour. Gate on merged main: 62 files / 854 tests passing.