• src/sbbs3/ctrl/MainFormUnit.cpp

    From Rob Swindell (on Windows 11)@1:103/705 to Git commit to main/sbbs/master on Fri Feb 6 03:20:31 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/1856c762225ee58c86995ca9
    Modified Files:
    src/sbbs3/ctrl/MainFormUnit.cpp
    Log Message:
    Don't update Clients form directly from startup->client_on() callback

    This apppears to finally at long last resolve the "Index out of range" error
    - it's simply not safe to update GUI controls from other threads, so we're doing the update from the LogTimerTick (using a linked-list/queue of changes).

    The log timer ticks at 2Hz (we could increase that), so the Clients list isn't quite as "real time" as before, but it's plenty fast and smooth for my liking. --- SBBSecho 3.36-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Windows 11)@1:103/705 to Git commit to main/sbbs/master on Wed Mar 11 02:35:20 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/b628ad930c2f4ed85b559c6c
    Modified Files:
    src/sbbs3/ctrl/MainFormUnit.cpp
    Log Message:
    Restore Form "View states" - don't display always restore all forms as visible

    We've been saving the various form "Visible" states to the Registry forever, but we never restored those states upon startup. e.g. if you didn't want the "Clients" form to be viewable, for example, too bad, it'd also default to shown /visible on startup. That's now fixed: if you turn off the visibilty of any form (the servers, clients, nodes), they'll still off/invisible when you rerun sbbsctrl.

    Also removed some old C++Builder 5 work-around that was forcing the tabsheet's active page to a potentially blank/empty page.
    --- SBBSecho 3.37-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)