# HG changeset patch # User Jim Blandy # Date 741499472 0 # Node ID cbdf67dd68d00b3458ae09f522860da469d72a5a # Parent 877f540d9717040a5b0b68ab77770a16d06d5f0c * xterm.c (frame_highlight, frame_unhighlight): Don't test Vx_no_window_manager. BLOCK_INPUT around the border manipulation calls. diff -r 877f540d9717 -r cbdf67dd68d0 src/xterm.c --- a/src/xterm.c Thu Jul 01 03:31:58 1993 +0000 +++ b/src/xterm.c Thu Jul 01 04:04:32 1993 +0000 @@ -1245,9 +1245,14 @@ frame_highlight (frame) struct frame *frame; { - if (! EQ (Vx_no_window_manager, Qnil)) - XSetWindowBorder (x_current_display, FRAME_X_WINDOW (frame), - frame->display.x->border_pixel); + /* We used to only do this if Vx_no_window_manager was non-nil, but + the ICCCM (section 4.1.6) says that the window's border pixmap + and border pixel are window attributes which are "private to the + client", so we can always change it to whatever we want. */ + BLOCK_INPUT; + XSetWindowBorder (x_current_display, FRAME_X_WINDOW (frame), + frame->display.x->border_pixel); + UNBLOCK_INPUT; x_display_cursor (frame, 1); } @@ -1255,9 +1260,14 @@ frame_unhighlight (frame) struct frame *frame; { - if (! EQ (Vx_no_window_manager, Qnil)) - XSetWindowBorderPixmap (x_current_display, FRAME_X_WINDOW (frame), - frame->display.x->border_tile); + /* We used to only do this if Vx_no_window_manager was non-nil, but + the ICCCM (section 4.1.6) says that the window's border pixmap + and border pixel are window attributes which are "private to the + client", so we can always change it to whatever we want. */ + BLOCK_INPUT; + XSetWindowBorderPixmap (x_current_display, FRAME_X_WINDOW (frame), + frame->display.x->border_tile); + UNBLOCK_INPUT; x_display_cursor (frame, 1); } #else /* ! defined (HAVE_X11) */