Commit f2be1146 authored by Gerd Moellmann's avatar Gerd Moellmann
Browse files

(XTread_socket): At the beginning of the loop, pass the

frame's X window to XFilterEvent instead of None because that's
the X window for which the IC was created.  This makes dead
accents work when the pointer is not in Emacs' frame.
(XTread_socket) <KeyPress>: Don't call XFilterEvent here.
parent 1a8eb6d5
No preview for this file type
......@@ -8881,11 +8881,16 @@ XTread_socket (sd, bufp, numchars, expected)
#ifdef HAVE_X_I18N
{
struct frame *f1 = x_any_window_to_frame (dpyinfo,
event.xclient.window);
/* The necessity of the following line took me
a full work-day to decipher from the docs!! */
if (f1 != 0 && FRAME_XIC (f1) && XFilterEvent (&event, None))
/* Filter events for the current X input method.
XFilterEvent returns non-zero if the input method has
consumed the event. We pass the frame's X window to
XFilterEvent because that's the one for which the IC
was created. */
struct frame *f1
= x_any_window_to_frame (dpyinfo, event.xclient.window);
if (f1
&& FRAME_XIC (f1)
&& XFilterEvent (&event, FRAME_X_WINDOW (f1)))
break;
}
#endif
......@@ -9318,10 +9323,6 @@ XTread_socket (sd, bufp, numchars, expected)
#ifdef HAVE_X_I18N
if (FRAME_XIC (f))
{
/* The necessity of the following line took me
a full work-day to decipher from the docs!! */
if (XFilterEvent (&event, None))
break;
nbytes = XmbLookupString (FRAME_XIC (f),
&event.xkey, copy_buffer,
80, &keysym,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment