fix total_redraw() so that it always keeps the cursor in the same window
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2752 35c25a1d-7b9e-4130-9fde-d3aeb78583b8master
parent
3f301dd437
commit
ba61cc382f
10
ChangeLog
10
ChangeLog
|
@ -328,11 +328,13 @@ CVS code -
|
||||||
prompt, so that we don't end it in the middle of a multibyte
|
prompt, so that we don't end it in the middle of a multibyte
|
||||||
character if it's more than (COLS - 1) bytes long. (DLR)
|
character if it's more than (COLS - 1) bytes long. (DLR)
|
||||||
total_redraw()
|
total_redraw()
|
||||||
- Simplify to call clearok(TRUE) and wrefresh() on edit, which
|
- Simplify to call clearok(TRUE) and wrefresh() on curscr, which
|
||||||
updates the entire screen in fewer function calls. (DLR)
|
updates the entire screen in fewer function calls without
|
||||||
|
moving the cursor from the window it's currently in. (DLR)
|
||||||
- When using slang, use SLsmg_touch_screen() and SLsmg_refresh()
|
- When using slang, use SLsmg_touch_screen() and SLsmg_refresh()
|
||||||
to update the screen, as the curses method will leave some
|
to update the screen, as slang doesn't define curscr, and even
|
||||||
windows cleared without properly updating them. (DLR)
|
if it did, the curses method will leave some windows cleared
|
||||||
|
without properly updating them. (DLR)
|
||||||
do_replace_highlight()
|
do_replace_highlight()
|
||||||
- Use waddch() instead of waddstr() to display a space when we
|
- Use waddch() instead of waddstr() to display a space when we
|
||||||
have a zero-length regex. (DLR)
|
have a zero-length regex. (DLR)
|
||||||
|
|
11
src/winio.c
11
src/winio.c
|
@ -3713,14 +3713,15 @@ int do_yesno(bool all, const char *msg)
|
||||||
void total_redraw(void)
|
void total_redraw(void)
|
||||||
{
|
{
|
||||||
#ifdef USE_SLANG
|
#ifdef USE_SLANG
|
||||||
/* Slang curses emulation brain damage, part 3: If we just do what
|
/* Slang curses emulation brain damage, part 3: Slang doesn't define
|
||||||
* curses does here, it'll leave some windows cleared without
|
* curscr, and even if it did, if we just do what curses does here,
|
||||||
* updating them properly. */
|
* it'll leave some windows cleared without updating them
|
||||||
|
* properly. */
|
||||||
SLsmg_touch_screen();
|
SLsmg_touch_screen();
|
||||||
SLsmg_refresh();
|
SLsmg_refresh();
|
||||||
#else
|
#else
|
||||||
clearok(edit, TRUE);
|
clearok(curscr, TRUE);
|
||||||
wrefresh(edit);
|
wrefresh(curscr);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue