aboutsummaryrefslogtreecommitdiffstats
path: root/src/xterm.c
diff options
context:
space:
mode:
authorKarl Heuer1994-04-28 07:59:17 +0000
committerKarl Heuer1994-04-28 07:59:17 +0000
commit10c5e63d2373803e1bbf52217c6e65527c09283f (patch)
treee6d4531120cc0c4c850dd82e203de14d771b0450 /src/xterm.c
parent245976082f70cec14f02b8963ebe73404a99bab2 (diff)
downloademacs-10c5e63d2373803e1bbf52217c6e65527c09283f.tar.gz
emacs-10c5e63d2373803e1bbf52217c6e65527c09283f.zip
(XTread_socket): Only top window cares about LeaveNotify.
Diffstat (limited to 'src/xterm.c')
-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)
3913 3913
3914 3914
3915 case LeaveNotify: 3915 case LeaveNotify:
3916 f = x_any_window_to_frame (event.xcrossing.window); 3916 f = x_top_window_to_frame (event.xcrossing.window);
3917 3917 if (f)
3918 if (f == mouse_face_mouse_frame)
3919 /* If we move outside the frame,
3920 then we're certainly no longer on any text in the frame. */
3921 clear_mouse_face ();
3922
3923 if (event.xcrossing.focus)
3924 {
3925 if (! x_focus_event_frame)
3926 x_new_focus_frame (0);
3927 else
3928 x_new_focus_frame (f);
3929 }
3930 else
3931 { 3918 {
3932 if (f == x_focus_event_frame) 3919 if (f == mouse_face_mouse_frame)
3933 x_focus_event_frame = 0; 3920 /* If we move outside the frame,
3934 if (f == x_focus_frame) 3921 then we're certainly no longer on any text in the frame. */
3935 x_new_focus_frame (0); 3922 clear_mouse_face ();
3923
3924 if (event.xcrossing.focus)
3925 {
3926 if (! x_focus_event_frame)
3927 x_new_focus_frame (0);
3928 else
3929 x_new_focus_frame (f);
3930 }
3931 else
3932 {
3933 if (f == x_focus_event_frame)
3934 x_focus_event_frame = 0;
3935 if (f == x_focus_frame)
3936 x_new_focus_frame (0);
3937 }
3936 } 3938 }
3937#ifdef USE_X_TOOLKIT 3939#ifdef USE_X_TOOLKIT
3938 goto OTHER; 3940 goto OTHER;