[SCIM] gtk IM & reset ...
michael meeks
mmeeks at novell.com
Tue Dec 14 04:27:49 PST 2004
Hi,
On Tue, 2004-12-14 at 00:54 +0800, Zhe Su wrote:
> I found that when using gtk immodule, OOo will not ignore the key
> release events which have no corresponding key press events.
Yes - good catch - we've fixed this bug in OO.o :-) [ or at least, IMHO
this is a rather hyper-ugly side-effect of the way gtk+ works, but we
have worked around it in OO.o ].
> I think this should be fix in OOo side, because other apps don't
> have such behaviour.
Sure - the reset method is also critical to us though.
> On Tue, 14 Dec 2004 00:31:55 +0800, Zhe Su <james.su at gmail.com> wrote:
> > Hi,
> > So, which input method engine are you using? scim gtk immodule
> > itself should have no problem. The code is ok.
I'm using the scim gtk2 input module. If, as you say the code is OK -
can you explain why: when we invoke this backend module reset, we do not
get the callback sequence that is expected, and we get with the
(canonical) xim input method; that sequence is (as per
gtkimcontextxim.c):
> > > Contrast this to:
> > >
> > > gtk+/modules/input/gtkimcontextxim.cxx (gtk_im_context_xim_reset):
> > >
> > > Which explicitely emits a 'Preedit End' type sequence: ie. a commit
> > > followed by a 'preedit_changed' to a 0 length string.
This:
static void
gtk_im_context_xim_reset (GtkIMContext *context)
{
...
if (result)
{
char *result_utf8 = mb_to_utf8 (context_xim, result);
if (result_utf8)
{
g_signal_emit_by_name (context, "commit", result_utf8);
g_free (result_utf8);
}
}
if (context_xim->preedit_length)
{
context_xim->preedit_length = 0;
g_signal_emit_by_name (context, "preedit_changed");
}
XFree (result);
}
There seems to be no equivalent in scim & this causes problems.
> > > Am I mis-understanding something ? or is this broken ? also - it
> > > appears the download page for scim is defunct:
> > >
> > > The links from here
> > > http://www.freedesktop.org/wiki/Software_2fScimDownload
also - it'd be really nice if this started working again - I guess,
more people than I have not been able to download any of the scim
source:
http://freedesktop.org/~suzhe/sources/scim-1.0.1.tar.gz
Yields:
Not Found
The requested URL /~suzhe/sources/scim-1.0.1.tar.gz was
not found on this server.
Thanks,
Michael.
--
michael.meeks at novell.com <><, Pseudo Engineer, itinerant idiot
More information about the scim
mailing list