• src/uifc/uifc32.c

    From Deuc¿@VERT to Git commit to main/sbbs/master on Thu Feb 10 16:14:59 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/4f28970f7ab92d55e38161f5
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Finish consitfying showbuf()

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Thu Feb 10 16:23:52 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/af7b3efba80be0ded1250334
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Actually constify showbuf()

    Geeze, this is ugly.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Thu Mar 3 11:29:28 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/5051ad349706be4e0254a0f2
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Left for showbuf() is zero-based, calculate width appropriately.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Wed Jul 13 23:34:44 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/7d08ae36ec447a4a1f9054a0
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Don't print the up arrow if the list is empty

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Fri Dec 23 18:22:34 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/6b9e7707aba205242f84cd1a
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Store curp/barp in showbuf allowing dynamic windows to work

    Before this change, dynamic parent windows wouldn't be redrawn as
    active after showbuf() returns.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Tue Feb 14 23:07:07 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/61448e1506360d651b98ad7c
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Fix list() width when WIN_NOBRDR is used

    The title isn't displayed in this mode, so the title length is 0.

    Why is title being strdup()'d here? Something to look into.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (in GitKraken)@VERT to Git commit to main/sbbs/master on Thu Feb 16 18:56:31 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/3d0618d041c62f9720dc9d51
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Fix centering of the showbuf (e.g. help screen) title

    I'm not sure what was going on with this addition of 6 when mouse is enabled (and didn't check for WIN_DYN flag set!), but is wrong. And we need to add 4 to the title_len when figuring out the centered-offset.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on ChromeOS)@VERT to Git commit to main/sbbs/master on Fri Feb 17 23:16:37 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/6875b617f34cde674c39c9f7
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    input() method was off-by-one on the string input x-coordinate w/ WIN_NOBRDR

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Wed Apr 12 20:18:09 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/a59d7d36daf250b47795d3cb
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Make the '?' key pull up the online help too

    Sometimes F1 doesn't work, Ctrl-Z isn't documented, but there is a '?' displayed
    when help is available, so it's reasonable to assume someone might try/use it.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Fri Apr 28 21:10:46 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/0e335a02a996b1b6120490e5
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Avoid delay waiting for key in WIN_DYN mode

    When running Windows 11 in a VirtualBox VM, Sleep(1) appears to take
    much more than 1ms to return. This causes large delays drawing menus
    using WIN_DYN (as SyncTERM does).

    If WIN_DYN is set, just use kbhit() with no delay. Leave the delay
    there for !WIN_DYN though.

    This should generally speed up SyncTERM menu navigation as there
    was a 50ms delay for each menu on the screen.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Sat Apr 29 10:52:36 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/91114aaf678cf583d3d7fdbf
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Fix warning.

    While we're here, eliminate some explicit int64_t usage.

    (not sure why uifc_winmode_t is signed since it's a bitfield, but
    that's above my pay grade).

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Thu May 25 11:30:11 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/dc6b7f83882e372ab9199fb7
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    In screen widths < 80 columns, auto-suppress the date/time display

    The the date/time display would overwrite parts of the application
    title in narrower screen modes, so let's not do that.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Sun Nov 3 11:14:25 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/32fb9b77db11ec82231e4cee
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    More malloc() return checks

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Wed Nov 13 22:38:06 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/056304ed9e73c847a08102bb
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Fix bug reported by DigitalMan

    It looks like this has been a long-standing UIFC bug (pre-3.0)

    If a uifc list that can scroll is showing the bottom-most line,
    and an option that is not the last is deleted, and both *cur and
    *bar are left untouched, *bar would be adjusted to be too high,
    resulting in various highlight bar corruption issues.

    This commit just rewrites that logic to be comprehensible, and
    ensures that if bar is set such that the list would end before the
    bottom of the window, it gets moved up. This makes delete do the
    right thing (didn't test with insert, that may do weird things).

    Also, since I figured out a good definition of what bar actually
    represtens, add a comment to that effect.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Wed Nov 13 23:26:48 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/2e47ac987d5f1f1add45e5f7
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Just overhaul this who chunk of code.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Sat Jan 4 21:51:35 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/d63dd43c9b9a1cc24b268829
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Prevent dereferencing NULL bar or cur with WIN_DYN

    This would be an API violation, but we shouldn't crash about it.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Thu Jan 9 18:53:52 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/935afe75ac88dd8094e58e71
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Fix buffer overflow when upop() is called with a string > 73 chars

    result in segfault (e.g. adding long filenames using fileman.js)

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Thu Jan 9 20:22:12 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/d55686a5ef0d1f9706d17b18
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    A more complete fix for the upop() issue with long strings

    Completely remove the 80 column screen width assumption/limit.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Tue Jan 14 17:42:18 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/ad84aa032681df2b5a7eb06d
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Resolve MSVC warning

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¿@VERT to Git commit to main/sbbs/master on Mon Feb 10 14:43:09 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/f55039de28c9dfc30450fec8
    Modified Files:
    src/uifc/uifc32.c
    Log Message:
    Only base drag-select highlight on the legacy attribute.

    The fg/bg values all have multiple representations, and some bits
    have extra meanings, so inequality there doesn't mean they're not
    the same colour.

    This fixes an issue where the *second* drag select on a screen
    would not highlight blue backgrounds correctly. The background
    colour gets the "pixels set" bit flown because of how
    restorescreen() works, which caused this to "know" it's not blue
    and use a blue background.

    A (good) argument could be made that savescreen()/restorescreen()
    shouldn't result in any changes, but since uifc32 doesn't directly
    use colours that aren't represented by legacy attributes, there's
    no need for it to get tricky here.

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