changeset 40937:a06aa746ba83

(XTread_socket): Don't update focus for EnterNotify or LeaveNotify events. Only FocusIn and FocusOut do that now. (x_display_and_set_cursor): Do display hollow cursors in active minibuffer windows when they are not selected.
author Richard M. Stallman <rms@gnu.org>
date Mon, 12 Nov 2001 05:35:02 +0000
parents 502ce3b46535
children 4c041aad3b43
files src/xterm.c
diffstat 1 files changed, 8 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/xterm.c	Sun Nov 11 20:15:03 2001 +0000
+++ b/src/xterm.c	Mon Nov 12 05:35:02 2001 +0000
@@ -10669,6 +10669,7 @@
 	      {
 		f = x_any_window_to_frame (dpyinfo, event.xcrossing.window);
 
+#if 0
 		if (event.xcrossing.focus)
 		  {
 		    /* Avoid nasty pop/raise loops.  */
@@ -10682,7 +10683,8 @@
 		  }
 		else if (f == dpyinfo->x_focus_frame)
 		  x_new_focus_frame (dpyinfo, 0);
-	      
+#endif
+
 		/* EnterNotify counts as mouse movement,
 		   so update things that depend on mouse position.  */
 		if (f && !f->output_data.x->hourglass_p)
@@ -10746,15 +10748,18 @@
 		      bufp += n, count += n, numchars -= n;
 		    }
 
+#if 0
 		  if (event.xcrossing.focus)
 		    x_mouse_leave (dpyinfo);
 		  else
 		    {
 		      if (f == dpyinfo->x_focus_event_frame)
 			dpyinfo->x_focus_event_frame = 0;
-		      if (f == dpyinfo->x_focus_frame)
+		      if (dpyinfo->x_focus_event_frame != 0
+			  && f == dpyinfo->x_focus_frame)
 			x_new_focus_frame (dpyinfo, 0);
 		    }
+#endif
 		}
 	      goto OTHER;
 
@@ -11516,7 +11521,7 @@
       if (f != FRAME_X_DISPLAY_INFO (f)->x_highlight_frame
 	  || w != XWINDOW (f->selected_window))
 	{
-	  if (MINI_WINDOW_P (w)
+	  if ((MINI_WINDOW_P (w) && minibuf_level == 0)
 	      || !cursor_non_selected
 	      || NILP (XBUFFER (w->buffer)->cursor_type))
 	    new_cursor_type = NO_CURSOR;