DO NOT REPLY TO THIS MESSAGE.  INSTEAD, POST ANY RESPONSES TO THE LINK BELOW.

[STR New]

Link: http://www.fltk.org/str.php?L2599
Version: 1.3-feature


I've had a look at things and it seems that fcitx doesn't like it when you
call Xutf8LookupString() before XFilterEvent().

The XIM API is a bit undocumented and seem to be governed by defacto
standards and best practices. I did however find this guide from SGI:

http://menehune.opt.wfu.edu/Kokua/Irix_6.5.21_doc_cd/usr/share/Insight/library/SGI_bookshelves/SGI_Developer/books/XLib_PG/sgi_html/ch11.html

Given this, I'd be hard pressed to say that fcitx is buggy and what we're
doing here should be allowed. There is also the fact that XIM leaves room
for things like popping up extra windows, having mouse interactions and
whatnot...

In conclusion, I think the model I was aiming for is impossible to
implement. The input method stuff is designed on the assumption that the
application is only interested in what text to insert. That assumption is
of course wrong here. So time for plan B. I have two ideas:

1. Implement a hook system in FLTK where applications get an opportunity
to handle platform events before FLTK. Then our application can try to
sort this out in its own custom way and FLTK will just be told to ignore
some events (similar to how XFilterEvent() works).

2. Add functionality so that we can tell FLTK that we do not want fancy IM
stuff for a certain widget, and FLTK will as a result only deliver simple
key events for that widget.

I'm going to make an attempt at #2 as that allows other people to benefit
from our work, and it might make it easier to solve and side issues that
occur when you're avoiding input methods now and then.


Link: http://www.fltk.org/str.php?L2599
Version: 1.3-feature

_______________________________________________
fltk-dev mailing list
fltk-dev@easysw.com
http://lists.easysw.com/mailman/listinfo/fltk-dev

Reply via email to