aboutsummaryrefslogtreecommitdiff
path: root/test/functional/ui
Commit message (Collapse)AuthorAge
* vim-patch:9.0.0652: 'smoothscroll' not tested with 'number' and "n" in 'cpo'Luuk van Baal2023-05-02
| | | | | | | | | Problem: 'smoothscroll' not tested with 'number' and "n" in 'cpo'. Solution: Add tests, fix uncovered problem. https://github.com/vim/vim/commit/b6aab8f44beb8c5d99393abdc2c9faab085c72aa Co-authored-by: Bram Moolenaar <Bram@vim.org>
* fix(mouse): fix popup_setpos position check with ext_multigrid (#23436)zeertzjq2023-05-02
|
* fix(normal): make "g$" work properly with resized gridzeertzjq2023-05-02
|
* fix(drawline): make cursorlineopt=screenline work with resized gridzeertzjq2023-05-02
|
* fix(float): make bufpos work properly with resized parent gridzeertzjq2023-05-02
|
* fix(spell): extmark with spell=false should disable spell (#23400)zeertzjq2023-05-01
|
* vim-patch:9.0.1493: popup menu position wrong in window with toolbarzeertzjq2023-04-28
| | | | | | | | | | Problem: Popup menu position wrong in window with toolbar. Solution: Take the window toolbar into account when positioning the popup menu. (closes vim/vim#12308) https://github.com/vim/vim/commit/4e1ca0d9a6c6d66987da67155e97f83f286ffbcc Fixed in the previous commit. Test only.
* fix(pum): make :popup position correctly with float borderzeertzjq2023-04-28
|
* fix: disallow removing extmarks in on_lines callbacks (#23219)Lewis Russell2023-04-27
| | | | | | | | | | fix(extmarks): disallow removing extmarks in on_lines callbacks decor_redraw_start (which runs before decor_providers_invoke_lines) gets references for the extmarks on a specific line. If these extmarks are deleted in on_lines callbacks then this results in a heap-use-after-free error. Fixes #22801
* fix(pum): position properly with ext_multigrid (#23336)zeertzjq2023-04-27
|
* test: fix dependencies between test cases (#23343)zeertzjq2023-04-27
| | | Discovered using --shuffle argument of busted.
* fix(statusline): also allow right click when 'mousemodel' is "popup*" (#23258)luukvbaal2023-04-25
| | | | | Problem: The 'statusline'-format ui elements do not receive right click events when "mousemodel" is "popup*" Solution: Do not draw popupmenu and handle click event instead.
* fix(pum): show right-click menu above cmdline area (#23298)zeertzjq2023-04-24
|
* vim-patch:9.0.1476: lines put in non-current window are not displayed (#23265)zeertzjq2023-04-23
| | | | | | | | | | Problem: Lines put in non-current window are not displayed. (Marius Gedminas) Solution: Don't increment the topline when inserting just above it. (closes vim/vim#12212) https://github.com/vim/vim/commit/e7f05a8780426dc7af247419c6d02d5f1e896689 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* fix(column): rebuild status column when sign column is invalidLuuk van Baal2023-04-19
|
* test(column): statuscolumn is rebuild when signs are (un)placedLuuk van Baal2023-04-19
|
* Merge pull request #23005 from seandewar/fix-ruf-cmdline-posSean Dewar2023-04-18
|\ | | | | fix(ruler): fix some ruler issues with no statusline
| * fix(ruler): show ruler of curwin with no statusline in cmdlineSean Dewar2023-04-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: After neovim/neovim@846a056, only the ruler for current floating or last window without a statusline is drawn in the cmdline. This means that if the current window is not one of these, but has no statusline, its ruler will not be drawn anymore. Solution: Make `showmode()` draw the ruler of the current window or the last window in the cmdline if it has no statusline. This also maintains the previously restored floating window case (`float->w_status_height` should be 0). This behaviour should again match Vim, but without the overdraw it seems to do to achieve the same effect; it calls `showmode()` to draw the ruler for the last window without a statusline, then may draw over it in `showruler()` (which is now `show_cursor_info_later()` in Nvim) to show the ruler for the current window..? It's very confusing. Also update the logic in `win_redr_ruler()` to mirror the check done in `showmode()`, so that the ruler doesn't potentially draw over the long ins-completion mode message in some cases.
| * vim-patch:9.0.1461: ruler not drawn correctly when using 'rulerformat'Sean Dewar2023-04-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Ruler not drawn correctly when using 'rulerformat'. Solution: Adjust formatting depending on whether the ruler is drawn in the statusline or the command line. (Sean Dewar, closes vim/vim#12246) https://github.com/vim/vim/commit/fc8a601c3251c0388a88c1235b18c529385f7196 This issue was made apparent after neovim/neovim@0f1e2b6, as `showmode()` calls `win_redr_ruler()` with `curwin` now if it's floating, rather than the last window if there's no statusline (which usually already shares its right side with that of the editor). Co-authored-by: Sean Dewar <seandewar@users.noreply.github.com>
* | fix(mouse): cmdline click registered as statuscolumn (#23163)luukvbaal2023-04-18
|/
* test(winbar_spec): properly update winbar when 'showcmdloc' is "statusline"quintik2023-04-14
| | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com> Co-authored-by: Luuk van Baal <luukvbaal@gmail.com>
* fix(column): add truncated width during estimation for 'statuscolumn'luukvbaal2023-04-12
| | | | | | Problem: Estimated 'statuscolumn' width estimated is not properly used, executing the `w_redr_statuscol` path unnecessarily. Solution: Adjust `w_nrwidth` and 'statuscolumn' width before anything is actually drawn in a `win_update()`.
* test: avoid name collisions with Xtest directory (#23019)kylo2522023-04-11
|
* fix(highlight): combine ColorColumn with low-priority CursorLine (#23017)zeertzjq2023-04-11
|
* Merge pull request #22865 from MunifTanjim/issue-20370bfredl2023-04-10
|\ | | | | fix(api): do not re-apply win_config.style when missing
| * fix(api): do not re-apply win_config.style when missingMunif Tanjim2023-04-10
| |
* | fix(column): 'statuscolumn' not drawn after virt_lines with "n" in 'cpo' ↵luukvbaal2023-04-10
| | | | | | | | | | | | | | | | (#22967) Problem: The 'statuscolumn' is not drawn and the line itself is drawn at an offset to the rest of the buffer after virt_lines if 'cpoptions' includes "n". Solution: Make sure 'statuscolumn' is drawn.
* | test: improve editor/fold_spec.lua and editor/put_spec.lua (#22916)zeertzjq2023-04-07
| | | | | | | | | | - Close and open a new window each time so that window options have their default values in each test. - Change feed_command() to command() as the latter is faster.
* | Merge pull request #22910 from bfredl/nonormalbfredl2023-04-06
|\ \ | | | | | | fix(highlight): use winhl=Foo:Bar even when Bar is empty
| * | fix(highlight): use winhl=Foo:Bar even when Bar is emptybfredl2023-04-06
| | | | | | | | | | | | fixes #22906
* | | refactor: rename local API alias from a to apiLewis Russell2023-04-05
|/ / | | | | | | | | | | | | | | Problem: Codebase inconsistently binds vim.api onto a or api. Solution: Use api everywhere. a as an identifier is too short to have at the module level.
* | Merge pull request #22847 from luukvbaal/redrstatusbfredl2023-04-03
|\ \ | |/ |/| fix(ui): ruler is not redrawn in cmdline with redrawstatus
| * fix(ui): ruler is not redrawn in cmdline with redrawstatusLuuk van Baal2023-04-02
| |
* | refactor(defaults)!: change default 'commentstring' value to empty (#22862)zeertzjq2023-04-02
|/
* Merge pull request #22844 from luukvbaal/stlrecordingbfredl2023-04-02
|\ | | | | fix(ui): recording change doesn't trigger statusline redraw
| * fix(ui): recording change doesn't trigger statusline redrawLuuk van Baal2023-04-01
| |
* | feat(extmarks): extend nvim_buf_get_extmarks()Luuk van Baal2023-04-01
|/ | | | | | | Problem: Can not get all extmarks in a buffer. Properties are missing from the details array. Solution: Allow getting all extmarks in a buffer by supplying a -1 "ns_id". Add missing properties to the details array.
* test: use exec_capture() in more places (#22787)zeertzjq2023-03-26
| | | | | | | Problem: Using `meths.exec2("code", { output = true })` is too verbose. Solution: Use exec_capture() in more places.
* feat(api): nvim_exec2(), deprecate nvim_exec() #19032Evgeni Chasnovski2023-03-25
| | | | | | | Problem: The signature of nvim_exec() is not extensible per ":help api-contract". Solution: Introduce nvim_exec2() and deprecate nvim_exec().
* fix(float): remove -1 in height clampPatrick McFarland2023-03-19
| | | | | | | | | | | Problem: Clamp for height in floating windows enforced no more than editor height - 1, disallowing full editor height floating windows when using cmdheight=0 Solution: Clamp to full height, removing the -1. Tested to give the intended results with cmdheight=0, 1, or more than 1. This also inadvertently fixes a rendering error with cmdheight >1 where the bottom border would be overlapped by the cmdline.
* fix(column): rebuild status column when sign column is invalidated (#22690)luukvbaal2023-03-18
| | | | | | | | | | | * fix(column): rebuild status column when sign column is invalidated Problem: When implementing a custom sign column through `'statuscolumn'`, the status column is not properly rebuilt when the sign column width changes. Solution: Force a rebuild of the status column when the sign column width is invalidated. * test(column): 'statuscolumn' has correct width when (un)placing signs
* test(statuscolumn_spec): remove unnecessary feed('lh')zeertzjq2023-03-18
| | | It is no longer needed after #22706.
* test(highlight_spec): fix warning in Visual highlight test (#22719)zeertzjq2023-03-18
| | | | Problem: Warning in Visual highlight test. Solution: Don't move cursor back and forth.
* vim-patch:9.0.0194: cursor displayed in wrong position after removing text ↵zeertzjq2023-03-17
| | | | | | | | | | | prop (#22706) Problem: Cursor displayed in wrong position after removing text prop. (Ben Jackson) Solution: Invalidate the cursor position. (closes vim/vim#10898) https://github.com/vim/vim/commit/326c5d36e7cb8526330565109c17b4a13ff790ae Co-authored-by: Bram Moolenaar <Bram@vim.org>
* Merge pull request #22659 from bfredl/floatrulerbfredl2023-03-14
|\ | | | | fix(screen): redraw the ruler for a current floating window
| * fix(screen): redraw the ruler for a current floating windowbfredl2023-03-14
| | | | | | | | | | | | | | Semi-regression. The "ruler" behavior for a floating window was never really specified but in practice followed the users cursor movements in normal mode in a focused float, which seems like a reasonable behavior to now specify.
* | test: re-bundle cat on windows (#21255)dundargoc2023-03-14
|/ | | | | | | | | | The builtin cat was removed in 4bc9229ecbec514e9a87cfc4be88ea27a971e9a1 as it is not used during runtime but only for tests. However, it is a very small and useful utility program that we need for a lot of our tests, so there's no harm in bundling it, and it helps us avoid complicating our build system by having two versions of neovim (neovim for users and neovim for testing). Also skip tests if "grep" or "sleep" isn't available.
* test(float_spec): add missing sum_scroll_delta #22648zeertzjq2023-03-12
|
* feat(ui): add scroll_delta to win_viewport event #19270Matthias Deiml2023-03-12
| | | | | | | | | | scroll_delta contains how much the top line of a window moved since the last time win_viewport was emitted. It is expected to be used to implement smooth scrolling. For this purpose it only counts "virtual" or "displayed" so folds should count as one line. Because of this it adds extra information that cannot be computed from the topline parameter. Fixes #19227
* refactor(redraw): make cursor position redraw use the "redraw later" patternbfredl2023-03-12
|