• exec/avatar_chooser.js ftn-setup.js exec/load/mouse_getkey.js tree.js

    From Rob Swindell@VERT to Git commit to main/sbbs/master on Sunday, July 03, 2022 21:40:16
    https://gitlab.synchro.net/main/sbbs/-/commit/8da6013947680646b77ef6ad
    Modified Files:
    exec/avatar_chooser.js ftn-setup.js exec/load/mouse_getkey.js tree.js exec/xtrn-setup.js xtrn/minesweeper/minesweeper.js
    Log Message:
    Use Synchronet's built-in mouse tracking support

    Synchronet uses "extended normal" mouse reporting for mouse support
    (e.g. menu/display file clickable "hot spots"). Many of the JS scripts
    that predated Synchronet's own internal mouse support would send their
    own mouse-reporting enablement and disablement ANSI sequences and the
    terminal could become out of sync with the expectations of the script
    (i.e. it would not necessarily disable the mouse modes that had been
    set by SBBS before enabling its own preferred mode).

    And some scripts (e.g. Synchronet Minesweeper) use a mixture of Synchronet hotspot support and direct mouse click coordinate reporting, so it was a
    mess going between different mouse reporting modes at different times in the same script.

    This all came to light as a result of the fix for issue #412: using mouse button releases rather than presses to trigger a hotspot.

    So mouse_getkey() now has as a separate "release" property it sets in the return value. Right now its always the opposite of "press", but I can imagine some mouse tracking modes where movement might be reported with neither a button press nor release event.

    Anyway, Nelgin, give this a try and see if it resolves the issues you were reporting in IRC with avatar chooser mouse support.

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