Problem
When editing a previously configured adapter in the channel picker (via [e]), all fields start blank and must be re-entered from scratch. The VM preserves state, but the views don't pre-populate inputs on re-entry.
Affected Fields
- DM toggle (
SelectionListNode) — _highlightedIndex is private, always starts at 0. Need WithHighlightedIndex(int) to pre-select Yes/No.
- Enable toggle — same issue, but skipped via
SkipEnableSubStep in the picker flow.
Needs Termina investigation (password input + .Text setter)
- Bot token (Discord/Slack) — setting
.Text on a password TextInputNode before focus causes the Submitted observable to fire immediately on paste, looping the user back to the same step. May need a Termina fix for .AsPassword() + .Text pre-seeding, or a different approach (e.g., showing masked placeholder text like •••••••• and only replacing on new input).
- App token (Slack) — same issue as bot token.
Already working
- Channel IDs (Discord), channel names (Slack), allowed user IDs (both), owner identity (Slack) — these use plain
TextInputNode and pre-populate correctly today.
Context
Discovered during manual TUI testing of #763 (unified channel picker step). The pre-population attempt for password fields was reverted in that PR after it caused an input loop bug.
Problem
When editing a previously configured adapter in the channel picker (via
[e]), all fields start blank and must be re-entered from scratch. The VM preserves state, but the views don't pre-populate inputs on re-entry.Affected Fields
Needs Termina patch (blocked on Aaronontheweb/termina#203)
SelectionListNode) —_highlightedIndexis private, always starts at 0. NeedWithHighlightedIndex(int)to pre-select Yes/No.SkipEnableSubStepin the picker flow.Needs Termina investigation (password input +
.Textsetter).Texton a passwordTextInputNodebefore focus causes theSubmittedobservable to fire immediately on paste, looping the user back to the same step. May need a Termina fix for.AsPassword()+.Textpre-seeding, or a different approach (e.g., showing masked placeholder text like••••••••and only replacing on new input).Already working
TextInputNodeand pre-populate correctly today.Context
Discovered during manual TUI testing of #763 (unified channel picker step). The pre-population attempt for password fields was reverted in that PR after it caused an input loop bug.