[GTK] Failed to handle composition start signal which is sent immediately after setting IME focus
Categories
(Core :: DOM: UI Events & Focus Handling, defect, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox99 | --- | fixed |
People
(Reporter: masayuki, Assigned: masayuki)
References
Details
(Keywords: inputmethod)
Attachments
(2 files)
On Linux, IME may start composition immediately after getting focus and keep it until blur. In this case, IMContextWrapper fails to handle starting composition because ContentCacheInParent returns error for any query.
| Assignee | ||
Comment 1•4 years ago
|
||
While I'm debugging bug 1735227, I found this bug. And for the debugging,
current IMEContentObserver's logging was not enough. Therefore, I wrote
this patch first.
Note that IMEContentObserver:: is not necessary in the log because it's
log module name is IMEContentObserver, therefore, it appears twice in
each line under current log format. Therefore, this patch removes it.
Additionally, I moved "position change" notification handling to "verbose"
because it's really noisy in web apps which update its content automatically
like SNS. So, IMEContentObserver:4,sync is useful in most cases, but can
see the detail with IMEContentObserver:5,sync.
Depends on D137522
| Assignee | ||
Comment 2•4 years ago
|
||
Currently, it sets "input-purpose" and "input-hints" and notify IME of focus
at updating InputContext. This occurs before receiving NOTIFY_IME_OF_FOCUS.
Therefore, at the moment, IMContextWrapper cannot access content cache, but
IME may query it. E.g., IME may start composition immediately
(ibus-pinyin 1.5.0-6 does it).
For avoiding the trouble, IMContextWrapper should notify IME of focus when
and only when it receives NOTIFY_IME_OF_FOCUS.
Depends on D137609
Comment 4•4 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/e6a334638505
https://hg.mozilla.org/mozilla-central/rev/1ecdb0291382
Description
•