diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/xdisp.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/xdisp.c b/src/xdisp.c index 1fa29343966..0d25c7f5155 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -567,6 +567,8 @@ echo_area_display () | |||
| 567 | 0, 0, 0, 0, FRAME_WIDTH (f)); | 567 | 0, 0, 0, 0, FRAME_WIDTH (f)); |
| 568 | 568 | ||
| 569 | /* If desired cursor location is on this line, put it at end of text */ | 569 | /* If desired cursor location is on this line, put it at end of text */ |
| 570 | if (cursor_in_echo_area) | ||
| 571 | FRAME_CURSOR_Y (f) = vpos; | ||
| 570 | if (FRAME_CURSOR_Y (f) == vpos) | 572 | if (FRAME_CURSOR_Y (f) == vpos) |
| 571 | FRAME_CURSOR_X (f) = FRAME_DESIRED_GLYPHS (f)->used[vpos]; | 573 | FRAME_CURSOR_X (f) = FRAME_DESIRED_GLYPHS (f)->used[vpos]; |
| 572 | 574 | ||
| @@ -2803,8 +2805,12 @@ display_text_line (w, start, vpos, hpos, taboffset) | |||
| 2803 | cursor_hpos += XFASTINT (w->left); | 2805 | cursor_hpos += XFASTINT (w->left); |
| 2804 | if (w == XWINDOW (FRAME_SELECTED_WINDOW (f))) | 2806 | if (w == XWINDOW (FRAME_SELECTED_WINDOW (f))) |
| 2805 | { | 2807 | { |
| 2806 | FRAME_CURSOR_Y (f) = cursor_vpos; | 2808 | if (!(cursor_in_echo_area && FRAME_HAS_MINIBUF_P (f) |
| 2807 | FRAME_CURSOR_X (f) = cursor_hpos; | 2809 | && EQ (FRAME_MINIBUF_WINDOW (f), minibuf_window))) |
| 2810 | { | ||
| 2811 | FRAME_CURSOR_Y (f) = cursor_vpos; | ||
| 2812 | FRAME_CURSOR_X (f) = cursor_hpos; | ||
| 2813 | } | ||
| 2808 | 2814 | ||
| 2809 | if (w == XWINDOW (selected_window)) | 2815 | if (w == XWINDOW (selected_window)) |
| 2810 | { | 2816 | { |