Files
TerminalBasic/openspec/changes/archive/2026-09-05-forms-zustand-und-bedienung/proposal.md

31 lines
1.4 KiB
Markdown

## Why
Listen und Timer erfüllen einfache gültige Zustandsübergänge nicht: ListIndex=-1 liefert Fehler 5; ein spät aktivierter Timer holt Zeit seit Programmstart nach. F12/F13 betreffen das Zustandsmodell unabhängig von dessen späterem Ereignisdispatch. Siehe [Review vom 05.09.2026](../../../../docs/reviews/2026-09-05-openspec-code-review.md).
## What Changes
- Explizites Aufheben einer Listenauswahl unterstützen und List/Text/Count bei Einfügen/Entfernen konsistent halten.
- Timerfristen ab Aktivierung bzw. neu gesetztem Intervall starten und deaktivierte Zeiten nicht nachholen.
## Capabilities
### New Capabilities
Keine neuen Capability-Pfade.
### Modified Capabilities
- `forms-steuerelemente`: Listen-Auswahl und Zeitbezug des Timer-Steuerelements durch präzise Zustandsübergänge ergänzen.
## Impact
crates/tb-ui/src/forms.rs, Forms-Unit-/VM-Tests, Formular-Korpus und docs/forms-referenz.md. Baut auf der geordneten Ereigniszustellung auf.
Die Behebung der Darstellungsbefunde betrifft zusätzlich
crates/tb-runtime/src/screen.rs: Forms-Zeilen verwenden den vorhandenen
Zellenschreibpfad ohne Umbruch oder Scrollen am Bildschirmrand. `tb-ui`
nutzt die bereits vorhandene Workspace-Abhängigkeit `unicode-width` für
dieselbe Breitenberechnung wie die Runtime.
Nach ereigniszustellung-und-hostgrenzen. Ändert nur die Requirements zu Listen und Timer, nicht Fokus/Menü desselben Capability-Pfads.