diff options
author | Bram Moolenaar <Bram@vim.org> | 2019-07-08 22:23:33 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2019-07-08 22:23:33 +0200 |
commit | 8a7383b6d28be02413cf115d4b8ed1b44d60dd9f (patch) | |
tree | 1965d70cea9fc29329cb4f14c891b55fc76385fe /src/beval.c | |
parent | 0d07155c8bbaca1a527b79da358438253a60839f (diff) | |
download | vim-git-8a7383b6d28be02413cf115d4b8ed1b44d60dd9f.tar.gz |
patch 8.1.1654: GUI: screen updates from 'balloonexpr' are not displayedv8.1.1654
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.
Diffstat (limited to 'src/beval.c')
-rw-r--r-- | src/beval.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/beval.c b/src/beval.c index 68df2be9e..ef307c524 100644 --- a/src/beval.c +++ b/src/beval.c @@ -294,11 +294,17 @@ general_beval_cb(BalloonEval *beval, int state UNUSED) 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 |