summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKarl Heuer <kwzh@gnu.org>1994-04-28 07:59:17 +0000
committerKarl Heuer <kwzh@gnu.org>1994-04-28 07:59:17 +0000
commit10c5e63d2373803e1bbf52217c6e65527c09283f (patch)
treee6d4531120cc0c4c850dd82e203de14d771b0450 /src
parent245976082f70cec14f02b8963ebe73404a99bab2 (diff)
downloademacs-10c5e63d2373803e1bbf52217c6e65527c09283f.tar.gz
(XTread_socket): Only top window cares about LeaveNotify.
Diffstat (limited to 'src')
-rw-r--r--src/xterm.c40
1 files changed, 21 insertions, 19 deletions
diff --git a/src/xterm.c b/src/xterm.c
index f35d3be6e5d..b8e410f8f30 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -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;