aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/window.c
Commit message (Collapse)AuthorAge
* vim-patch:8.2.3914 (#16808)dundargoc2021-12-28
| | | | | | | | | * vim-patch:8.2.3914: various spelling mistakes in comments Problem: Various spelling mistakes in comments. Solution: Fix the mistakes. (Dominique Pellé, closes vim/vim#9416) https://github.com/vim/vim/commit/af4a61a85d6e8cacc35324f266934bc463a21673 Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* refactor(misc1): move out high-level input functions to a new file: input.cBjörn Linse2021-12-10
| | | | | Possibly dialog code is messages.c could be moved here as well. misc1.c is now empty, so delete it.
* vim-patch:8.2.3671: restarting Insert mode in prompt buffer too oftenSean Dewar2021-12-07
| | | | | | | | | | | | | | | Problem: Restarting Insert mode in prompt buffer too often when a callback switches windows and comes back. (Sean Dewar) Solution: Do not set "restart_edit" when already in Insert mode. https://github.com/vim/vim/commit/34c20ff85b87be587ea5d0398812441b502ee6a5 As Test_prompt_switch_windows is skipped, implement it in prompt_buffer_spec. Replace the 50ms term_wait calls with poke_eventloop (test seems to work anyway without them, so maybe they're not required?) The new test does include a duplicate screen test that may generate a "screen test succeeded immediately" warning, but this is done to match the Vim test.
* vim-patch:8.2.1783: try-catch test failsSean Dewar2021-12-07
| | | | | | | | | Problem: Try-catch test fails. Solution: Don't call win_enter(), only call enterering_window(). https://github.com/vim/vim/commit/bdf931c25b4fe78877106ca529baee7899d0f6a4 v8.2.1781 caused Test_reload_in_try_catch() from v8.2.0004 to fail in Vim, but it has not been ported yet.
* vim-patch:8.1.0064: typing CTRL-W in a prompt buffer shows mode "-- --"Sean Dewar2021-12-07
| | | | | | | | | | | | | | | | Problem: Typing CTRL-W in a prompt buffer shows mode "-- --". Solution: Set restart_edit to 'A' and check for it. https://github.com/vim/vim/commit/942b4541a2d8e8df8369ab70e112dbbbe0c7c0aa Nvim already checked for 'i' in showmode(), so this bug was fixed with <C-W> (though this patch now changes <C-W> to use 'A'). However, the missing changes I ported for v8.1.0036 use 'A' when a callback leaves the window in insert mode and edit gets restarted, so this bug was possible there. Modify showmode() restart_edit condition to match v8.2.1978: https://github.com/vim/vim/commit/957cf67d50516ba98716f59c9e1cb6412ec1535d
* vim-patch:8.1.0042: if omni completion opens a window Insert mode is stoppedSean Dewar2021-12-07
| | | | | | | | | Problem: If omni completion opens a window Insert mode is stopped. (Hirohito Higashi) Solution: Only set stop_insert_mode in a prompt buffer window. https://github.com/vim/vim/commit/f98b845dd185dfadfa7a622a42452bfa6809d4e0 popupmenu_spec.lua fails without this.
* fix(prompt): add missing changes from v8.1.0036Sean Dewar2021-12-07
| | | | v8.1.0036 is already marked as ported, but missed out changes that depended on v8.1.0035.
* vim-patch:8.1.0035: not easy to switch between prompt buffer and other windowsSean Dewar2021-12-07
| | | | | | | | | | | | Problem: Not easy to switch between prompt buffer and other windows. Solution: Accept CTRL-W commands in Insert mode. Start and stop Insert mode as one would expect. https://github.com/vim/vim/commit/6d41c78e353b630bc1a72cbff9160311d2a81e8c Cherry-pick channel.txt change from: https://github.com/vim/vim/commit/d2f3a8b8787333abf2300d38836b196955f10c00 b_prompt_insert was already ported.
* vim-patch:8.1.2136: using freed memory with autocmd from fuzzerSean Dewar2021-11-24
| | | | | | | | | | | | | Problem: using freed memory with autocmd from fuzzer. (Dhiraj Mishra, Dominique Pelle) Solution: Avoid using "wp" after autocommands. (closes vim/vim#5041) https://github.com/vim/vim/commit/ec66c41d84e574baf8009dbc0bd088d2bc5b2421 Nvim doesn't use Vim's terminal implementation. Despite this, Nvim has its own *exclusive* way of crashing here. Requires 'winwidth' > winwidth() and 'nowinfixwidth' to crash; adjust the test ('nowfw' is the default, but ensure its disabled anyway).
* Merge pull request #16341 from zeertzjq/vim-8.2.2518nightlyJan Edmund Lazo2021-11-21
|\ | | | | vim-patch:8.2.{2518,2520,3572,3588}: 'listchars' (and 'fillchars'?) fixes
| * vim-patch:8.2.3572: memory leak when closing window and using "multispace"zeertzjq2021-11-17
| | | | | | | | | | | | | | Problem: Memory leak when closing window and using "multispace" in 'listchars'. Solution: Free the memory. (closes vim/vim#9071) https://github.com/vim/vim/commit/7a33ebfc5b04353aa7674972087d581def8fdcc1
* | Merge pull request #16362 from zeertzjq/vim-8.2.3617Jan Edmund Lazo2021-11-21
|\ \ | | | | | | vim-patch:8.2.{3468,3617,3618,3622}: some other CWD related patches
| * | vim-patch:8.2.3617: ":verbose pwd" does not mention 'autochdir' was appliedzeertzjq2021-11-19
| | | | | | | | | | | | | | | | | | Problem: ":verbose pwd" does not mention 'autochdir' was applied. Solution: Remember the last chdir was done by 'autochdir'. (issue vim/vim#9142) https://github.com/vim/vim/commit/0526815c15170a5926e1008600ec29d42d8b64c2
* | | refactor: saner options for uncrustify (#16204)dundargoc2021-11-19
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sp_enum_after_assign = force * sp_brace_typedef = force * nl_do_brace = remove * sp_do_brace_open = force * sp_brace_close_while = force * sp_before_semi = remove * sp_before_semi_for = remove * sp_before_semi_for_empty = remove * sp_between_semi_for_empty = remove * sp_after_semi_for_empty = remove * sp_before_square = remove * sp_before_squares = remove * sp_inside_square = remove * sp_inside_fparens = remove * sp_inside_fparen = remove * sp_inside_tparen = remove * sp_after_tparen_close = remove * sp_return_paren = force * pos_bool = lead * sp_pp_concat = remove * sp_pp_stringify = remove * fixup: disable formatting for the INIT section
* / vim-patch:8.2.3593: directory is wrong after executing "lcd" with ↵zeertzjq2021-11-17
|/ | | | | | | | win_execute() (#16314) Problem: Directory is wrong after executing "lcd" with win_execute(). Solution: Correct the directory when going back to the original window. (closes vim/vim#9132) https://github.com/vim/vim/commit/7f13b24ab6aca808262e68680d8fe5f082670ebd
* refactor: reduce number of explicit char casts (#16077)dundargoc2021-11-16
| | | * refactor: reduce number of explicit char casts
* Merge pull request #16155 from zeertzjq/fix-redr-border-corruptionBjörn Linse2021-11-06
|\ | | | | fix(float): fix potential heap corruption in win_redr_border
| * fix(float): redraw if w_border_adj changedzeertzjq2021-10-28
| |
* | vim-patch:8.1.0779: argument for message functions is inconsistentJames McCoy2021-11-01
| | | | | | | | | | | | Problem: Argument for message functions is inconsistent. Solution: Make first argument to msg() "char *". https://github.com/vim/vim/commit/32526b3c1846025f0e655f41efd4e5428da16b6c
* | vim-patch:8.1.0743: giving error messages is not flexibleJames McCoy2021-11-01
| | | | | | | | | | | | | | | | | | Problem: Giving error messages is not flexible. Solution: Add semsg(). Change argument from "char_u *" to "char *", also for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes vim/vim#3302) Also make emsg() accept a "char *" argument. Get rid of an enormous number of type casts. https://github.com/vim/vim/commit/f9e3e09fdc93be9f0d47afbc6c7df1188c2a5a0d
* | refactor: saner options for uncrustify #16196dundargoc2021-10-31
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refactor: general good option changes sp_deref = remove sp_not = remove sp_inv = remove sp_inside_paren_cast = remove mod_remove_duplicate_include = true sp_after_semi = add sp_after_semi_for = force sp_sizeof_paren = remove nl_return_expr = remove nl_else_brace = remove nl_else_if = remove * refactor: mod_remove_extra_semicolon = true * refactor: nl_max = 3 * refactor: sp_bool = force * refactor: sp_compare = force * refactor: sp_inside_paren = remove * refactor: sp_paren_paren = remove * refactor: sp_inside_sparen = remove * refactor: sp_before_sparen = force * refactor: sp_sign = remove * refactor: sp_addr = remove * refactor: sp_member = remove * refactor: nl_struct_brace = remove * refactor: nl_before_if_closing_paren = remove * refactor: nl_fdef_brace = force * refactor: sp_paren_comma = force * refactor: mod_full_brace_do = add
* vim-patch:8.1.2396: using old C style commentsDundar Göc2021-10-21
| | | | | | Problem: Using old C style comments. Solution: Use // comments where appropriate. https://github.com/vim/vim/commit/e38eab22c1fb950127f0307a9904de6d4561dc70
* Merge pull request #15952 from zeertzjq/vim-8.1.1291Jan Edmund Lazo2021-10-17
|\ | | | | vim-patch:8.0.{1459,1460,1461,1463},8.1.{0602,0604,1291},8.2.{0189,0876,0909,1411}: chdir and DirChanged related patches
| * refactor(dirchanged): tab -> tabpagezeertzjq2021-10-17
| | | | | | | | Match Vim's behavior.
| * vim-patch:8.2.1411: when splitting a window localdir is copied but prevdir ↵zeertzjq2021-10-17
| | | | | | | | | | | | | | | | is not Problem: when splitting a window localdir is copied but prevdir is not. Solution: Also copy prevdir. (closes vim/vim#6667) https://github.com/vim/vim/commit/a9a47d157ab1946d1e286c9695bc68d71305af68
| * vim-patch:8.2.0909: cannot go back to the previous local directoryzeertzjq2021-10-17
| | | | | | | | | | | | Problem: Cannot go back to the previous local directory. Solution: Add "tcd -" and "lcd -". (Yegappan Lakshmanan, closes vim/vim#4362) https://github.com/vim/vim/commit/002bc79991286934a9593b80635c27d4238cdfc4
| * vim-patch:8.1.0604: autocommand test fails on MS-Windowszeertzjq2021-10-17
| | | | | | | | | | | | Problem: Autocommand test fails on MS-Windows. Solution: Use pathcmp() instead of strcmp() to check if a directory differs. https://github.com/vim/vim/commit/9eb76af451ddd8eaad0cd5dd629f18c4f4035171
| * vim-patch:8.0.1459: cannot handle change of directoryzeertzjq2021-10-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot handle change of directory. Solution: Add the DirChanged autocommand event. (Andy Massimino, closes vim/vim#888) Avoid changing directory for 'autochdir' too often. https://github.com/vim/vim/commit/b7407d3fc9496f9048fb65ab17b5ba3444965c0e Only add "auto" pattern. "window" and "global" are already implemented. Skip `Test_dirchanged_auto` using `CheckFunction test_autochdir`. Part of PR #15952. More information can be found there. N/A patches for version.c: vim-patch:8.0.1460: missing file in patch Problem: Missing file in patch. Solution: Add changes to missing file. https://github.com/vim/vim/commit/b5cb65ba2bcc6bbc6d2798a2dea18b95f0b38f5e vim-patch:8.0.1461: missing another file in patch Problem: Missing another file in patch. Solution: Add changes to missing file. https://github.com/vim/vim/commit/15833239a4131279935a4bd574b74fe3a2b0f49f
* | Merge pull request #15930 from dundargoc/vim-patch/old-style-c-commentsJan Edmund Lazo2021-10-17
|\ \ | |/ |/| vim-patch:8.1.2396,8.1.2395,8.1.2394,8.1.2392,8.1.2368,8.1.2388,8.1.2379
| * vim-patch:8.1.2396: using old C style commentsDundar Göc2021-10-06
| | | | | | | | | | | | Problem: Using old C style comments. Solution: Use // comments where appropriate. https://github.com/vim/vim/commit/e38eab22c1fb950127f0307a9904de6d4561dc70
* | refactor: reduce number of unique char casts (#15995)dundargoc2021-10-12
|/
* fix(float)!: always anchor to corner of window including border #15832zeertzjq2021-10-02
| | | | | | | | | | N, W, S, E are all inclusive, i.e., always anchor to the exact corner of the window (including border). This line may also need change in this case (change 0 to -1): This is most consistent and easiest to reason about, especially with GUIs whose border do not need to have width/height of 1/1 in cell units. Fix #15789
* Refactor/uncrustify (#15790)dundargoc2021-09-29
| | | | | | | | | | | | | * refactor: format with uncrustify * fixup(dundar): fix functions comments * fixup(dundar): remove space between variable and ++/-- * fixup(dundar): better workaround for macro attributes This is done to be able to better use uncrustify rules for macros * fixup(justin): make preprocessors follow neovim style guide
* refactor: reformat with uncrustify #15736dundargoc2021-09-20
| | | | * fix function parameter comments * remove space after star in function names
* vim-patch:8.2.3313: unused code in win_exchange() and frame_remove()Sean Dewar2021-09-17
| | | | | | Problem: Unused code in win_exchange() and frame_remove(). Solution: Remove the code. (closes vim/vim#8728) https://github.com/vim/vim/commit/9e2fa4bb9eb40a78a1ae1f67a4064651b5ce0aac
* vim-patch:8.2.3286: win_enter_ext() has too many boolean argumentsSean Dewar2021-09-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: win_enter_ext() has too many boolean arguments. Solution: use one flags argument with defined values. https://github.com/vim/vim/commit/d61f2f772a59617850e9aa2f5fa069c1aad8e074 Include some style changes to appease the linter. N/A patches for version.c: vim-patch:8.2.3289: compiler warning for unused variable with small features Problem: Compiler warning for unused variable with small features. Solution: Rearrange #ifdefs. https://github.com/vim/vim/commit/f18e8a969a3414ed5e6b7159c40fe43963021ff3 vim-patch:8.2.3298: build failure with small features Problem: Build failure with small features. Solution: Add #ifdef. https://github.com/vim/vim/commit/6f6d58c3809010b1386634c1aeec61f1a66e72c2 vim-patch:8.2.3331: Coverity warns for using value without boundary check Problem: Coverity warns for using value without boundary check. Solution: Add a boundary check. https://github.com/vim/vim/commit/ed7cb2df35244e40e5c4df06169b50e705427576 vim-patch:8.2.3354: build failure with +byte_offset but without +textprop Problem: Build failure with +byte_offset but without +textprop. (John Marriott) Solution: Adjust the #ifdef. https://github.com/vim/vim/commit/92755bba30ec7a4c72ae0280420ba5c3847a9385 vim-patch:8.2.3355: MS-Windows: compiler warning for 64-32 bit conversion Problem: MS-Windows: compiler warning for 64-32 bit conversion. Solution: Add type casts. https://github.com/vim/vim/commit/434df7a401c92d4084bb0a01ffd6d1737ae0193b
* refactor: replace TRUE/FALSE with true/false #15647dundargoc2021-09-13
|
* Merge pull request #14770 from andrew-pa/fix13403Björn Linse2021-09-12
|\ | | | | Fix relative float positioning
| * fix(windowing): positioning of relative floatsandrew-pa2021-09-08
| | | | | | | | | | | | Fix relative floating windows so that they open in the correct position relative to each other. Also make sure that their positions are correct immediately after creation without a redraw.
* | feat(api): win_viewport also sends line_count #15613Yatao Li2021-09-10
| |
* | refactor: format files with uncrustify #15607dundargoc2021-09-10
| |
* | refactor: format files with uncrustifyDundar Göc2021-09-07
| |
* | fix(window.c): win_close from other tabpage #15454notomo2021-08-22
| | | | | | Fix #15313
* | refactor: replace TRUE/FALSE with true/false #15425dundargoc2021-08-22
| |
* | refactor(api): remove unneccesary indirection around handlesBjörn Linse2021-08-22
| | | | | | | | | | These things are just maps to pointers, no need to perform a huge song and dance around it.
* | feat(match): allow hl group to be defined after :match commandBjörn Linse2021-08-19
| |
* | refactor: replace TRUE/FALSE with true/falseDundar Göc2021-08-12
| |
* | Merge pull request #15336 from bfredl/plinesBjörn Linse2021-08-11
|\ \ | | | | | | refactor(plines): move "plines" (size of printed lines) family of function to own file
| * | refactor(plines): move out plines related code from misc1.cBjörn Linse2021-08-10
| | |
* | | refactor(sign): include longer sign column optionSirisak Lueangsaksri2021-08-09
| | |