patch 8.1.1963: popup window filter may be called recursively
Problem: Popup window filter may be called recursively when using a Normal
mode command.
Solution: Prevent recursiveness. (closes #4887) Also restore KeyTyped.
patch 8.1.1959: when using "firstline" in popup window text may jump
Problem: When using "firstline" in popup window text may jump when
redrawing it. (Nick Jensen)
Solution: Set 'scrolloff' to zero in a popup window. (closes #4882)
patch 8.1.1956: screenshot tests may use a different encoding
Problem: Screenshot tests may use a different encoding. (Dominique Pelle)
Solution: Always set 'encoding' to "utf-8" when running Vim in a terminal.
(closes #4884)
Bram Moolenaar [Fri, 30 Aug 2019 20:08:34 +0000 (22:08 +0200)]
patch 8.1.1949: cannot scroll a popup window to the very bottom
Problem: Cannot scroll a popup window to the very bottom.
Solution: Scroll to the bottom when the "firstline" property was set to -1.
(closes #4577) Allow resetting min/max width/height.
Bram Moolenaar [Fri, 30 Aug 2019 17:28:25 +0000 (19:28 +0200)]
patch 8.1.1948: mouse doesn't work in Linux console
Problem: Mouse doesn't work in Linux console and causes 100% CPU. (James P.
Harvey)
Solution: Loop in WaitForCharOrMouse() when gpm_process_wanted is set.
(closes #4828)
Bram Moolenaar [Fri, 30 Aug 2019 15:34:08 +0000 (17:34 +0200)]
patch 8.1.1945: popup window "firstline" cannot be reset
Problem: Popup window "firstline" cannot be reset.
Solution: Allow for setting "firstline" to zero. Fix that the text jumps to
the top when using win_execute(). (closes #4876)
Bram Moolenaar [Fri, 30 Aug 2019 13:46:30 +0000 (15:46 +0200)]
patch 8.1.1943: more code can be moved to evalvars.c
Problem: More code can be moved to evalvars.c.
Solution: Move it, clean up comments. Also move some window related
functions to window.c. (Yegappan Lakshmanan, closes #4874)
Bram Moolenaar [Thu, 29 Aug 2019 18:02:11 +0000 (20:02 +0200)]
patch 8.1.1936: not enough tests for text property popup window
Problem: Not enough tests for text property popup window.
Solution: Add a few more tests. Make negative offset work. Close all
popups when window closes.
Bram Moolenaar [Sun, 25 Aug 2019 20:25:02 +0000 (22:25 +0200)]
patch 8.1.1928: popup windows don't move with the text when making changes
Problem: Popup windows don't move with the text when making changes.
Solution: Add the 'textprop" property to the popup window options, position
the popup relative to a text property. (closes #4560)
No tests yet.
Bram Moolenaar [Sat, 24 Aug 2019 19:53:31 +0000 (21:53 +0200)]
patch 8.1.1923: some source files are not in a normal encoding
Problem: Some source files are not in a normal encoding.
Solution: Convert hangulin.c from euc-kr to utf-8 and digraph.c from latin1
to utf-8. (Daniel Hahler, closes #4731)
Bram Moolenaar [Sat, 24 Aug 2019 18:54:19 +0000 (20:54 +0200)]
patch 8.1.1922: in diff mode global operations can be very slow
Problem: In diff mode global operations can be very slow.
Solution: Do not call diff_redraw() many times, call it once when redrawing.
And also don't update folds multiple times.
Bram Moolenaar [Sat, 24 Aug 2019 17:36:00 +0000 (19:36 +0200)]
patch 8.1.1920: cannot always close a popup when filter consumes all events
Problem: Cannot close a popup by the X when a filter consumes all events.
Solution: Check for a click on the close button before invoking filters.
(closes #4858)
Bram Moolenaar [Sat, 24 Aug 2019 13:26:24 +0000 (15:26 +0200)]
patch 8.1.1918: redrawing popups is inefficient
Problem: Redrawing popups is inefficient.
Solution: Fix the logic to compute what window lines to redraw. Make it
work below the last line. Remove redrawing all windows.
Bram Moolenaar [Sat, 24 Aug 2019 12:16:32 +0000 (14:16 +0200)]
patch 8.1.1916: trying to allocate negative amount of memory closing popup
Problem: Trying to allocate negative amount of memory when closing a popup.
Solution: Check the rows are not out of bounds. Don't finish a selection if
it was never started.
Bram Moolenaar [Thu, 22 Aug 2019 19:23:20 +0000 (21:23 +0200)]
patch 8.1.1910: redrawing too much when toggling 'relativenumber'
Problem: Redrawing too much when toggling 'relativenumber'.
Solution: Only clear when 'signcolumn' is set to "number". (Yegappan
Lakshmanan, closes #4852)
Bram Moolenaar [Wed, 21 Aug 2019 10:54:18 +0000 (12:54 +0200)]
patch 8.1.1897: may free memory twice when out of memory
Problem: May free memory twice when out of memory.
Solution: Check that backslash_halve_save() returns a different pointer.
(Dominique Pelle, closes #4847)
Bram Moolenaar [Tue, 20 Aug 2019 20:58:37 +0000 (22:58 +0200)]
patch 8.1.1895: using NULL pointer when out of memory
Problem: Using NULL pointer when out of memory.
Solution: Bail out or skip the code using the pointer. (Zu-Ming Jiang,
closes #4805, closes #4843, closes #4939, closes #4844)
Bram Moolenaar [Tue, 20 Aug 2019 19:25:46 +0000 (21:25 +0200)]
patch 8.1.1893: script to summarize test results can be improved
Problem: Script to summarize test results can be improved.
Solution: Use "silent" for substitute to avoid reporting number of matches.
Remove duplicate "set nocp". (Daniel Hahler, closes #4845)
Bram Moolenaar [Mon, 19 Aug 2019 20:48:30 +0000 (22:48 +0200)]
patch 8.1.1890: ml_get error when deleting fold marker
Problem: Ml_get error when deleting fold marker.
Solution: Check that the line number is not below the last line. Adjust the
fold when deleting the empty line. (Christian Brabandt,
closes #4834)
Bram Moolenaar [Sun, 18 Aug 2019 17:23:45 +0000 (19:23 +0200)]
patch 8.1.1884: cannot use mouse scroll wheel in popup in Insert mode
Problem: Cannot use mouse scroll wheel in popup in Insert mode. Mouse
clicks in popup close the popup menu.
Solution: Check if the mouse is in a popup window. Do not let mouse events
close the popup menu. (closes #4544)
Bram Moolenaar [Sat, 17 Aug 2019 14:33:23 +0000 (16:33 +0200)]
patch 8.1.1872: when Vim exits because of a signal, VimLeave is not triggered
Problem: When Vim exits because of a signal, VimLeave is not triggered.
(Daniel Hahler)
Solution: Unblock autocommands when triggering VimLeave. (closes #4818)
Bram Moolenaar [Sat, 17 Aug 2019 12:10:56 +0000 (14:10 +0200)]
patch 8.1.1868: multi-byte chars in 'listchars' fail with 'linebreak' set
Problem: Multibyte characters in 'listchars' don't work correctly if
'linebreak' is also enabled. (Martin Tournoij)
Solution: Make it work correctly. (Christian Brabandt, closes #4822,
closes #4812)