Skip to content
Snippets Groups Projects
  1. Sep 29, 2024
  2. Sep 28, 2024
    • Deucе's avatar
      Fix reversed mouse wheel on Win32GDI... · a33d1e11
      Deucе authored
      From MSDN:
      A positive value indicates that the wheel was rotated forward
      away from the user; a negative value indicates that the wheel
      was rotated backward, toward the user.
      
      Fixes bug 143.
      
      However, this re-opens the confusion around request 75...
      nigel and DigitalMan should take a look at this more closely
      in rc2 (or an updated nightly).
      a33d1e11
    • Deucе's avatar
      Add "Persistant State" section to manual. · 02e38b9e
      Deucе authored
      This describes in more detail how the window size is saved and
      restored when starting/exiting SyncTERM.
      02e38b9e
    • Rob Swindell's avatar
      MIME-encode words that contain non-ASCII values in text header fields · 5564eb67
      Rob Swindell authored
      (e.g. to, from, subject) ... when transmitting to other hosts (e.g. POP3
      clients or other SMTP hosts).
      
      For messages that contain CP437 or UTF-8 chars in these fields and were *not*
      imported into the BBS via SMTP or POP3, these header fields would be
      transmitted to other hosts with the raw CP437 or UTF-8 chars, thus violating
      POP3 and SMTP protocols and likely resulting in garbage displayed in message
      readers.
      
      The fix is to encode (using MIME "encoded words", per RFC 2407) where
      necessary.
      
      Since moderm mail clients (e.g. Thunderbird) don't see to support CP437
      charset in MIME encoded header fields, always translate to UTF-8 first.
      
      We probably should be translating message body text to UTF-8 as well, for
      maximum compatibilty with modern mail readers, but this commit doesn't address
      body text issues with CP437-encoded content. That'll come later.
      5564eb67
    • Deucе's avatar
      Fix builds that don't support any graphics. · 9fefe606
      Deucе authored
      9fefe606
    • Deucе's avatar
      As it turns out, ciolib isn't special. · 0547b6da
      Deucе authored
      We can't update a fat static library using ar on macOS. :(
      0547b6da
    • Deucе's avatar
      Fix a couple use-after-free bugs in RIP · 75008b30
      Deucе authored
      This likely is the cause of bug 140.
      
      The first one, the LCF flag is copied out of the cterm struct
      after cterm_end() is called (which frees the struct).  Copy moved
      to before cterm_end().
      
      The second one is trickier... it's executing the commands in a mouse
      button, and one of the commands is to delete all the mouse button
      commands.  This ends up free()ing the string that's currently being
      parsed while it's being parsed.  We now use a strdup() of the string
      which we free at the end of the function.
      75008b30
    • Deucе's avatar
      Fix status bar issue when RIP changes the number of lines. · 20ef1db5
      Deucе authored
      RIP is currently the only thing that can change the number of lines
      in the terminal while connected.  This can actually result in there
      being more lines on the screen than the last set video mode supports.
      
      There's a "feature" in SyncTERM text modes (curses, ANSI, and Win32
      Console) where if the screen mode is "current", it uses the number
      of lines in the terminal, but if it's anything else, it forces the
      number of lines to the lines in the mode.
      
      This works great until RIP increases the number of lines beyond the
      number in the mode... when this happened, RIP would draw the status
      bar at the incorrect location on the screen.
      
      This change no longer sets the max rows in the terminal if the
      backend can set individual pixels (required for RIP).  Further, to
      avoid a delay before redrawing the status bar after RIP changes the
      number of rows, the reinit_screen() function now sets a global to
      indicate it was called, and the status bar will always redraw when
      it's enabled and the flag is true.
      
      This *may* be related to bug 140, but may not be.
      20ef1db5
    • Deucе's avatar
      Fix issue 138 · a8e5929a
      Deucе authored
      Weird stuff happened when dragging a GDI window between monitors
      with different zoom (DPI) settings.  The following changes were
      all done to clean up this stuff:
      
      Window position is signed
      Do some type casting for warnings
      Fix return times of GetDpiFor*() pointers
      Fix fallback to GetDpiForSystem() (could never be used)
      Handle WM_DPICHANGED correctly
      Move some copy/pasted code into a function
      Fix return value for WM_GETDPISCALEDSIZE
      Fix return value for WM_USER_SETCURSOR
      a8e5929a
  3. Sep 26, 2024
    • Deucе's avatar
      Enable new reverse_cursor UIFC option for SyncTERM · 9b13ae0f
      Deucе authored
      Thanks DigitalMan!
      9b13ae0f
    • Rob Swindell's avatar
      Add uifcapi_t.reverse_cursor (BOOL), default is FALSE · 1cc56f5e
      Rob Swindell authored
      Setting this to TRUE reverses the type of cursor used to indicate insert
      versus overwrite mode (solid/block cursor veruss underline/normal cursor).
      Deuce probably wants to set this to TRUE for SyncTERM.
      1cc56f5e
    • Deucе's avatar
      Mention insert mode change · 5fdf6bc5
      Deucе authored
      5fdf6bc5
    • Deucе's avatar
      cterm.txt is no longer the normative reference for cterm. · b8bb643c
      Deucе authored
      Add a link to the new generated HTML document, and mention the .adoc
      file so people can find it in the future.
      b8bb643c
    • Deucе's avatar
      Start UIFC in insert mode. · 3247302d
      Deucе authored
      Per comment on reddit by dialsoft, the lack of an insert key on
      laptops can make manipulating the phonebook more difficult.  Since
      all the other UIFC functions have an insert alternate, they don't
      need any changes now that there's a manual, but for editing a
      string, the insert key is the only way to toggle overstrike.
      
      Since the insert mode toggle persists, simply starting in overstrike
      mode should be fine.
      
      Maybe some weird control key of function key can be used (though
      I guess laptops don't have function keys either anymore).
      3247302d
    • Deucе's avatar
      Manual updates. · 0c6deb21
      Deucе authored
      0c6deb21
  4. Sep 25, 2024
  5. Sep 24, 2024
  6. Sep 23, 2024
Loading