patch 8.0.0396: 'balloonexpr' only works synchronously
Problem: 'balloonexpr' only works synchronously.
Solution: Add balloon_show(). (Jusufadis Bakamovic, closes #1449)
diff --git a/src/evalfunc.c b/src/evalfunc.c
index a470ff9..70b90ad 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -58,6 +58,9 @@
static void f_atan(typval_T *argvars, typval_T *rettv);
static void f_atan2(typval_T *argvars, typval_T *rettv);
#endif
+#ifdef FEAT_BEVAL
+static void f_balloon_show(typval_T *argvars, typval_T *rettv);
+#endif
static void f_browse(typval_T *argvars, typval_T *rettv);
static void f_browsedir(typval_T *argvars, typval_T *rettv);
static void f_bufexists(typval_T *argvars, typval_T *rettv);
@@ -484,6 +487,9 @@
{"atan", 1, 1, f_atan},
{"atan2", 2, 2, f_atan2},
#endif
+#ifdef FEAT_BEVAL
+ {"balloon_show", 1, 1, f_balloon_show},
+#endif
{"browse", 4, 4, f_browse},
{"browsedir", 2, 2, f_browsedir},
{"bufexists", 1, 1, f_bufexists},
@@ -1363,6 +1369,17 @@
#endif
/*
+ * "balloon_show()" function
+ */
+#ifdef FEAT_BEVAL
+ static void
+f_balloon_show(typval_T *argvars, typval_T *rettv UNUSED)
+{
+ gui_mch_post_balloon(balloonEval, get_tv_string_chk(&argvars[0]));
+}
+#endif
+
+/*
* "browse(save, title, initdir, default)" function
*/
static void