]> git.eshelyaron.com Git - emacs.git/commitdiff
(x_window, both versions): Add HAVE_X_I18N support.
authorRichard M. Stallman <rms@gnu.org>
Sun, 15 Oct 1995 15:17:33 +0000 (15:17 +0000)
committerRichard M. Stallman <rms@gnu.org>
Sun, 15 Oct 1995 15:17:33 +0000 (15:17 +0000)
src/xfns.c

index aeabb1001aea375c167a7f9720da3e0f1872573d..3c85799e800d2465c2ef060a968b1d5baf0b6ed8 100644 (file)
@@ -2581,6 +2581,28 @@ x_window (f, window_prompting, minibuffer_only)
   class_hints.res_class = EMACS_CLASS;
   XSetClassHint (FRAME_X_DISPLAY (f), XtWindow (shell_widget), &class_hints);
 
+#ifdef HAVE_X_I18N
+  { 
+    XIM xim;
+    XIC xic = NULL;
+
+    xim = XOpenIM (FRAME_X_DISPLAY (f), NULL, NULL, NULL);
+
+    if (xim)
+      {
+       xic = XCreateIC (xim,  
+                        XNInputStyle,   XIMPreeditNothing | XIMStatusNothing,
+                        XNClientWindow, FRAME_X_WINDOW(f),
+                        XNFocusWindow,  FRAME_X_WINDOW(f),
+                        NULL);
+
+       if (xic == 0)
+         XCloseIM (xim);
+      }
+    FRAME_XIC (f) = xic;
+  }
+#endif
+
   f->output_data.x->wm_hints.input = True;
   f->output_data.x->wm_hints.flags |= InputHint;
   XSetWMHints (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
@@ -2672,6 +2694,28 @@ x_window (f)
                     InputOutput, /* class */
                     FRAME_X_DISPLAY_INFO (f)->visual,
                     attribute_mask, &attributes);
+#ifdef HAVE_X_I18N
+  { 
+    XIM xim;
+    XIC xic = NULL;
+
+    xim = XOpenIM (FRAME_X_DISPLAY(f), NULL, NULL, NULL);
+
+    if (xim)
+      {
+       xic = XCreateIC (xim,  
+                        XNInputStyle,   XIMPreeditNothing | XIMStatusNothing,
+                        XNClientWindow, FRAME_X_WINDOW(f),
+                        XNFocusWindow,  FRAME_X_WINDOW(f),
+                        NULL);
+
+       if (!xic)
+         XCloseIM (xim);
+      }
+
+    FRAME_XIC (f) = xic;
+  }
+#endif
 
   validate_x_resource_name ();