BBS: TELESC.NET.BR Assunto: src/syncterm/scripts/auto/connected/scrollback_view.wrensrc/syncterm/C De: Deuc¨ Data: Tue, 5 May 2026 05:32:15 -0700 ----------------------------------------------------------- https://gitlab.synchro.net/main/sbbs/-/commit/e7394337303a1c648f71532a Added Files: src/syncterm/scripts/auto/connected/scrollback_view.wren Modified Files: src/syncterm/CMakeLists.txt src/syncterm/SyncTERM.pbproj/project.pbxproj src/syncterm/SyncTERM.vcxproj bbslist.c objects.mk src/syncterm/scripts/auto/connected/keys_default.wren online_menu.wren src/syncterm/scripts/syncterm.wren wrentest.wren src/syncterm/term.c wren_bind.c wren_bind_conn.c wren_bind_screen.c wren_bind_screen.h wren_host.c wren_host_internal.h Removed Files: src/syncterm/menu.c menu.h Log Message: SyncTERM: move scrollback viewer to Wren, delete menu.c Replaces viewscroll() with scripts/auto/connected/scrollback_view.wren - a Fiber-driven modal that pushes the live cterm region into the scrollback ring, runs its own Input.next() pan loop (arrows / jklh / PgUp/PgDn / Home/End / wheel / drag-select / Esc / q), and pops the ring on exit. Help is a Pane-rendered markdown popup reached via F1. Wren bindings: new Scrollback foreign class behaves as a Surface via linearize-and-dispatch (in-place 3-reverse row rotation, no malloc'd copy) plus pushScreen / popScreen verbs that wrap the live cterm region into and out of the ring. Surface.urlAt(col, row) wraps detect_url_at. Scrollback.is(_) overrides so `Scrollback is Surface` is true. The previously-added Hyperlinks.open(id) primitive is removed; opening URLs from script bypassed the consent model that treats a real user click as the gating gesture. C side: handle_mouse_event() folds wheel-press into the existing button-2/3 conn_send block (preserving tracking-mode wheel-to-remote forwarding), with the Hook.onMouse(wheelUpPress) gate in scrollback_view.wren consuming wheel-press in OFF/RIP/X10 to enter the viewer. Conn.scrollback() now invokes ScrollbackView.run() via wrenCall, so menu.c is deleted entirely. Co-Authored-By: Claude Opus 4.7 (1M context)n --- mSynchronetn hgVertrauen n hHome of Synchronet n gh[vert/cvs/bbs].synchro.net ----------------------------------------------------------- [Voltar]