File tree 4 files changed +13
-4
lines changed
4 files changed +13
-4
lines changed Original file line number Diff line number Diff line change @@ -4405,7 +4405,6 @@ open_cmdwin(void)
4405
4405
int save_restart_edit = restart_edit ;
4406
4406
int save_State = State ;
4407
4407
int save_exmode = exmode_active ;
4408
- int save_p_spsc ;
4409
4408
#ifdef FEAT_RIGHTLEFT
4410
4409
int save_cmdmsg_rl = cmdmsg_rl ;
4411
4410
#endif
@@ -4645,10 +4644,8 @@ open_cmdwin(void)
4645
4644
wp = curwin ;
4646
4645
set_bufref (& bufref , curbuf );
4647
4646
4648
- save_p_spsc = p_spsc ;
4649
- p_spsc = TRUE;
4647
+ skip_win_fix_cursor = TRUE;
4650
4648
win_goto (old_curwin );
4651
- p_spsc = save_p_spsc ;
4652
4649
4653
4650
// win_goto() may trigger an autocommand that already closes the
4654
4651
// cmdline window.
@@ -4662,6 +4659,7 @@ open_cmdwin(void)
4662
4659
4663
4660
// Restore window sizes.
4664
4661
win_size_restore (& winsizes );
4662
+ skip_win_fix_cursor = FALSE;
4665
4663
}
4666
4664
4667
4665
ga_clear (& winsizes );
Original file line number Diff line number Diff line change @@ -1737,3 +1737,8 @@ EXTERN int channel_need_redraw INIT(= FALSE);
1737
1737
// While executing a regexp and set to OPTION_MAGIC_ON or OPTION_MAGIC_OFF this
1738
1738
// overrules p_magic. Otherwise set to OPTION_MAGIC_NOT_SET.
1739
1739
EXTERN optmagic_T magic_overruled INIT (= OPTION_MAGIC_NOT_SET );
1740
+
1741
+ #ifdef FEAT_CMDWIN
1742
+ // Skip win_fix_cursor() call for 'nosplitscroll' when cmdwin is closed.
1743
+ EXTERN int skip_win_fix_cursor INIT (= FALSE);
1744
+ #endif
Original file line number Diff line number Diff line change @@ -703,6 +703,8 @@ static char *(features[]) =
703
703
704
704
static int included_patches [] =
705
705
{ /* Add new patch number below this line */
706
+ /**/
707
+ 469 ,
706
708
/**/
707
709
468 ,
708
710
/**/
Original file line number Diff line number Diff line change @@ -6410,6 +6410,10 @@ win_fix_cursor(int normal)
6410
6410
6411
6411
if (wp -> w_buffer -> b_ml .ml_line_count < wp -> w_height )
6412
6412
return ;
6413
+ #ifdef FEAT_CMDWIN
6414
+ if (skip_win_fix_cursor )
6415
+ return ;
6416
+ #endif
6413
6417
6414
6418
so = MIN (wp -> w_height / 2 , so );
6415
6419
// Check if cursor position is above topline or below botline.
You can’t perform that action at this time.
0 commit comments