Commit message (Collapse) | Author | Age | ||
---|---|---|---|---|
... | ||||
* | fix(inccommand): restrict cmdpreview undo calls (#24289) | Alexandre Teoi | 2023-07-26 | |
| | | | | | | | | | | | | | | | Problem: The cmdpreview saved undo nodes on cmdpreview_prepare() from ex_getln.c may become invalid (free) if the preview function makes undo operations, causing heap-use-after-free errors. Solution: Save the buffer undo list on cmdpreview_prepare)_ and start a new empty one. On cmdpreview_restore_state(), undo all the entries in the new undo list and restore the original one. With this approach, the preview function will be allowed to undo only its own changes. Fix #20036 Fix #20248 | |||
* | fix(mouse): drag vsep of window with 'statuscolumn' (#24462) | zeertzjq | 2023-07-24 | |
| | | | | | | Problem: Cannot drag a vertical separator to the right of a window whose 'statuscolumn' is wider than itself. Solution: Never treat a click on a vertical separator as a click on 'statuscolumn'. | |||
* | fix(statuscolumn): don't update clicks if current width is 0 (#24459) | zeertzjq | 2023-07-24 | |
| | ||||
* | fix(highlight): make CurSearch work properly with 'winhl' (#24448) | zeertzjq | 2023-07-23 | |
| | ||||
* | fix(events): trigger VimResume on next UI request (#24426) | zeertzjq | 2023-07-23 | |
| | ||||
* | feat(decoration_provider): log errors as error messages | Thomas Vigouroux | 2023-07-19 | |
| | ||||
* | fix(inccommand): block errors when parsing command line again (#24374) | zeertzjq | 2023-07-17 | |
| | | | Revert the change to ex_getln.c from a741c7fd0465c949a0016fcbee5f4526b65f8c02 | |||
* | fix(ui): cursor pos with left gravity inline virt_text at eol (#24329) | zeertzjq | 2023-07-13 | |
| | | | | | | Problem: Cursor is not after inline virtual text with left gravity when inserting after the end of the line. Solution: Add width of inline virtual text with left gravity to cursor virtcol in Insert mode even if on a NUL. | |||
* | test(extmarks): add test for virt_text_win_col with cpo+=n (#24328) | zeertzjq | 2023-07-13 | |
| | ||||
* | fix(mouse): copy the line before syntax matching (#24320) | zeertzjq | 2023-07-12 | |
| | ||||
* | fix(drawline): fix missing Visual hl on double-width fold char (#24308) | zeertzjq | 2023-07-11 | |
| | ||||
* | fix(extmarks): fix wrong highlight after "combine" virt_text (#24281) | Ibby | 2023-07-08 | |
| | ||||
* | fix(folds): fix missing virt_lines above when fold is hidden (#24274) | zeertzjq | 2023-07-07 | |
| | ||||
* | fix(drawline): inline virt_text hl_mode inside syntax/extmark hl (#24273) | zeertzjq | 2023-07-07 | |
| | ||||
* | fix(column): fix wrong cursor with 'statuscolumn' and cpo+=n (#24268) | zeertzjq | 2023-07-06 | |
| | ||||
* | fix(ui): delay win_viewport until screen update #24182 | fredizzimo | 2023-07-05 | |
| | | | | | | | | | | | | | | | | | | | | | | | | Problem: Sometimes, when nvim sends the `win_viewport` event, for example when scrolling with visible folds on the screen, it reports the `scroll_delta` value one batch into "future". So when the client application is trying to show the new viewport it's not yet updated, resulting in temporary corruption / screen flickering. For more details see #23609, and starting from [this comment]( https://github.com/neovide/neovide/pull/1790#issuecomment-1518697747) in https://github.com/neovide/neovide/pull/1790,, where the issue was first detected. Note that some of the conclusions in those are not fully accurate, but the general observations are. Solution: When there are pending updates to a Window, delay the `win_viewport` UI event until the updates are sent. This ensures that there's no flush between sending the viewport and updating of the lines corresponding to the new viewport. Document the existing viewport behaviour (for cases where there are no extra flushes), give a hint about how applications can deal with the slightly surprising behaviour of the viewport event being sent after the updates. Fixes https://github.com/neovim/neovim/issues/23609 | |||
* | perf(ui-ext): approximate scroll_delta when scrolling too much (#24234) | zeertzjq | 2023-07-04 | |
| | ||||
* | fix(ui-ext): "scroll_delta" handle topfill and skipcol (#24249) | zeertzjq | 2023-07-04 | |
| | ||||
* | fix(plines): handle inline virtual text after last char (#24241) | zeertzjq | 2023-07-03 | |
| | | | Also remove dead code in win_lbr_chartabsize(). | |||
* | fix(statusline): fill for double-width char after moving items (#24207) | zeertzjq | 2023-06-30 | |
| | ||||
* | fix(column): handle unprintable chars in 'statuscolumn' (#24198) | zeertzjq | 2023-06-29 | |
| | ||||
* | test(statusline): add test with control characters (#24197) | zeertzjq | 2023-06-29 | |
| | ||||
* | fix(charset): fix wrong display of 0xffff (#24158) | zeertzjq | 2023-06-26 | |
| | ||||
* | test(extmarks): add a test for #23848 (#24140) | zeertzjq | 2023-06-24 | |
| | ||||
* | fix(extmarks): fix heap buffer overflow caused by inline virtual text (#23851) | Ibby | 2023-06-24 | |
| | | | also fixes an edge case where the extends character would not be drawn if the real text exactly fits the grid. | |||
* | fix(cmdline): don't redraw 'tabline' in Ex mode (#24123) | zeertzjq | 2023-06-23 | |
| | | | | | | | | Redrawing of 'statusline' and 'winbar' are actually already inhibited by RedawingDisabled in Ex mode. In Vim there is a check for `msg_scrolled == 0` (which is false in Ex mode) since Vim doesn't have msgsep. Add a `!exmode_active` check here in Nvim instead. | |||
* | feat(extmarks): support hl_mode "combine" for inline virt_text (#24099) | zeertzjq | 2023-06-22 | |
| | ||||
* | fix(extmarks): hide inline virt_text properly with 'smoothscroll' (#24106) | zeertzjq | 2023-06-22 | |
| | ||||
* | fix(extmarks): empty inline virt_text interfering with DiffText (#24101) | zeertzjq | 2023-06-22 | |
| | ||||
* | fix(extmarks): empty inline virt_text interfering with Visual highlight | zeertzjq | 2023-06-22 | |
| | ||||
* | fix(folds): don't show search or match highlighting on fold (#24084) | zeertzjq | 2023-06-21 | |
| | ||||
* | test(decorations_spec): add test for extmark case of #21486 (#24028) | zeertzjq | 2023-06-15 | |
| | ||||
* | fix(extmarks): don't position overlay virt_text halfway a char (#24027) | zeertzjq | 2023-06-15 | |
| | ||||
* | fix(extmarks): handle inline virt_text with empty chunk (#24005) | zeertzjq | 2023-06-13 | |
| | ||||
* | feat(diff): grouping optimization for linematch algorithm | Jonathon | 2023-06-07 | |
| | ||||
* | fix(statusline): redraw when VIsual_mode changes (#23933) | zeertzjq | 2023-06-06 | |
| | ||||
* | fix(mouse): handle folded lines with virt_lines attached to line above (#23912) | zeertzjq | 2023-06-05 | |
| | ||||
* | fix(plines): folded lines with virt_lines attached to line above | zeertzjq | 2023-06-05 | |
| | ||||
* | fix(ui): don't send empty grid_line with redrawdebug=compositor (#23899) | zeertzjq | 2023-06-04 | |
| | ||||
* | fix(events)!: trigger CursorMoved later on switching window (#23711) | zeertzjq | 2023-06-04 | |
| | ||||
* | fix(folds): allow overlay virtual text on folded line (#23892) | zeertzjq | 2023-06-03 | |
| | | | Also always check for fi_level before fi_lines. | |||
* | Merge pull request #23789 from luukvbaal/spell | zeertzjq | 2023-06-01 | |
|\ | | | | | vim-patch:9.0.{1585,1595} | |||
| * | vim-patch:9.0.1595: line pointer becomes invalid when using spell checking | Luuk van Baal | 2023-06-01 | |
| | | | | | | | | | | | | | | Problem: Line pointer becomes invalid when using spell checking. Solution: Call ml_get() at the right places. (Luuk van Baal, closes vim/vim#12456) https://github.com/vim/vim/commit/e84c773d42e8b6ef0f8ae9b6c7312e0fd47909af | |||
* | | fix(column): don't overflow sign column with extmark signs (#23854) | zeertzjq | 2023-06-01 | |
| | | ||||
* | | test(extmarks): folding inline virt_text on empty line (#23847) | zeertzjq | 2023-05-31 | |
| | | ||||
* | | fix(statusline): corrupted screen with minwid sign item in 'statuscolumn' ↵ | luukvbaal | 2023-05-30 | |
| | | | | | | | | (#23823) | |||
* | | vim-patch:9.0.1588: Incsearch not triggered when pasting clipboard register ↵ | zeertzjq | 2023-05-30 | |
| | | | | | | | | | | | | | | | | | | | | | | | | (#23817) Problem: Incsearch not triggered when pasting clipboard register on the command line. Solution: Also set "literally" when using a clipboard register. (Ken Takata, closes vim/vim#12460) https://github.com/vim/vim/commit/9cf6ab133227ac7e9169941752293bb7178d8e38 Co-authored-by: K.Takata <kentkt@csc.jp> | |||
* | | fix(substitute): properly check if preview is needed (#23809) | zeertzjq | 2023-05-29 | |
| | | ||||
* | | fix(extmarks): fix virt_text_hide off-by-one hiding (#23795) | zeertzjq | 2023-05-28 | |
| | | ||||
* | | fix(extmarks): don't show virt lines for end mark (#23792) | zeertzjq | 2023-05-28 | |
| | |