Settings phone sheet selects the hidden App Passwords heading for other groups #649

Open
opened 2026-10-01 19:27:37 +00:00 by kayg · 1 comment
Owner

Found during #491 production screenshot capture. Open /settings/apps/events at 390 px. The Event subscriptions card is in view, but the sheet header says App Passwords. The deep link reaches the right card. The label is wrong.

Evidence: phone screenshot. The same case occurs in dark mode.

packages/ui/src/components/OverlaySurface.svelte selects the last [data-sheet-title] whose top is above the header boundary. It skips [hidden], but a Settings heading hidden by sheet CSS has a zero rectangle and can still win selection. The App Passwords heading follows Event subscriptions in the DOM. Check hidden headings before choosing the sheet title, and retain the existing scroll behaviour.

This is a title error, with no data loss or authorization effect. It is not a merge gate under the owner testing rule. No shared Surface behaviour was changed by #491.

Found during #491 production screenshot capture. Open `/settings/apps/events` at 390 px. The Event subscriptions card is in view, but the sheet header says App Passwords. The deep link reaches the right card. The label is wrong. Evidence: [phone screenshot](https://git.kayg.org/attachments/5b6a77b9-6480-42d8-bd80-f3ccb845b291). The same case occurs in dark mode. `packages/ui/src/components/OverlaySurface.svelte` selects the last `[data-sheet-title]` whose top is above the header boundary. It skips `[hidden]`, but a Settings heading hidden by sheet CSS has a zero rectangle and can still win selection. The App Passwords heading follows Event subscriptions in the DOM. Check hidden headings before choosing the sheet title, and retain the existing scroll behaviour. This is a title error, with no data loss or authorization effect. It is not a merge gate under the owner testing rule. No shared Surface behaviour was changed by #491.
Author
Owner

Reproduced the reported title error with a CSS-hidden Settings heading: a zero-size App Passwords heading had top=0 and replaced Event subscriptions in the phone sheet. Added a zero-width/height guard in OverlaySurface (#649), with a regression test that failed before the fix and passes now. Commit: 2df5b1b93.

Reproduced the reported title error with a CSS-hidden Settings heading: a zero-size App Passwords heading had top=0 and replaced Event subscriptions in the phone sheet. Added a zero-width/height guard in OverlaySurface (#649), with a regression test that failed before the fix and passes now. Commit: 2df5b1b93.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
kayg/calternal#649
No description provided.