https://gitlab.synchro.net/main/sbbs/-/commit/838332e35280aa8865a3ed7f
Modified Files:
src/syncterm/Wren.adoc src/syncterm/scripts/sftp_app.wren ui_list.wren ui_popup.wren
Log Message:
SyncTERM: ListView gets type-to-search, Ctrl-F/G, click-activate, tag mode
Type-to-search: any printable codepoint grows a rolling buffer and
jumps to the first item whose searchTextFor_ starts with it (case-
insensitive ASCII fold). No-match falls back to just the new char.
Buffer resets on any nav / activation key.
Ctrl-F: prompts via a new compact Find popup (3 rows tall, title in
the top frame border, full innerBounds row for the input, no buttons), case-insensitive substring search wrapping the list. Ctrl-G repeats
the last query.
Click-to-activate: button1Click on a row both selects and fires
onSelect, matching UIFC's ulist.
Tag mode: opt-in via selectionMode = "tag". Per-item flags toggled
by Space; tagged getter returns the indices. 1-cell marker column
uses theme tag.on / tag.off glyphs.
searchTextFor_(item) is the subclass hook for what users type
against; defaults to formatItem(item, 1024). BrowserListView and
QueueListView override it to point at the bare filename instead of
the chip-prefixed display line.
Co-Authored-By: Claude Opus 4.7 (1M context) <
noreply@anthropic.com>
---
■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net