• exec/dorkit/ansi_input.js jsexec_input.js local_console.js sbbs_input.

    From Deucе@VERT to Git commit to main/sbbs/master on Tue Mar 9 15:27:03 2021
    https://gitlab.synchro.net/main/sbbs/-/commit/9a89f8c97776107f1d19e52a
    Modified Files:
    exec/dorkit/ansi_input.js jsexec_input.js local_console.js sbbs_input.js socket_input.js exec/load/dorkit.js src/conio/ciolib.h
    Log Message:
    Deal with dorkit hangup issues... commit #1

    1) Ciolib CIO_KEY_QUIT and CIO_KEY_MOUSE conflicted with ALT_7 and ALT_6
    respectively, change these to use \xE0 prefixes.
    2) Add a new dorkit key "CONNECTION_CLOSED" which is returned by getkey()
    after the connection is closed.
    3) Have the various connection back-ends send a CONNECTION_CLOSED key to
    the keyboard buffer when the connection is closed.
    4) Have the local console send a CONNECTION_CLOSED key when the window
    is closed.
    5) Disable auto_terminate in dorkit.
    6) Introduce dk.connection.disconnect_timeout variable (defaults to 30
    seconds). After a CONNECTION_CLOSED key is received, dorkit will
    immediately set js.terminated, then after disconnect_timeout seconds,
    will enable js.auto_terminate.
    7) After a CONNECTION_CLOSED key, waitkey() always returns true, getkey()
    always returns a CONNECTION_CLOSED key, and getbyte() always returns
    undefined.
    8) To prevent a poorly written door from hogging 100% CPU for the whole
    30 seconds, put an mswait(1) in the connection check when the
    inactivity timer is running.

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