From 319afe2c5df07d9f09058b18ad37069a86dbd3f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Padez?= Date: Wed, 19 Aug 2026 10:32:57 +0000 Subject: [PATCH] note that 19 panels put inputs outside a form Typing a value and pressing Enter does nothing in any of them; the button is the only way to submit. Found in gitea's connection screen and fixed there only, because the rest are not one change: a search box has no submit and wrapping it changes nothing, while a multi-field editor wants the useForm hook rather than a hand-rolled onSubmit. Co-Authored-By: Claude Opus 5 --- TODO.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/TODO.md b/TODO.md index fe687aec..454d4272 100644 --- a/TODO.md +++ b/TODO.md @@ -314,6 +314,23 @@ Two things it does NOT do, both deliberate and both worth knowing: update. That is the right default — an install that silently fetches whatever is latest is not reproducible — but there is no "check for a newer one" anywhere. +## Inputs outside forms (2026-08-19) + +**19 panel files use `Input` with no `
` around it.** Typing a value and pressing Enter does +nothing; the button is the only way to submit, which is a keyboard trap wearing a layout. Reported from +gitea's connection screen — "I shouldn't have to click the button" — and fixed there only. + +The list, from `grep -rl components/ui/input` filtered by absence of ``: + + plugins/bitcoin-wallet: ChainSourceCard, RescanCard, WalletSettingsView + plugins/invoices: components, CustomersListView, DocumentEditor, EstimatesListView, + ExpensesListView, InvoicesListView, ItemsListView, RecordEditors + …and the rest of the 19 + +Not a blind sweep: a search box has no submit and wrapping one changes nothing, while an editor with +several fields wants `useForm` (`workspaces/hooks`) rather than a hand-rolled `onSubmit`. Each one needs +looking at. What they share is that none of them was a decision. + ## Affordances (2026-08-19) Agreed and written down in `plugins/CLAUDE.md`; **nothing is built**. An affordance is what the surface