• src/syncterm/theme.c theme.h theme_test.csrc/syncterm/CMakeLists.txt D

    From Deuc¨@VERT to Git commit to main/sbbs/master on Monday, July 20, 2026 16:56:59
    https://gitlab.synchro.net/main/sbbs/-/commit/70923bcdf52b06ee5747d696
    Added Files:
    src/syncterm/theme.c theme.h theme_test.c
    Modified Files:
    src/syncterm/CMakeLists.txt DarwinWrappers.m menu_settings.c menu_settings.h objects.mk src/syncterm/scripts/syncterm.wren ui_app.wren ui_style.wren ui_widget_test.wren src/syncterm/syncterm.c syncterm.h wren_bind.c wren_menu_host.c wren_picker_host.c
    Removed Files:
    src/syncterm/scripts/classic_theme.wren
    Log Message:
    Move UI theme ownership into the C host

    Load the compiled default and selected INI theme in C so one
    process-wide style and glyph snapshot is shared by the menu,
    picker, and connected Wren VMs.

    Preserve Classic Theme as the built-in selection, apply settings
    changes transactionally, and fall back without erasing a missing or
    invalid configured filename.

    Remove the Wren-owned Classic mapping, add per-VM generation caches,
    and cover theme overlays, inheritance, glyphs, malformed input,
    filenames, and startup fallback with a CTest target.

    Co-Authored-By: OpenAI Codex <noreply@openai.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net