[immodule-qt] Slave qt immodule support and dead key issue
liucougar at gmail.com
Sat Jul 17 19:38:34 EEST 2004
Thanks for your work
My comment about this patch:
I think inputMethodName() is no better than the original name(),
because as you know in uim-qimm, that is input method name, but in
scim-qtimm, there is only one name "SCIM", so I think a more generic
name() function is better ;)
1. maybe we should take x11FilterEvent into account too, for some
inputcontext uses it rather than filterEvent (such as the latest
2. connect signal imEventGenerated to multicontext signal
imEventGenerated directly would be better
On Sat, 17 Jul 2004 19:43:48 +0900, YamaKen <yamaken at bp.iij4u.or.jp> wrote:
> At Fri, 16 Jul 2004 16:18:15 +0000,
> liucougar at gmail.com wrote:
> > On Sat, 17 Jul 2004 00:26:03 +0900, YamaKen <yamaken at bp.iij4u.or.jp> wrote:
> > > I also agree with you. But I've found a API design error that
> > > prevents implementing slave context.
> > >
> > > The problem is the tight relationship between QWidget and
> > > QInputContext via QIMEvent and focusWidget. Current
> > > implementation is preventing multiplexing and proxying plural
> > > contexts. The problem is also preventing implementing an
> > > im-switcher that switches between qt-immodules (like
> > > gtkimmulticontext).
> > Yes, I think this is the real problem too. Maybe we need another proxy
> > abstract level?
> I think that the API should be modified to enable ordinary proxy
> > > I'm investigating how to resolve it.
> > What's your idea?
> I've written an experimental patch and immodule-switcher. Please
> review attached patch. The changes are following.
> 1. Use signal to deliver QIMEvent instead of explicit
> postEvent(). This enables QIMEvent proxying and better
> platform abstraction. Corresponding slot is created as
> 2. Move some methods of QInputContext to public from protected
> or private. This enables that proxy-IM can access slave
> 3. Make some methods of QInputContext virtual. This enables
> overriding the methods as proxy
> This patch does not break binary compatibility from vanilla Qt3.
> But it costs immodule developer small modification. See second
> patch for QtUim as example.
> Since QMultiInputContext is just a prototype implementation, I
> hope that someone completes it as usable :)
> YamaKen yamaken at bp.iij4u.or.jp
More information about the immodule-qt