Mercurial > vim
changeset 17310:1b0b90f1d95e v8.1.1654
patch 8.1.1654: GUI: screen updates from 'balloonexpr' are not displayed
commit https://github.com/vim/vim/commit/8a7383b6d28be02413cf115d4b8ed1b44d60dd9f
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Jul 8 22:23:33 2019 +0200
patch 8.1.1654: GUI: screen updates from 'balloonexpr' are not displayed
Problem: GUI: screen updates from 'balloonexpr' are not displayed.
Solution: Update the screen if needed. Also avoid the cursor being
displayed in the wrong position.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 08 Jul 2019 22:30:04 +0200 |
parents | bd871e780f34 |
children | bfb4d8e3544d |
files | src/beval.c src/version.c |
diffstat | 2 files changed, 12 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/beval.c +++ b/src/beval.c @@ -294,11 +294,17 @@ general_beval_cb(BalloonEval *beval, int set_vim_var_string(VV_BEVAL_TEXT, NULL, -1); if (result != NULL && result[0] != NUL) - { post_balloon(beval, result, NULL); - recursive = FALSE; - return; - } + +# ifdef FEAT_GUI + // The 'balloonexpr' evaluation may show something on the screen + // that requires a screen update. + if (gui.in_use && must_redraw) + redraw_after_callback(FALSE); +# endif + + recursive = FALSE; + return; } } #endif