From 0a1788157b921f8a0b3d1819a8ba716806fa15ca Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Wed, 27 Apr 1994 08:27:00 +0000 Subject: [PATCH] (XTread_socket, case ClientMessage): Don't call XSetInputFocus if event is not for an existing frame. (XTread_socket) [USE_X_TOOLKIT]: Never pass motion events to the toolkit. --- src/xterm.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/xterm.c b/src/xterm.c index f7a31f63f85..cb43d39308e 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -3398,13 +3398,10 @@ XTread_socket (sd, bufp, numchars, waitp, expected) if (event.xclient.data.l[0] == Xatom_wm_take_focus) { f = x_window_to_frame (event.xclient.window); -#if 0 /* x_focus_on_frame is a no-op anyway. */ + /* Since we set WM_TAKE_FOCUS, we must call + XSetInputFocus explicitly. But not if f is null, + since that might be an event for a deleted frame. */ if (f) - x_focus_on_frame (f); - else -#endif - /* Since we set WM_TAKE_FOCUS, we must call - XSetInputFocus explicitly. */ XSetInputFocus (event.xclient.display, event.xclient.window, RevertToPointerRoot, @@ -4012,9 +4009,14 @@ XTread_socket (sd, bufp, numchars, waitp, expected) clear_mouse_face (); } } +#if 0 /* This should be unnecessary, since the toolkit has no use + for motion events that happen outside of the menu event loop, + and it seems to cause the bug that mouse events stop coming + after a while. */ #ifdef USE_X_TOOLKIT goto OTHER; #endif /* USE_X_TOOLKIT */ +#endif break; case ConfigureNotify: -- 2.39.5