/[emacs]/emacs/src/xfns.c
ViewVC logotype

Diff of /emacs/src/xfns.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.578 by fx, Tue Apr 1 10:04:38 2003 UTC revision 1.579 by fx, Wed May 21 22:12:15 2003 UTC
# Line 2120  static XFontSet xic_create_xfontset P_ ( Line 2120  static XFontSet xic_create_xfontset P_ (
2120  static XIMStyle best_xim_style P_ ((XIMStyles *, XIMStyles *));  static XIMStyle best_xim_style P_ ((XIMStyles *, XIMStyles *));
2121    
2122    
2123  /* Supported XIM styles, ordered by preferenc.  */  /* Supported XIM styles, ordered by preference.  */
2124    
2125  static XIMStyle supported_xim_styles[] =  static XIMStyle supported_xim_styles[] =
2126  {  {
# Line 2578  x_window (f, window_prompting, minibuffe Line 2578  x_window (f, window_prompting, minibuffe
2578    
2579  #ifdef HAVE_X_I18N  #ifdef HAVE_X_I18N
2580    FRAME_XIC (f) = NULL;    FRAME_XIC (f) = NULL;
2581  #ifdef USE_XIM    if (use_xim)
2582    create_frame_xic (f);      create_frame_xic (f);
 #endif  
2583  #endif  #endif
2584    
2585    f->output_data.x->wm_hints.input = True;    f->output_data.x->wm_hints.input = True;
# Line 2657  x_window (f) Line 2656  x_window (f)
2656    
2657  #ifdef HAVE_X_I18N  #ifdef HAVE_X_I18N
2658    FRAME_XIC (f) = NULL;    FRAME_XIC (f) = NULL;
2659  #ifdef USE_XIM  if (use_xim)
2660    BLOCK_INPUT;    {
2661    create_frame_xic (f);      BLOCK_INPUT;
2662    if (FRAME_XIC (f))      create_frame_xic (f);
2663      {      if (FRAME_XIC (f))
2664        /* XIM server might require some X events. */        {
2665        unsigned long fevent = NoEventMask;          /* XIM server might require some X events. */
2666        XGetICValues(FRAME_XIC (f), XNFilterEvents, &fevent, NULL);          unsigned long fevent = NoEventMask;
2667            XGetICValues(FRAME_XIC (f), XNFilterEvents, &fevent, NULL);
2668        if (fevent != NoEventMask)  
2669          {          if (fevent != NoEventMask)
2670            XSetWindowAttributes attributes;            {
2671            XWindowAttributes wattr;              XSetWindowAttributes attributes;
2672            unsigned long attribute_mask;              XWindowAttributes wattr;
2673                unsigned long attribute_mask;
2674            XGetWindowAttributes (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),  
2675                                  &wattr);              XGetWindowAttributes (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
2676            attributes.event_mask = wattr.your_event_mask | fevent;                                    &wattr);
2677            attribute_mask = CWEventMask;              attributes.event_mask = wattr.your_event_mask | fevent;
2678            XChangeWindowAttributes (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),              attribute_mask = CWEventMask;
2679                                     attribute_mask, &attributes);              XChangeWindowAttributes (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
2680          }                                       attribute_mask, &attributes);
2681      }            }
2682    UNBLOCK_INPUT;        }
2683  #endif      UNBLOCK_INPUT;
2684      }
2685  #endif  #endif
2686  }  }
2687    
# Line 2721  x_window (f) Line 2721  x_window (f)
2721                       attribute_mask, &attributes);                       attribute_mask, &attributes);
2722    
2723  #ifdef HAVE_X_I18N  #ifdef HAVE_X_I18N
2724  #ifdef USE_XIM    if use_xim
   create_frame_xic (f);  
   if (FRAME_XIC (f))  
2725      {      {
2726        /* XIM server might require some X events. */        create_frame_xic (f);
2727        unsigned long fevent = NoEventMask;        if (FRAME_XIC (f))
2728        XGetICValues(FRAME_XIC (f), XNFilterEvents, &fevent, NULL);          {
2729        attributes.event_mask |= fevent;            /* XIM server might require some X events. */
2730        attribute_mask = CWEventMask;            unsigned long fevent = NoEventMask;
2731        XChangeWindowAttributes (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),            XGetICValues(FRAME_XIC (f), XNFilterEvents, &fevent, NULL);
2732                                 attribute_mask, &attributes);            attributes.event_mask |= fevent;
2733              attribute_mask = CWEventMask;
2734              XChangeWindowAttributes (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
2735                                       attribute_mask, &attributes);
2736            }
2737      }      }
 #endif  
2738  #endif /* HAVE_X_I18N */  #endif /* HAVE_X_I18N */
2739    
2740    validate_x_resource_name ();    validate_x_resource_name ();

Legend:
Removed from v.1.578  
changed lines
  Added in v.1.579

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26