Commit: patch 9.1.1430: tabpanel may flicker in the GUI

3 views
Skip to first unread message

Christian Brabandt

unread,
Jun 4, 2025, 2:15:16 PM6/4/25
to vim...@googlegroups.com
patch 9.1.1430: tabpanel may flicker in the GUI

Commit: https://github.com/vim/vim/commit/862cb37544c71800fdedc3e84454185f21685c6a
Author: Hirohito Higashi <h.eas...@gmail.com>
Date: Wed Jun 4 20:05:59 2025 +0200

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 <h.eas...@gmail.com>
Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/src/term.c b/src/term.c
index b7a82da0a..649e483d6 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 5e34826e0..5630b8ad7 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 f3b23e85a..46e1b63a8 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;
Reply all
Reply to author
Forward
0 new messages