0
0
mirror of https://github.com/vim/vim.git synced 2025-07-26 11:04:33 -04:00

patch 8.1.1403: cannot build without the timer feature

Problem:    Cannot build without the timer feature.
Solution:   Add #ifdef.
This commit is contained in:
Bram Moolenaar 2019-05-26 20:44:10 +02:00
parent 51fe3b14f6
commit 35d5af6c0b
5 changed files with 14 additions and 0 deletions

View File

@ -30,6 +30,7 @@ apply_options(win_T *wp, buf_T *buf UNUSED, dict_T *dict)
wp->w_wincol = dict_get_number(dict, (char_u *)"col"); wp->w_wincol = dict_get_number(dict, (char_u *)"col");
wp->w_zindex = dict_get_number(dict, (char_u *)"zindex"); wp->w_zindex = dict_get_number(dict, (char_u *)"zindex");
#if defined(FEAT_TIMERS)
// Add timer to close the popup after some time. // Add timer to close the popup after some time.
nr = dict_get_number(dict, (char_u *)"time"); nr = dict_get_number(dict, (char_u *)"time");
if (nr > 0) if (nr > 0)
@ -49,6 +50,7 @@ apply_options(win_T *wp, buf_T *buf UNUSED, dict_T *dict)
wp->w_popup_timer->tr_partial = tv.vval.v_partial; wp->w_popup_timer->tr_partial = tv.vval.v_partial;
} }
} }
#endif
} }

View File

@ -2874,7 +2874,9 @@ struct window_S
int w_zindex; int w_zindex;
int w_maxheight; // "maxheight" for popup window int w_maxheight; // "maxheight" for popup window
int w_maxwidth; // "maxwidth" for popup window int w_maxwidth; // "maxwidth" for popup window
# if defined(FEAT_TIMERS)
timer_T *w_popup_timer; // timer for closing popup window timer_T *w_popup_timer; // timer for closing popup window
# endif
#endif #endif

View File

@ -39,6 +39,9 @@ func Test_simple_popup()
endfunc endfunc
func Test_popup_time() func Test_popup_time()
if !has('timers')
return
endif
topleft vnew topleft vnew
call setline(1, 'hello') call setline(1, 'hello')
@ -52,6 +55,7 @@ func Test_popup_time()
call assert_equal('world', line) call assert_equal('world', line)
sleep 700m sleep 700m
redraw
let line = join(map(range(1, 5), 'screenstring(1, v:val)'), '') let line = join(map(range(1, 5), 'screenstring(1, v:val)'), '')
call assert_equal('hello', line) call assert_equal('hello', line)

View File

@ -767,6 +767,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
1403,
/**/ /**/
1402, 1402,
/**/ /**/

View File

@ -4859,6 +4859,7 @@ win_unlisted(win_T *wp)
return wp == aucmd_win || bt_popup(wp->w_buffer); return wp == aucmd_win || bt_popup(wp->w_buffer);
} }
#if defined(FEAT_TEXT_PROP) || defined(PROTO)
/* /*
* Free a popup window. This does not take the window out of the window list * Free a popup window. This does not take the window out of the window list
* and assumes there is only one toplevel frame, no split. * and assumes there is only one toplevel frame, no split.
@ -4867,11 +4868,14 @@ win_unlisted(win_T *wp)
win_free_popup(win_T *win) win_free_popup(win_T *win)
{ {
win_close_buffer(win, TRUE, FALSE); win_close_buffer(win, TRUE, FALSE);
# if defined(FEAT_TIMERS)
if (win->w_popup_timer != NULL) if (win->w_popup_timer != NULL)
stop_timer(win->w_popup_timer); stop_timer(win->w_popup_timer);
# endif
vim_free(win->w_frame); vim_free(win->w_frame);
win_free(win, NULL); win_free(win, NULL);
} }
#endif
/* /*
* Append window "wp" in the window list after window "after". * Append window "wp" in the window list after window "after".