From df0b5ea16eff7eeefe0b9c2c6f675b81a49eb212 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Sun, 2 Oct 1994 02:41:24 +0000 Subject: [PATCH] (redisplay_window): If we set PT, and that alters a region being displayed, call try_window again. --- src/xdisp.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/xdisp.c b/src/xdisp.c index b78da7692ad..1eddfd23c39 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -1148,7 +1148,6 @@ redisplay_window (window, just_this_one) try_window (window, startp); if (cursor_vpos < 0) { - /* ??? What should happen here if highlighting a region? */ /* If point does not appear, move point so it does appear */ pos = *compute_motion (startp, 0, ((EQ (window, minibuf_window) && startp == 1) @@ -1168,6 +1167,12 @@ redisplay_window (window, just_this_one) FRAME_CURSOR_X (f) = max (0, pos.hpos) + XFASTINT (w->left); FRAME_CURSOR_Y (f) = pos.vpos + XFASTINT (w->top); } + /* If we are highlighting the region, + then we just changed the region, so redisplay to show it. */ + cancel_my_columns (XWINDOW (window)); + if (!NILP (Vtransient_mark_mode) + && !NILP (current_buffer->mark_active)) + try_window (window, startp); } goto done; }