1. 05 Jan, 2021 4 commits
    • Kyle McKay's avatar
      mincurses.c: use cursor_normal to disable cursor_invisible · 5cc6bf5e
      Kyle McKay authored
      There are actually three capabilities:
      
         cursor_invisible
         cursor_normal
         cursor_visible
      
      The "cursor_normal" string disables both "cursor_invisible" and
      "cursor_visible".  The actual meaning of "cursor_visible" is to
      make the cursor "very visible."
      
      Prefer using "cursor_normal" to disable "cursor_invisible".
      
      Not all terminals have a "cursor_visible" string and it's not the
      opposite of "cursor_invisible" anyway.
      
      In the off chance that a terminal description has been created
      incorrectly, if "cursor_normal" is not available but "cursor_visible"
      is, it will be used instead (just like the previous code did).
      Signed-off-by: Kyle McKay's avatarKyle J. McKay <mackyle@gmail.com>
      5cc6bf5e
    • Kyle McKay's avatar
      mincurses.c: send ena_acs string to correct location · c1b092e6
      Kyle McKay authored
      The call to _nc_init_acs in min_panel_init() will, indeed, attempt
      to output the ena_acs string (among other activities) if it's set.
      
      However, it may output it using putc to the stdio FILE handle.
      
      That may, or may not, be the actual output device that we are using.
      
      In any case, to be sure we end up with ena_acs having been output
      at least once to the intended output device, flush all output streams
      after calling _nc_init_acs and then output ena_acs once more (if
      it's set), just in case.
      
      To be clear, the call to _nc_init_acs MUST still be made regardless
      of whether it outputs ena_acs because _nc_init_acs performs various
      other tasks required to make the alternate character set work --
      outputting ena_acs (when set) is just one of the things it does.
      Signed-off-by: Kyle McKay's avatarKyle J. McKay <mackyle@gmail.com>
      c1b092e6
    • Kyle McKay's avatar
      mincurses.c: support using parm_right_cursor if no column_address · a2b23998
      Kyle McKay authored
      Not all terminal types support the "column_address" attribute.
      
      Many of the terminals that do not support "column_address" do support
      "parm_right_cursor" and "carriage_return".
      
      Use "carriage_return" with "parm_right_cursor" when "column_address"
      is not supported.  This provides almost identical support compared
      to "column_address" and is preferred when "column_address" is not
      supported before falling back to the last chance "cursor_address"
      support option.
      Signed-off-by: Kyle McKay's avatarKyle J. McKay <mackyle@gmail.com>
      a2b23998
    • Kyle McKay's avatar
      mincurses.c: support using cursor_address if no column_address · e1ce326f
      Kyle McKay authored
      Not all terminal types support the "column_address" attribute.
      
      Most of the terminals that do not support "column_address" do support
      "cursor_address".
      
      Use "cursor_address" instead of "column_address" when "column_address"
      is not supported.
      
      In order to do this, it's necessary to keep track of where the last
      row of the panel is located.  To make this work without needing to
      read the current cursor location, when using "cursor_address" instead
      of "column_address", the panel will always be forced to the bottom
      of the screen.
      
      If the cursor was already within "panel_lines" lines of the bottom
      of the screen, the effect will be identical to using the "column_address"
      version.  Otherwise there will be some blank lines between the last
      used and the start of the panel.  A few blank lines seems like a small
      price to pay for increased terminal compatibility.
      Signed-off-by: Kyle McKay's avatarKyle J. McKay <mackyle@gmail.com>
      e1ce326f
  2. 23 Nov, 2020 1 commit
  3. 18 Nov, 2020 3 commits
    • Ralph Giles's avatar
      autotools: Include the manpage in the tarball. · b65ddabe
      Ralph Giles authored
      Unlike most source files, manpages are not included in the
      automake dist target by default, on the assumption they're
      generated from some other source.
      
      Since our manpage is actually written in man, mark it for
      inclusion explicitly. Fixes `make distcheck`.
      b65ddabe
    • Ralph Giles's avatar
      Fix build against ncurses 6. · ce3fabff
      Ralph Giles authored
      In ncurses 6.0 the TERMINAL type in term.h was made opaque
      by default, to discourage the sort of manipulation we do
      of the internals, which are not considered portable. I
      assume that means they're not a supported API surface.
      
      Opt into tracking the internals by defining NCURSES_INTERNALS
      before we include term.h which exposes the previously public
      `struct term` definition.
      
      This seems to work fine, but it required to build on any
      recent posix-ish system.
      ce3fabff
    • Ralph Giles's avatar
      gitlab-ci: Add a basic build description. · 4699abe7
      Ralph Giles authored
      Specify a basic autotools build so we get some feedback on changes
      to gitlab-hosted repositories.
      4699abe7
  4. 11 Feb, 2014 2 commits
  5. 18 Jan, 2014 1 commit
  6. 25 Nov, 2013 1 commit
  7. 22 Nov, 2013 1 commit
  8. 15 Nov, 2013 1 commit
  9. 12 Nov, 2013 2 commits
  10. 13 Mar, 2013 2 commits
  11. 12 Mar, 2013 9 commits
  12. 28 Oct, 2012 2 commits
  13. 01 Feb, 2011 2 commits
  14. 17 Dec, 2010 1 commit
  15. 14 Dec, 2010 1 commit
  16. 11 Dec, 2010 1 commit
  17. 09 Dec, 2010 1 commit
  18. 07 Dec, 2010 2 commits
  19. 02 Dec, 2010 3 commits