summaryrefslogtreecommitdiff
path: root/src/dispnew.c
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1995-06-28 09:38:18 +0000
committerRichard M. Stallman <rms@gnu.org>1995-06-28 09:38:18 +0000
commitdd7b629d27ded3acdc14db6ff19b0b4aa50e3d80 (patch)
treef5635123604f9b7f75566e29c6da38a897c3604f /src/dispnew.c
parent8e3565cffb4e9e29843de19faa34d990839395b3 (diff)
downloademacs-dd7b629d27ded3acdc14db6ff19b0b4aa50e3d80.tar.gz
(update_frame): Pretend cursor is in echo area
rather than put it in a minuffer hidden by the echo area.
Diffstat (limited to 'src/dispnew.c')
-rw-r--r--src/dispnew.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/dispnew.c b/src/dispnew.c
index 48d5fd04f3d..953527b4377 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -1327,9 +1327,14 @@ update_frame (f, force, inhibit_hairy_id)
/* Now just clean up termcap drivers and set cursor, etc. */
if (!pause)
{
- if (cursor_in_echo_area
- && FRAME_HAS_MINIBUF_P (f)
- && EQ (FRAME_MINIBUF_WINDOW (f), minibuf_window))
+ if ((cursor_in_echo_area
+ && FRAME_HAS_MINIBUF_P (f)
+ && EQ (FRAME_MINIBUF_WINDOW (f), minibuf_window))
+ /* If we are showing a message instead of the minibuffer,
+ show the cursor for the message instead of for the
+ (now hidden) minibuffer contents. */
+ || (EQ (minibuf_window, selected_window)
+ && echo_area_glyphs != 0))
{
int top = XINT (XWINDOW (FRAME_MINIBUF_WINDOW (f))->top);
int row, col;