[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/xfns.c
From: |
Jan Djärv |
Subject: |
[Emacs-diffs] Changes to emacs/src/xfns.c |
Date: |
Sat, 25 Jan 2003 11:25:39 -0500 |
Index: emacs/src/xfns.c
diff -c emacs/src/xfns.c:1.570 emacs/src/xfns.c:1.571
*** emacs/src/xfns.c:1.570 Sun Jan 19 16:50:02 2003
--- emacs/src/xfns.c Sat Jan 25 11:25:38 2003
***************
*** 4039,4044 ****
--- 4039,4073 ----
{
if (! xg_create_frame_widgets (f))
error ("Unable to create window");
+
+ #ifdef HAVE_X_I18N
+ FRAME_XIC (f) = NULL;
+ #ifdef USE_XIM
+ BLOCK_INPUT;
+ create_frame_xic (f);
+ if (FRAME_XIC (f))
+ {
+ /* XIM server might require some X events. */
+ unsigned long fevent = NoEventMask;
+ XGetICValues(FRAME_XIC (f), XNFilterEvents, &fevent, NULL);
+
+ if (fevent != NoEventMask)
+ {
+ XSetWindowAttributes attributes;
+ XWindowAttributes wattr;
+ unsigned long attribute_mask;
+
+ XGetWindowAttributes (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
+ &wattr);
+ attributes.event_mask = wattr.your_event_mask | fevent;
+ attribute_mask = CWEventMask;
+ XChangeWindowAttributes (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
+ attribute_mask, &attributes);
+ }
+ }
+ UNBLOCK_INPUT;
+ #endif
+ #endif
}
#else /*! USE_GTK */
***************
*** 11761,11767 ****
{
XEvent event;
XtAppNextEvent (Xt_app_con, &event);
! x_dispatch_event (&event, FRAME_X_DISPLAY (f) );
}
/* Get the result. */
--- 11790,11796 ----
{
XEvent event;
XtAppNextEvent (Xt_app_con, &event);
! (void) x_dispatch_event (&event, FRAME_X_DISPLAY (f) );
}
/* Get the result. */