Problem: Slow redrawing with DirectX.
Solution: Avoid calling gui_mch_flush() unnecessarily, especially when
updating the cursor. (Ken Takata, closes#2560)
Problem: Char not overwritten with ambiguous width char, if the ambiguous
char is single width but we reserve double-width space.
Solution: First clear the screen cells. (Ozaki Kiichi, closes#2436)
Problem: Window size wrong after maximizing with WinBar. (Lifepillar)
Solution: Fix height computations. Redraw window when it is zero height but
has a WinBar. (closes#2356)
Problem: Undercurl is not used in the terminal. (Kovid Goyal)
Solution: Only fall back to underline when undercurl highlighting is not
defined. (closes#1306)
Problem: Accessing freed memory when EXITFREE is set and there is more than
one tab and window. (Dominique Pelle)
Solution: Free options later. Skip redraw when exiting.
Problem: wrong highlighting with combination of match and 'cursorline'.
Solution: Use "line_attr" when appropriate. (Ozaki Kiichi, closes#2111)
But don't highlight more than one character.
Problem: Syntax timeout not used correctly.
Solution: Do not pass the timeout to syntax_start() but set it explicitly.
(Yasuhiro Matsumoto, closes#2139)
Problem: FEAT_WINDOWS adds a lot of #ifdefs while it is nearly always
enabled and only adds 7% to the binary size of the tiny build.
Solution: Graduate FEAT_WINDOWS.
Problem: Terminal window in Normal mode has wrong background.
Solution: Store the default background and use it for clearning until the
end of the line. Not for below the last line, since there is no
text there.
Problem: Bogus characters appear when indenting kicks in while doing a
visual-block append.
Solution: Recompute when indenting is done. (Christian Brabandt)
Problem: Scrolling in a terminal hwindow as flicker when the Normal
background differs from the terminal window background.
Solution: Set the attribute to clear with.
Problem: When updating a buffer for a callback the modeless selection is
lost.
Solution: Do not insert or delete screen lines when redrawing for a callback
and there is a modeless selection.
Problem: When typing CTRL-L in a window that's not the first one, another
redraw will happen later. (Christian Brabandt)
Solution: Reset must_redraw after calling screenclear().
Problem: 'colorcolumn' has a higher priority than 'hlsearch', it should be
the other way around. (Nazri Ramliy)
Solution: Change the priorities. (LemonBoy, closes#1794)
Problem: When 'hlsearch' is set and matching with the last search pattern
is very slow, Vim becomes unusable. Cannot quit search by
pressing CTRL-C.
Solution: When the search times out set a flag and don't try again. Check
for timeout and CTRL-C in NFA loop that adds states.
Problem: If a job writes to a buffer and the user is typing a command, the
screen isn't updated. When a message is displayed the changed
buffer may cause it to be cleared. (Ramel Eshed)
Solution: Update the screen and then the command line if the screen didn't
scroll. Avoid inserting screen lines, as it clears any message.
Update the status line when the buffer changed.
Problem: Using a function pointer instead of the actual function, which we
know.
Solution: Change mb_ functions to utf_ functions when already checked for
Unicode. (Dominique Pelle, closes#1582)
Problem: Storing a zero byte from a multi-byte character causes fold text
to show up wrong.
Solution: Avoid putting zero in ScreenLines. (Christian Brabandt,
closes#1567)