summaryrefslogtreecommitdiffstats
path: root/src/popupwin.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-09-01 16:00:53 +0100
committerBram Moolenaar <Bram@vim.org>2022-09-01 16:00:53 +0100
commit7d7ad7b2e8c6403033fbdb083f092321c0ccbfaf (patch)
tree4dc8f66a97862870b7d09ac390e75f0912b046e1 /src/popupwin.c
parentbe807d582499acbe314ead3891481cba6ca136df (diff)
patch 9.0.0350: :echowindow does not work in a compiled functionv9.0.0350
Problem: :echowindow does not work in a compiled function. Solution: Handle the expression at compile time.
Diffstat (limited to 'src/popupwin.c')
-rw-r--r--src/popupwin.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/popupwin.c b/src/popupwin.c
index 8292dba32e..72d3878799 100644
--- a/src/popupwin.c
+++ b/src/popupwin.c
@@ -4529,6 +4529,31 @@ popup_hide_message_win(void)
popup_hide(message_win);
}
+/*
+ * Invoked before outputting a message for ":echowindow".
+ */
+ void
+start_echowindow(void)
+{
+ in_echowindow = TRUE;
+}
+
+/*
+ * Invoked after outputting a message for ":echowindow".
+ */
+ void
+end_echowindow(void)
+{
+ // show the message window now
+ redraw_cmd(FALSE);
+
+ // do not overwrite messages
+ // TODO: only for message window
+ msg_didout = TRUE;
+ if (msg_col == 0)
+ msg_col = 1;
+ in_echowindow = FALSE;
+}
#endif
/*