https://gitlab.synchro.net/main/sbbs/-/commit/716fdefcfab4f09a178bde67
Modified Files:
src/doors/syncdoom/syncdoom.c
Log Message:
syncdoom: move onto termgfx keymode
The last of the four doors to stop carrying its own copy of the terminal key-mode negotiation. termgfx/keymode.h (cf67bccb2a, thrown-29-throw) now supplies the evdev/kitty enable and restore sequences, the evdev-wins precedence, the enable-time settle window, the 88-entry evdev->ASCII
table and the modifier classifier.
g_kitty_active and g_evdev_active stay as plain int globals, because
m_menu.c reads them to grey out the key-feel sliders once a native
key-up path is negotiated, and m_menu.c is vendored. They are now
mirrors, set from the shared state after an enable succeeds and cleared
in the restore -- rather than the state itself.
The restore is a single termgfx_keymode_restore() emitting only what was actually enabled, in place of two hand-guarded literal writes.
No change to the bytes on the wire, the settle window's 500ms, or the
evdev key handling: Shift still asserts the engine's Run + Strafe
scancodes, Ctrl and physical Alt are still tracked and never forwarded (SyncTERM reserves Alt+key), and the Shift-folds-to-upper-in-menus-only
rule is unchanged.
---
� Synchronet � Vertrauen � Home of Synchronet � [vert/cvs/bbs].synchro.net