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/os_unix.c b/src/os_unix.c
index 48359d3..6220044 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -467,6 +467,12 @@
 	if ((wait_time < 0 || wait_time > 100L) && channel_any_readahead())
 	    wait_time = 10L;
 #endif
+#ifdef FEAT_BEVAL
+	if (p_beval && wait_time > 100L)
+	    /* The 'balloonexpr' may indirectly invoke a callback while waiting
+	     * for a character, need to check often. */
+	    wait_time = 100L;
+#endif
 
 	/*
 	 * We want to be interrupted by the winch signal