]> git.eshelyaron.com Git - emacs.git/commitdiff
(XTread_socket): Only top window cares about LeaveNotify.
authorKarl Heuer <kwzh@gnu.org>
Thu, 28 Apr 1994 07:59:17 +0000 (07:59 +0000)
committerKarl Heuer <kwzh@gnu.org>
Thu, 28 Apr 1994 07:59:17 +0000 (07:59 +0000)
src/xterm.c

index f35d3be6e5dc5dff57440ff7b2baf2e1c683f280..b8e410f8f30e1bfc2b51451dd92972795228cd6c 100644 (file)
@@ -3913,26 +3913,28 @@ XTread_socket (sd, bufp, numchars, waitp, expected)
 
 
        case LeaveNotify:
-         f = x_any_window_to_frame (event.xcrossing.window);
-
-         if (f == mouse_face_mouse_frame)
-           /* If we move outside the frame,
-              then we're certainly no longer on any text in the frame.  */
-           clear_mouse_face ();
-
-         if (event.xcrossing.focus)
-           {
-             if (! x_focus_event_frame)
-               x_new_focus_frame (0);
-             else
-               x_new_focus_frame (f);
-           }
-         else 
+         f = x_top_window_to_frame (event.xcrossing.window);
+         if (f)
            {
-             if (f == x_focus_event_frame)
-               x_focus_event_frame = 0;
-             if (f == x_focus_frame)
-               x_new_focus_frame (0);
+             if (f == mouse_face_mouse_frame)
+               /* If we move outside the frame,
+                  then we're certainly no longer on any text in the frame.  */
+               clear_mouse_face ();
+
+             if (event.xcrossing.focus)
+               {
+                 if (! x_focus_event_frame)
+                   x_new_focus_frame (0);
+                 else
+                   x_new_focus_frame (f);
+               }
+             else 
+               {
+                 if (f == x_focus_event_frame)
+                   x_focus_event_frame = 0;
+                 if (f == x_focus_frame)
+                   x_new_focus_frame (0);
+               }
            }
 #ifdef USE_X_TOOLKIT
          goto OTHER;