fix: keep the dApp approval error containers to their reserved height #424

Merged
clawbot merged 1 commits from issue-297-approval-error-reserve into next 2026-10-04 12:58:28 +02:00
Collaborator

Closes #297.

#approve-tx-error and #approve-sign-error reserved 20px (min-h-[1.25rem]), but they are the only password error containers with a border and padding, which took 10px of it. A one-line error grew them to 26px and pushed the Confirm/Sign and Reject buttons down 6px. They now reserve min-h-[1.875rem] (30px), measured rather than taken from the issue's arithmetic. The empty containers are 10px taller than before, so on both approval screens the buttons sit 10px lower and no longer move. The other four password error containers are unchanged.

New end-to-end test in tests/e2e/run.js, next to the flash line tests from #420 and at the same 360x600 viewport: for each of the six password error containers it shows only that container's screen, fills it as showError() does, and asserts its height and the top of the element below are unchanged. Without the fix it fails on #approve-tx-error (20px empty, 26px with an error).

  • Judgement call: the test shows each screen by unhiding it directly, not through the app's navigation, so the approval screens are measured without a pending request.
  • Some longer messages these two containers can show still wrap to two lines and push the buttons down (the transaction screen's no-wallet message, the typed-data primary-type refusals, the sign screen's failures that cannot be retried); not fixed here.
  • The popup body is a fixed 396px wide, so a 360px viewport does not make it narrower.

Model: opus-5-5

Closes https://git.eeqj.de/sneak/AutistMask/issues/297. `#approve-tx-error` and `#approve-sign-error` reserved 20px (`min-h-[1.25rem]`), but they are the only password error containers with a border and padding, which took 10px of it. A one-line error grew them to 26px and pushed the Confirm/Sign and Reject buttons down 6px. They now reserve `min-h-[1.875rem]` (30px), measured rather than taken from the issue's arithmetic. The empty containers are 10px taller than before, so on both approval screens the buttons sit 10px lower and no longer move. The other four password error containers are unchanged. New end-to-end test in `tests/e2e/run.js`, next to the flash line tests from https://git.eeqj.de/sneak/AutistMask/pulls/420 and at the same 360x600 viewport: for each of the six password error containers it shows only that container's screen, fills it as `showError()` does, and asserts its height and the top of the element below are unchanged. Without the fix it fails on `#approve-tx-error` (20px empty, 26px with an error). - Judgement call: the test shows each screen by unhiding it directly, not through the app's navigation, so the approval screens are measured without a pending request. - Some longer messages these two containers can show still wrap to two lines and push the buttons down (the transaction screen's no-wallet message, the typed-data primary-type refusals, the sign screen's failures that cannot be retried); not fixed here. - The popup body is a fixed 396px wide, so a 360px viewport does not make it narrower. Model: opus-5-5
clawbot added the needs-review label 2026-10-04 11:45:43 +02:00
clawbot self-assigned this 2026-10-04 11:45:43 +02:00
Author
Collaborator

PASS

Model: opus-5-5

PASS Model: opus-5-5
clawbot added 1 commit 2026-10-04 12:36:58 +02:00
fix: keep the dApp approval error containers to their reserved height (closes #297)
check / check (push) Waiting to run
e2e / e2e-chrome (push) Waiting to run
e2e / e2e-firefox (push) Waiting to run
630bb08537
#approve-tx-error and #approve-sign-error reserved 20px, but their border
and padding took 10px of it, so a one-line error grew them to 26px and
pushed the Confirm/Sign buttons down 6px. They now reserve 30px, the same
4px to spare over one line that the other password error containers have.

A new end-to-end test shows each of the six password error containers on
its own screen at the popup viewport, empty and then with an error, and
fails if one changes height or the element below it moves.

Model: opus-5-5
clawbot force-pushed issue-297-approval-error-reserve from d9b8bc1d32 to 630bb08537 2026-10-04 12:36:58 +02:00 Compare
Author
Collaborator

Rebased onto bec20aa; the only conflict was TODO.md, resolved by keeping both Completed Steps entries (this one above the new entry for #250); nothing else changed.

Model: opus-5-5

Rebased onto `bec20aa`; the only conflict was `TODO.md`, resolved by keeping both Completed Steps entries (this one above the new entry for https://git.eeqj.de/sneak/AutistMask/issues/250); nothing else changed. Model: opus-5-5
Author
Collaborator

PASS

Model: opus-5-5

PASS Model: opus-5-5
clawbot merged commit 1247c24c4d into next 2026-10-04 12:58:28 +02:00
clawbot deleted branch issue-297-approval-error-reserve 2026-10-04 12:58:29 +02:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sneak/AutistMask#424