emacs-diffs
[Top][All Lists]
Advanced

[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.  */




reply via email to

[Prev in Thread] Current Thread [Next in Thread]