diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/keyboard.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/keyboard.c b/src/keyboard.c index d204e904a17..8199667bf07 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -1986,8 +1986,10 @@ show_help_echo (help, window, object, pos, ok_to_overwrite_keystroke_echo) | |||
| 1986 | unbind_to (count, Qnil); | 1986 | unbind_to (count, Qnil); |
| 1987 | } | 1987 | } |
| 1988 | else | 1988 | else |
| 1989 | message (0); | 1989 | message (0); |
| 1990 | } | 1990 | } |
| 1991 | |||
| 1992 | help_echo_showing_p = STRINGP (help); | ||
| 1991 | } | 1993 | } |
| 1992 | } | 1994 | } |
| 1993 | 1995 | ||
| @@ -2171,7 +2173,10 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu) | |||
| 2171 | /* Redisplay if no pending input. */ | 2173 | /* Redisplay if no pending input. */ |
| 2172 | while (!input_pending) | 2174 | while (!input_pending) |
| 2173 | { | 2175 | { |
| 2174 | redisplay (); | 2176 | if (help_echo_showing_p && !EQ (selected_window, minibuf_window)) |
| 2177 | redisplay_preserve_echo_area (); | ||
| 2178 | else | ||
| 2179 | redisplay (); | ||
| 2175 | 2180 | ||
| 2176 | if (!input_pending) | 2181 | if (!input_pending) |
| 2177 | /* Normal case: no input arrived during redisplay. */ | 2182 | /* Normal case: no input arrived during redisplay. */ |