summaryrefslogtreecommitdiff
path: root/src/xdisp.c
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1996-09-02 05:19:13 +0000
committerRichard M. Stallman <rms@gnu.org>1996-09-02 05:19:13 +0000
commitb5d427744a1403a68e55c6597ea1faed12b43753 (patch)
treef41f9ecee2fea538242c553da537da21ebb7b58e /src/xdisp.c
parentcad039a5fefd691cbf8362d49cf7c35dd1bd3a53 (diff)
downloademacs-b5d427744a1403a68e55c6597ea1faed12b43753.tar.gz
(redisplay_internal): Test last_selected_window slot.
(mark_window_display_accurate, display_text_line): Likewise.
Diffstat (limited to 'src/xdisp.c')
-rw-r--r--src/xdisp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index 4af129f7ca4..ab78039032c 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -1023,6 +1023,7 @@ redisplay_internal (preserve_echo_area)
then we can't just move the cursor. */
else if (! (!NILP (Vtransient_mark_mode)
&& !NILP (current_buffer->mark_active))
+ && w == XWINDOW (current_buffer->last_selected_window)
&& NILP (w->region_showing)
&& !cursor_in_echo_area)
{
@@ -1279,6 +1280,7 @@ mark_window_display_accurate (window, flag)
/* Record if we are showing a region, so can make sure to
update it fully at next redisplay. */
w->region_showing = (!NILP (Vtransient_mark_mode)
+ && w == XWINDOW (current_buffer->last_selected_window)
&& !NILP (XBUFFER (w->buffer)->mark_active)
? Fmarker_position (XBUFFER (w->buffer)->mark)
: Qnil);
@@ -2557,7 +2559,8 @@ display_text_line (w, start, vpos, hpos, taboffset)
/* 1 if we should highlight the region. */
int highlight_region
- = !NILP (Vtransient_mark_mode) && !NILP (current_buffer->mark_active);
+ = (!NILP (Vtransient_mark_mode) && !NILP (current_buffer->mark_active)
+ && XWINDOW (current_buffer->last_selected_window) == w);
int region_beg, region_end;
int selective = (INTEGERP (current_buffer->selective_display)