aboutsummaryrefslogtreecommitdiff
path: root/test/functional/ui
Commit message (Collapse)AuthorAge
...
* | UI/ext_messages: learn more message kindsJustin M. Keyes2019-05-11
| | | | | | | | ref #6201
* | ex_getln: fix statusline redraw logic #9967Carlo Abelli2019-05-02
| | | | | | fixes #9908
* | test: clear(): remove `opts.headless` parameterJustin M. Keyes2019-04-27
| | | | | | | | | | | | | | Callers can instead specify `args_rm={'--headless'}`. TODO: should `nvim_argv` have "--headless" by default? Need to inspect some uses of spawn(nvim_argv) ...
* | Spurious quote mark in command line when typing <C-R> (#9934)Gabriel Cruz2019-04-24
|/ | | Remove <C-R> special char after reading following chars
* Merge pull request #9898 from bfredl/floatwidthBjörn Linse2019-04-14
|\ | | | | windows: float config changes
| * windows: float config changesBjörn Linse2019-04-14
| | | | | | | | | | | | | | | | | | | | - Allow floating windows of width 1. #9846 - For a new floating window the size must be specified. Later on we might try to calculate a reasonable size by buffer contents - Remember the configured size of a window, just like its position. - Make get_config and set_config more consistent. Handle relative='' properly in set_config. get_config doesn't return keys that don't make sense for a non-floating window. - Don't use width=0 for non-changed width, just omit the key.
* | inccommand: Ignore :redraw during previewJustin M. Keyes2019-04-14
|/ | | | closes #9777
* vim-patch:8.0.0714: cmdline redraw during timer #9835Gabriel Cruz2019-04-12
| | | | | | | | | | | | | | | | vim-patch:8.0.0714: when a timer causes a command line redraw " goes missing Problem: When a timer causes a command line redraw the " that is displayed for CTRL-R goes missing. Solution: Remember an extra character to display. https://github.com/vim/vim/commit/a92522fbf3a49d06e08caf010f7d7b0f58d2e131 vim-patch:8.0.0720: unfinished mapping not displayed when running timer Problem: Unfinished mapping not displayed when running timer. Solution: Also use the extra_char while waiting for a mapping and digraph. (closes vim/vim#1844) https://github.com/vim/vim/commit/6a77d2667e982655f6adacee774ee7aa2581bd8a close #9835
* float: always change to valid windows (#9878)Marco Hinz2019-04-11
| | | | | | | | Using `:wincmd j` and friends doesn't make much sense to a floating window. For convenience though, any direction will simply change to the previous window. Make sure the previous window is valid, not the current window, and not another floating window. Change to the first window (which is never a floating window) otherwise.
* api/window: validate cursor in nvim_win_set_bufBjörn Linse2019-04-08
| | | | | | validate_cursor() is called regularly, but only for the current window. When changing the buffer for a non-current window, we need to invoke it in the context of that window.
* vim-patch:8.1.1072: extending sign and foldcolumn below the text is ↵Marco Hinz2019-04-03
| | | | | | | | | | | | confusing (#9816) Problem: Extending sign and foldcolumn below the text is confusing. Solution: Let the sign and foldcolumn stop at the last text line, just like the line number column. Also stop the command line window leader. (Christian Brabandt) https://github.com/vim/vim/commit/8ee4c01b8c79a29065c1af05e5d9c0721069765f Closes https://github.com/neovim/neovim/issues/9613
* keymap, terminal: more keycodes #9810Olivier G-R2019-03-31
| | | | | | | | | - input: recognize <kEqual>, <kComma> - terminal.c: If we need to support function key, a change must be made in libvtermkey. Currently, it emulates strictly VT220 terminal, and returning numeric value in 'normal' mode is the expected behaviour. closes #9810
* keymap: add more (keypad) keycodes #9793Olivier G-R2019-03-29
| | | | | | | | | | | | | | | | | - K_KORIGIN instead of K_KCENTER: This name is similar to what is used by xev. Alternative could be K_KBEGIN as hinted here: https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h2-PC-Style-Function-Keys But I find Begin and Home too similar, and it might induced some confusion. The naming looked related to some old keyboard configuration. - keymap.c: alias KPPeriod to kDel instead of kPoint. This might seems weird, but this is actually the behaviour that should be expected. libtermkey produces "KPPeriod" when num lock is off. To fix this would need to change this name in termkey. closes #9780 closes #9793
* doc [ci skip]Justin M. Keyes2019-03-26
| | | | closes #9719
* signs: support multiple columns #9295Dan Aloni2019-03-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | closes #990 closes #9295 - Support for multiple auto-adjusted sign columns. With this change, having more than one sign on a line, and with the 'auto' setting on 'signcolumn', extra columns will shown automatically to accomodate all the existing signs. For example, suppose we have this view: 5147 } 5148 5149 return sign->typenr; 5150 } 5151 } 5152 return 0; 5153 } 5154 We have GitGutter installed, so it tells us about modified lines that are not commmited. So let's change line 5152: 5147 } 5148 5149 return sign->typenr; 5150 } 5151 } ~ 5152 return 0; 5153 } 5154 Now we add a mark over line 5152 using 'ma' in normal mode: 5147 } 5148 5149 return sign->typenr; 5150 } 5151 } a ~ 5152 return 0; 5153 } 5154 Previously, Vim/Nvim would have picked only one of the signs, because there was no support for having multiple signs in a line. - Remove signs from deleted lines. Suppose we have highlights on a group of lines and we delete them: + 6 use std::ops::Deref; --+ 7 use std::borrow::Cow; --+ 8 use std::io::{Cursor}; 9 use proc_macro2::TokenStream; 10 use syn::export::ToTokens; --+ 11 use std::io::Write; >> 12 use std::ops::Deref; Without this change, these signs will momentarily accumulate in the sign column until the plugins wake up to refresh them. + --+ --+ --+ >> 6 Discussion: It may be better to extend the API a bit and allow this to happen for only certain types of signs. For example, VIM marks and vim-gitgutter removal signs may want to be presreved, unlike line additions and linter highlights. - 'signcolumn': support 'auto:NUM' and 'yes:NUM' settings - sort signs according to id, from lowest to highest. If you have git-gutter, vim-signature, and ALE, it would appear in this order: git-gutter - vim-signature - ALE. - recalculate size before screen update - If no space for all signs, prefer the higher ids (while keeping the rendering order from low to high). - Prevent duplicate signs. Duplicate signs were invisible to the user, before using our extended non-standard signcolumn settings. - multi signcols: fix bug related to wrapped lines. In wrapped lines, the wrapped parts of a line did not include the extra columns if they existed. The result was a misdrawing of the wrapped parts. Fix the issue by: 1. initializing the signcol counter to 0 when we are on a wrap boundary 2. allowing for the draw of spaces in that case.
* Update testJit Yao Yap2019-03-23
|
* floating-window.c: fix crash when using inccommandJit Yao Yap2019-03-23
|
* window: don't crash when closing two floats in a rowBjörn Linse2019-03-23
| | | | | prevwin can be set to the current window. Then we can't jump to it after closing a float.
* api: ignore floating windows for laststatus=1 (#9771)Marco Hinz2019-03-22
| | | | | ONE_WINDOW considers all windows whereas one_window() ignores floating windows. Fixes https://github.com/neovim/neovim/issues/9768
* vim-patch:8.1.{0849,1001}: 'cursorline' highlight #9757Justin M. Keyes2019-03-19
| | | | | | | | | | | | | | | | - Lua test correctly fails when 8.1.0849 is reverted. - 8.1.1001 bug does not manifest in Neovim. vim-patch:8.1.0849: cursorline highlight is not always updated Problem: Cursorline highlight is not always updated. Solution: Set w_last_cursorline when redrawing. Fix resetting cursor flags when using the popup menu. https://github.com/vim/vim/commit/c07ff5c60ad35982e9cdaa9dd72d3d1669935e87 vim-patch:8.1.1001: Visual area not correct when using 'cursorline' Problem: Visual area not correct when using 'cursorline'. Solution: Update w_last_cursorline also in Visual mode. (Hirohito Higashi, closes vim/vim#4086) https://github.com/vim/vim/commit/8156ed37558231a8167a1a61a147713d84c9af59
* Merge pull request #9726 from mhinz/nvim_win_get_configMarco Hinz2019-03-17
|\ | | | | Closes #9723
| * api: add tests for new code pathsMarco Hinz2019-03-16
| |
| * api: numerous small fixesMarco Hinz2019-03-16
| |
| * api: add width/height to FloatConfigMarco Hinz2019-03-16
| |
| * api: nvim_win_config() -> nvim_win_set_config()Marco Hinz2019-03-16
| |
* | Merge pull request #9607 from bfredl/wildpumBjörn Linse2019-03-16
|\ \ | | | | | | UI: deprecate redundant ext_wildmenu events and allow TUI popupmenu for cmdline
| * | Allow using internal popupmenu or ext_popupmenu for wildmenuBjörn Linse2019-03-16
| |/ | | | | | | | | Deprecate ext_wildmenu. ext_popupmenu already contains more state (anchor position), and will allow further expansion (info about items).
* | Merge #9686 'win/Lua: monkey-patch os.getenv()'Justin M. Keyes2019-03-16
|\ \ | |/ |/| | | fixes #9681
| * Fix environment variable on Windowserw72019-03-06
| | | | | | | | | | | | | | Since uv_os_setenv uses SetEnvironmentVariableW, _wenviron is no updated. As a result, inconsistency occurs in completion of environment variable names. Change to use GetEnvironmentStaringsW instead of _wenviron to solve it.
* | compositor: fix rendering issues with floats opened after popupmenuBjörn Linse2019-03-14
| |
* | test/CI: skip "throttles output" test on Travis macOS #9721Justin M. Keyes2019-03-12
| | | | | | | | | | Travis macOS is not fast enough to run this test reliably. The test depends on the system producing output faster than the Nvim TUI can handle it.
* | floats: add NormalFloat highlight and 'nonumber' defaultBjörn Linse2019-03-12
| |
* | vim-patch:8.1.0994: fix relative cursor position #9676Justin M. Keyes2019-03-09
| | | | | | | | | | | | Problem: Relative cursor position is not calculated correctly. Solution: Always set topline, also when window is one line only. (Robert Webb) Add more info to getwininfo() for testing. https://github.com/vim/vim/commit/8fcb60f961bdd134599fb016c6537fd496e800f5
* | floating-window: fix crash setting cmdheight #9685erw72019-03-09
|/ | | fixes #9680
* buffer: use aucmd_prepbuf() instead of switch_to_win_for_buf()Björn Linse2019-03-05
|
* Merge pull request #9667 from bfredl/wincloseBjörn Linse2019-03-03
|\ | | | | api: add nvim_win_close() to close window by id
| * api: add nvim_win_close() to close window by idBjörn Linse2019-03-03
| |
* | test: multibyte env var names #9655Justin M. Keyes2019-03-03
|/
* floats: implement floating windowsBjörn Linse2019-03-02
| | | | Co-Author: Dongdong Zhou <dzhou121@gmail.com>
* UI: change implementation of hl_rgb2cterm_color()Justin M. Keyes2019-02-12
| | | | | Replace the implementation cargo-culted from Vim's source with something simpler which "seems to look better" with 'pumblend'.
* highlight: handle blending with gui=reverse and guisp attributesBjörn Linse2019-02-11
|
* ui: implement ext_messagesBjörn Linse2019-02-10
| | | | Co-Author: Dongdong Zhou <dzhou121@gmail.com>
* UI: implement 'pumblend' option for semi-transparent popupmenuBjörn Linse2019-02-07
| | | | | | | | | | | | | Why? - Because we can. - Because the TUI is just another GUI™ - Because it looks kinda nice, and provides useful context like 1 out of 100 times Complies with "don't pay for what you don't use". Some crashes for resizing were unfolded, add tests for those.
* UI: always use contrete colors for default_colors_setBjörn Linse2019-02-05
| | | | | But add an escape hatch needed for external TUI, so it still can use terminal emulator defaults.
* popupmenu: fix alignment of kind and extra after #9530Björn Linse2019-02-03
|
* Merge pull request #9530 from bfredl/pum_floatBjörn Linse2019-02-02
|\ | | | | Implement popupmenu as a floating grid internally to reduce flicker
| * tests/ui: add test for popupmenu redrawing in various situationsBjörn Linse2019-02-02
| | | | | | | | | | Many of these are handled by the compositor. Check that it causes no glitches.
* | inccommand: auto-disable if folding is slow #9568KillTheMule2019-02-01
|/ | | | | Fixes #9557
* tests: fix mouse tests that use lcs=eol:$Marco Hinz2019-01-26
| | | | | | | Previously the mouse tests set 'listchars', but not 'list'. Funnily enough, the space, where the `$` would normally appear, would still use new highlight group. Set 'list' for good and fix the tests accordingly.
* ui: multigrid mouse supportBjörn Linse2019-01-20
|