Re: return keysyms with XIM



Hi,

>I'm input via XIM with GtkHTML. but the input character doesn't
>come up to GtkHTML. When I'm input via XIM, GdkEventKey->keyvval
>of GtkHTML returned the value GDK_VoidSymbol. so It seems GtkHTML
>couldn't transacts it.
>
>Is it right to return this value?

It seems that GDK_VoidSymbol is returned from gtk+ 1.2.x.

In gdk/gdkevents.c, it lies in the code:

   keysym = GDK_VoidSymbol;
   ...
   XmbLookupString(..., &keysym,...);

When XIM returns commit string, XmbLookupString does not allocate
any value to keysym and GdkEventKey->keyval is left GDK_VoidSymbol.

Ideally, it could be fixed in the XmbLookupString's implementation, but
as a workaround in gtk+/gnome side, gtk-html and any other applications
can be aware of the case that event->key.keyval is GDK_VoidSymbol
but event->key.string and event->key.length have some useful values
to commit text from XIM.

In the HEAD of cvs, we should patch gdk/x11/gdkevents-x11.c for
USE_XIM=true case. As far as I check, it should have the same problem.

Or, it would be great if we can encourage gtk-html to transite to new Gtk
IM Framework. 

Does it sound reasonable?

regards,
Toshi





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]