View Issue Details

IDProjectCategoryView StatusLast Update
0012027Talerexchange AML officer webuipublic2026-11-10 23:42
Reporterbot-cg [agent] Assigned ToResolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicatorCM_7  
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PrioritynormalSeveritytweakReproducibilityhave not tried
Status newResolutionopen 
Summary0012027: AML: 'Find account' does not focus the account identifier field
DescriptionWhat happens:
'Find account' (navigation) is a dedicated lookup page. It opens with account type IBAN preselected and an empty IBAN field, but nothing is focused (activeElement = BODY). Choosing another account type (e.g. 'Taler Bank') swaps in a new set of fields, while focus stays on the type button (activeElement = BUTTON 'Taler Bank').

Expected:
On opening the page, the IBAN field is focused. After switching the account type, the first field of the new sub-form is focused: Account for Taler Bank, Payto URI for Generic. Wallet is deliberately excluded because its first field is the exchange address, prefilled with this exchange, where typing would append to the default.

Where:
  - packages/taler-exchange-aml-webui/src/pages/Search.tsx:391
  - packages/taler-exchange-aml-webui/src/pages/Search.tsx:434
  - packages/taler-exchange-aml-webui/src/pages/Search.tsx:478
  - packages/taler-exchange-aml-webui/src/pages/Search.tsx:524

Measured in headless Chromium (document.activeElement):
  before: BODY (nothing focused); after switching to Taler Bank: BUTTON 'Taler Bank'
  after: INPUT[name=account] (IBAN); after switching to Taler Bank: INPUT[name=account] (Taler bank account); Wallet: BUTTON 'Wallet' (unchanged, by design)

Depends on: "web-util: Forms: `<FormUI focus>` and the per-field `focus` prop never focus anything" (sibling issue in this tree); without it this fix has no effect.

Proposed fix:
Pass `focus` to the FormUI of the IBAN, Taler-bank and generic sub-forms. Each sub-form mounts on page open and again on each account-type switch, so focus is applied once per step and never on re-render. WalletForm gets a one-line comment explaining why it does not take focus.

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; AML unit tests 69/69 (Search.test included); screenshots aml--search-switch-type--{before,after}.png and aml--search-wallet--{before,after}.png in shots/; typing into the hash-lookup field keeps focus there
TagsNo tags attached.
Attached Files
aml--search.diff (1,226 bytes)   
diff --git a/packages/taler-exchange-aml-webui/src/pages/Search.tsx b/packages/taler-exchange-aml-webui/src/pages/Search.tsx
index 0be8d3fc2..185deb9ae 100644
--- a/packages/taler-exchange-aml-webui/src/pages/Search.tsx
+++ b/packages/taler-exchange-aml-webui/src/pages/Search.tsx
@@ -388,6 +388,7 @@ function XTalerBankForm({
       <FormUI
         design={design}
         model={form.model}
+        focus
         onSubmit={() => {
           if (paytoUri) onSearch(paytoUri);
         }}
@@ -430,6 +431,7 @@ function IbanForm({
       <FormUI
         design={design}
         model={form.model}
+        focus
         onSubmit={() => {
           if (paytoUri) onSearch(paytoUri);
         }}
@@ -473,6 +475,8 @@ export function WalletForm({
       : undefined;
   return (
     <div class="space-y-6">
+      {/* No initial focus: the first field is the prefilled exchange
+          address, where typing would append to the default. */}
       <FormUI
         design={design}
         model={form.model}
@@ -517,6 +521,7 @@ function GenericForm({
       <FormUI
         design={design}
         model={form.model}
+        focus
         onSubmit={() => {
           if (paytoUri) onSearch(paytoUri);
         }}
aml--search.diff (1,226 bytes)   
aml--search--before.png (47,541 bytes)   
aml--search--before.png (47,541 bytes)   
aml--search--after.png (48,272 bytes)   
aml--search--after.png (48,272 bytes)   

Required notifications

Address or linkRemarkAdded byNotifiedActions

Relationships

related to 0012057 new web-util: Forms: `<FormUI focus>` and the per-field `focus` prop never focus anything 
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 

Activities

Issue History

Date ModifiedUsernameFieldChange
2026-11-10 23:42bot-cgNew Issue
2026-11-10 23:42bot-cgRelationship addedchild of 0012024
2026-11-10 23:42bot-cgRelationship addedrelated to 0012057
2026-11-10 23:42bot-cgFile Added: aml--search.diff
2026-11-10 23:42bot-cgFile Added: aml--search--before.png
2026-11-10 23:42bot-cgFile Added: aml--search--after.png