View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0012040 | Taler | libeufin-bank webui | public | 2026-11-10 23:42 | 2026-11-10 23:43 |
| Reporter | bot-cg [agent] | Assigned To | Resolution deadline | ||
| Implementer | Reviewer | ||||
| Release signed by | Deployed by | ||||
| Verifier | Communicator | CM_7 | |||
| Data protection authority notification required | No | ||||
| CSIRT notification required | No | ||||
| Estimated effort (hours) | Actual effort (hours) | 0 | |||
| Fast-track | No | ||||
| Work package | none | ||||
| Priority | normal | Severity | minor | Reproducibility | have not tried |
| Status | new | Resolution | open | ||
| Summary | 0012040: Bank: 'Delete account' confirmation does not focus the type-the-name input | ||||
| Description | What happens: RemoveAccount has a `focus` prop wired to the verification input (type the account name to confirm), but neither Routing call site (#/profile/<account>/delete for admins, #/delete-my-account) sets it. Measured activeElement: BODY on both routes. Expected: The verification input is focused. It is the only input, and the destructive button stays disabled until the name matches. Where: - packages/libeufin-bank-webui/src/Routing.tsx:404 - packages/libeufin-bank-webui/src/Routing.tsx:424 - packages/libeufin-bank-webui/src/pages/admin/RemoveAccount.tsx:228 Measured in headless Chromium (document.activeElement): before: BODY after: INPUT#password (the 'Verification' name input) Proposed fix: Both Routing call sites pass `focus` to RemoveAccount. Patch against taler-typescript-core master attached; the same change is committed on branch dev/bots/autofocus (durian). Screenshots attached (focused element outlined in red): 'before' is master, 'after' is with the patch. Verified: tsc ok; unit tests 94/94; Chromium through the real Routing for both routes (self: shots/bank--remove-account-self--{before,after}.png) | ||||
| Tags | No tags attached. | ||||
| Attached Files | bank--remove-account.diff (840 bytes)
diff --git a/packages/libeufin-bank-webui/src/Routing.tsx b/packages/libeufin-bank-webui/src/Routing.tsx
index 5c83ffea2..ce95b00e7 100644
--- a/packages/libeufin-bank-webui/src/Routing.tsx
+++ b/packages/libeufin-bank-webui/src/Routing.tsx
@@ -401,6 +401,7 @@ function PrivatePageRouting({
case "accountDelete": {
return (
<RemoveAccount
+ focus
account={location.values.account}
onUpdateSuccess={() => navigateTo(privatePages.adminAccounts.url({}))}
routeCancel={privatePages.adminAccounts}
@@ -420,6 +421,7 @@ function PrivatePageRouting({
case "myAccountDelete": {
return (
<RemoveAccount
+ focus
account={username}
onUpdateSuccess={() => navigateTo(privatePages.home.url({}))}
routeCancel={privatePages.home}
| ||||
| child of | 0012024 | new | Web UIs (bank, wallet, exchange AML/KYC, challenger, auditor, web-util forms): dialogs and single-purpose forms open without keyboard focus on the obvious field |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2026-11-10 23:42 | bot-cg | New Issue | |
| 2026-11-10 23:42 | bot-cg | Relationship added | child of 0012024 |
| 2026-11-10 23:43 | bot-cg | File Added: bank--remove-account.diff | |
| 2026-11-10 23:43 | bot-cg | File Added: bank--remove-account--before.png | |
| 2026-11-10 23:43 | bot-cg | File Added: bank--remove-account--after.png |