From 862cb37544c71800fdedc3e84454185f21685c6a Mon Sep 17 00:00:00 2001 From: Hirohito Higashi Date: Wed, 4 Jun 2025 20:05:59 +0200 Subject: [PATCH] patch 9.1.1430: tabpanel may flicker in the GUI Problem: tabpanel may flicker in the GUI Solution: call scroll_start() and scroll_region_reset() (Hirohito Higashi) fixes: #17440 closes: #17442 Signed-off-by: Hirohito Higashi Signed-off-by: Christian Brabandt --- src/term.c | 4 +++- src/version.c | 2 ++ src/window.c | 9 ++++++++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/term.c b/src/term.c index b7a82da0a3..649e483d61 100644 --- a/src/term.c +++ b/src/term.c @@ -4478,7 +4478,9 @@ scroll_region_reset(void) { OUT_STR(tgoto((char *)T_CS, (int)Rows - 1, 0)); if (*T_CSV != NUL) - OUT_STR(tgoto((char *)T_CSV, Columns - 1, 0)); + OUT_STR(tgoto((char *)T_CSV, + firstwin->w_wincol + topframe->fr_width - 1, + firstwin->w_wincol)); screen_start(); // don't know where cursor is now } diff --git a/src/version.c b/src/version.c index 5e34826e0b..5630b8ad7f 100644 --- a/src/version.c +++ b/src/version.c @@ -709,6 +709,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1430, /**/ 1429, /**/ diff --git a/src/window.c b/src/window.c index f3b23e85a3..46e1b63a8a 100644 --- a/src/window.c +++ b/src/window.c @@ -6226,7 +6226,14 @@ shell_new_columns(void) if (!skip_win_fix_scroll) win_fix_scroll(TRUE); - +#ifdef FEAT_GUI + if (gui.in_use) + { + if (scroll_region) + scroll_region_reset(); + scroll_start(); // may scroll the screen to the right position + } +#endif redraw_tabline = TRUE; #if defined(FEAT_TABPANEL) redraw_tabpanel = TRUE;