From: David Lawrence Ramsey Date: Sat, 18 Jun 2005 15:15:48 +0000 (+0000) Subject: work around slang brain damage in total_update() X-Git-Tag: v1.3.8~79 X-Git-Url: https://git.wh0rd.org/?a=commitdiff_plain;h=7431fe5e938424fb47c58fef2750303892d61c62;p=nano.git work around slang brain damage in total_update() git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2724 35c25a1d-7b9e-4130-9fde-d3aeb78583b8 --- diff --git a/ChangeLog b/ChangeLog index 0008743f..99625c9c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -315,6 +315,9 @@ CVS code - total_update() - Simplify to call clearok(TRUE) and wrefresh() on edit, which updates the entire screen in fewer function calls. (DLR) + - When using slang, use SLsmg_touch_screen() and SLsmg_refresh() + to update the screen, as the curses method will leave some + windows cleared without properly updating them. (DLR) do_replace_highlight() - Use waddch() instead of waddstr() to display a space when we have a zero-length regex. (DLR) diff --git a/src/winio.c b/src/winio.c index bb356355..abbb7d72 100644 --- a/src/winio.c +++ b/src/winio.c @@ -3707,8 +3707,16 @@ int do_yesno(bool all, const char *msg) void total_update(void) { +#ifdef USE_SLANG + /* Slang curses emulation brain damage, part 3: If we just do what + * curses does here, it'll leave some windows cleared without + * updating them properly. */ + SLsmg_touch_screen(); + SLsmg_refresh(); +#else clearok(edit, TRUE); wrefresh(edit); +#endif } void total_refresh(void)