diff --git a/ChangeLog b/ChangeLog index fc5976c3dbb52173c70f512d55a8a00dbd7ff887..6eb75ad787327cd3a70328a141b0b73eea102b41 100644 --- a/ChangeLog +++ b/ChangeLog @@ -371,7 +371,10 @@ CVS code - do_help() - Overhaul for efficiency, and allow scrolling through the help via the arrow keys as well as the paging keys. (David - Benbennick) + Benbennick) DLR: Revert the use of the return value of + curs_set() to restore the previous state of the cursor, as + some curses implementations (including slang) get it wrong, + and explicitly turn the cursor off where needed instead. do_credits() - Use napms() instead of nanosleep(), as it does the same thing (aside from taking an argument in milliseconds instead of diff --git a/src/files.c b/src/files.c index f1588a3a602d92db6ee3832b8dc14e0ca4388d1c..defdd209b0e893a6661c1a6e5816c52dfcc98389 100644 --- a/src/files.c +++ b/src/files.c @@ -2683,6 +2683,7 @@ char *do_browser(const char *inpath) case NANO_HELP_FKEY: case '?': /* Pico compatibility */ do_help(); + curs_set(0); break; case NANO_ENTER_KEY: case 'S': /* Pico compatibility */ diff --git a/src/winio.c b/src/winio.c index 2c09e5ba14cf1a5ee7425d510ed525c8d1b7de4a..cd129db9c37bd16e8452d1ca3cbf72b5a2629e84 100644 --- a/src/winio.c +++ b/src/winio.c @@ -3022,13 +3022,13 @@ int do_help(void) int kbinput = ERR, meta_key; int old_no_help = ISSET(NO_HELP); - int old_cursor = curs_set(0); #ifndef DISABLE_MOUSE const shortcut *oldshortcut = currshortcut; /* We will set currshortcut to allow clicking on the help screen shortcut list. */ #endif + curs_set(0); blank_edit(); wattroff(bottomwin, A_REVERSE); blank_statusbar(); @@ -3127,7 +3127,7 @@ int do_help(void) } else bottombars(currshortcut); - curs_set(old_cursor); + curs_set(1); edit_refresh(); /* The help_init() at the beginning allocated help_text, which has