GNU bug report logs -
#74590
31.0.50 [scratch/igc branch]; key input sometimes skip fcitx input method preedit box
Previous Next
Full log
View this message in rfc822 format
Setting `x-gtk-use-native-input` to `t` seems to fix the issue for me!
On Mon, Dec 2, 2024 at 4:58 PM Yikai Zhao <yikai <at> z1k.dev> wrote:
>
> On Sun, Dec 1, 2024 at 6:08 PM Pip Cet <pipcet <at> protonmail.com> wrote:
> >
> > Gerd Möllmann <gerd.moellmann <at> gmail.com> writes:
> >
> > > It probably isn't relevant because of this
> > >
> > > #ifdef HAVE_MPS
> > > void free_glib_user_data (gpointer data, GClosure *closure)
> > > {
> > > igc_xfree (data);
> > > }
> > > #else
> > > void free_glib_user_data (gpointer data, GClosure *closure)
> > > {
> > > return;
> > > }
> > > #endif
> > >
> > > Don't know where the allocation takes place.
> >
> > It's this code in gtkutil.h:
> >
> > #ifdef HAVE_MPS
> > INLINE gpointer
> > glib_user_data (void *o)
> > {
> > gpointer p = igc_xzalloc_ambig (sizeof (o));
> > memcpy (p, &o, sizeof (o));
> > return p;
> > }
> >
> > INLINE void *
> > get_glib_user_data (gpointer p)
> > {
> > return *(void **)p;
> > }
> > #else
> > INLINE gpointer
> > glib_user_data (void *o)
> > {
> > return (gpointer)o;
> > }
> >
> > INLINE void *
> > get_glib_user_data (gpointer p)
> > {
> > return (void *)p;
> > }
> > #endif
> >
> > Does that look correct to you?
> >
> > My understanding is that the GTK input method code is only used if
> > x_gtk_use_native_input is true (which we'll have to wait for the OP to
> > confirm or deny),
>
> `x-gtk-use-native-input` is nil here, if that's what you are asking.
>
> > but xg_create_frame_widgets always calls
> > gtk_im_multicontext_new, so the problem might be in the GTK code...
> >
> > Pip
> >
This bug report was last modified 110 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.