Mercurial > vim
diff src/structs.h @ 16778:eda4d65f232c v8.1.1391
patch 8.1.1391: no popup window support
commit https://github.com/vim/vim/commit/4d784b21d14fc66e98a2b07f70343cdd4acd62aa
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat May 25 19:51:39 2019 +0200
patch 8.1.1391: no popup window support
Problem: No popup window support.
Solution: Add initial code for popup windows. Add the 'wincolor' option.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 25 May 2019 20:00:08 +0200 |
parents | 978bcd70883d |
children | 12e3a3afdb6a |
line wrap: on
line diff
--- a/src/structs.h +++ b/src/structs.h @@ -163,17 +163,19 @@ typedef struct { #ifdef FEAT_ARABIC int wo_arab; -# define w_p_arab w_onebuf_opt.wo_arab /* 'arabic' */ +# define w_p_arab w_onebuf_opt.wo_arab // 'arabic' #endif #ifdef FEAT_LINEBREAK int wo_bri; -# define w_p_bri w_onebuf_opt.wo_bri /* 'breakindent' */ +# define w_p_bri w_onebuf_opt.wo_bri // 'breakindent' char_u *wo_briopt; -# define w_p_briopt w_onebuf_opt.wo_briopt /* 'breakindentopt' */ +# define w_p_briopt w_onebuf_opt.wo_briopt // 'breakindentopt' #endif + char_u *wo_wcr; +# define w_p_wcr w_onebuf_opt.wo_wcr // 'wincolor' #ifdef FEAT_DIFF int wo_diff; -# define w_p_diff w_onebuf_opt.wo_diff /* 'diff' */ +# define w_p_diff w_onebuf_opt.wo_diff // 'diff' #endif #ifdef FEAT_FOLDING long wo_fdc; @@ -2592,19 +2594,22 @@ struct diffblock_S typedef struct tabpage_S tabpage_T; struct tabpage_S { - tabpage_T *tp_next; /* next tabpage or NULL */ - frame_T *tp_topframe; /* topframe for the windows */ - win_T *tp_curwin; /* current window in this Tab page */ - win_T *tp_prevwin; /* previous window in this Tab page */ - win_T *tp_firstwin; /* first window in this Tab page */ - win_T *tp_lastwin; /* last window in this Tab page */ - long tp_old_Rows; /* Rows when Tab page was left */ - long tp_old_Columns; /* Columns when Tab page was left */ - long tp_ch_used; /* value of 'cmdheight' when frame size - was set */ + tabpage_T *tp_next; // next tabpage or NULL + frame_T *tp_topframe; // topframe for the windows + win_T *tp_curwin; // current window in this Tab page + win_T *tp_prevwin; // previous window in this Tab page + win_T *tp_firstwin; // first window in this Tab page + win_T *tp_lastwin; // last window in this Tab page +#ifdef FEAT_TEXT_PROP + win_T *tp_first_popupwin; // first popup window in this Tab page +#endif + long tp_old_Rows; // Rows when Tab page was left + long tp_old_Columns; // Columns when Tab page was left + long tp_ch_used; // value of 'cmdheight' when frame size + // was set #ifdef FEAT_GUI int tp_prev_which_scrollbars[3]; - /* previous value of which_scrollbars */ + // previous value of which_scrollbars #endif char_u *tp_localdir; // absolute path of local directory or @@ -2615,18 +2620,18 @@ struct tabpage_S int tp_diff_invalid; // list of diffs is outdated int tp_diff_update; // update diffs before redrawing #endif - frame_T *(tp_snapshot[SNAP_COUNT]); /* window layout snapshots */ + frame_T *(tp_snapshot[SNAP_COUNT]); // window layout snapshots #ifdef FEAT_EVAL - dictitem_T tp_winvar; /* variable for "t:" Dictionary */ - dict_T *tp_vars; /* internal variables, local to tab page */ + dictitem_T tp_winvar; // variable for "t:" Dictionary + dict_T *tp_vars; // internal variables, local to tab page #endif #ifdef FEAT_PYTHON - void *tp_python_ref; /* The Python value for this tab page */ + void *tp_python_ref; // The Python value for this tab page #endif #ifdef FEAT_PYTHON3 - void *tp_python3_ref; /* The Python value for this tab page */ + void *tp_python3_ref; // The Python value for this tab page #endif }; @@ -2775,15 +2780,15 @@ struct window_S { int w_id; /* unique window ID */ - buf_T *w_buffer; /* buffer we are a window into (used - often, keep it the first item!) */ + buf_T *w_buffer; /* buffer we are a window into */ + + win_T *w_prev; /* link to previous window */ + win_T *w_next; /* link to next window */ #if defined(FEAT_SYN_HL) || defined(FEAT_SPELL) synblock_T *w_s; /* for :ownsyntax */ #endif - win_T *w_prev; /* link to previous window */ - win_T *w_next; /* link to next window */ int w_closing; /* window is being closed, don't let autocommands close it too. */ @@ -2847,6 +2852,11 @@ struct window_S int w_width; /* Width of window, excluding separation. */ int w_vsep_width; /* Number of separator columns (0 or 1). */ pos_save_T w_save_cursor; /* backup of cursor pos and topline */ +#ifdef FEAT_TEXT_PROP + int w_zindex; + int w_maxheight; // "maxheight" for popup window + int w_maxwidth; // "maxwidth" for popup window +#endif /*