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_win32.c b/src/os_win32.c
index adbb199..a304842 100644
--- a/src/os_win32.c
+++ b/src/os_win32.c
@@ -1467,6 +1467,12 @@
 		    dwWaitTime = 10;
 	    }
 #endif
+#ifdef FEAT_BEVAL
+	    if (p_beval && dwWaitTime > 100)
+		/* The 'balloonexpr' may indirectly invoke a callback while
+		 * waiting for a character, need to check often. */
+		dwWaitTime = 100;
+#endif
 #ifdef FEAT_MZSCHEME
 	    if (mzthreads_allowed() && p_mzq > 0
 				    && (msec < 0 || (long)dwWaitTime > p_mzq))