]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.1.1430: tabpanel may flicker in the GUI v9.1.1430
authorHirohito Higashi <h.east.727@gmail.com>
Wed, 4 Jun 2025 18:05:59 +0000 (20:05 +0200)
committerChristian Brabandt <cb@256bit.org>
Wed, 4 Jun 2025 18:05:59 +0000 (20:05 +0200)
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.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
src/term.c
src/version.c
src/window.c

index b7a82da0a3fc2e9d20d4c5288b95b4f0bd6c359f..649e483d61e607f3d604c0ecc15eb13122192d64 100644 (file)
@@ -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
 }
 
index 5e34826e0b42864be3227821815f807bea35c328..5630b8ad7f189b883e250bae22fd9c53e01b543b 100644 (file)
@@ -709,6 +709,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1430,
 /**/
     1429,
 /**/
index f3b23e85a378d5152d077a1f4cbf1415edfdb26b..46e1b63a8ae6553ae03cac06553d580683cbd8fe 100644 (file)
@@ -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;