In bug 1176954, TabParent becomes to put off sending notifications until all sending events are *received* in the child process. However, this may cause TabParent sending notification with the previous sending event's result. So, TabChild should notify TabParent after dispatching the event, probably. I think that OnEventNeedingAckReceived() should be renamed to OnEventNeedingAckHandled().
But anything may happen while dispatching widgetevent. Is IME handlind ready for that? I thought SendOnEventNeedingAckReceived was really about "hey, I got the data and will now process it". So yes, if we do this change, OnEventNeedingAckHandled sounds better.
> But anything may happen while dispatching widgetevent. Is IME handlind ready for that? If there is pending notifications, IMe shouldn't be ready since the notifications are computed with the content which isn't changed at the dispatching event. For example, if an event will add a character to the composition string and move the caret after it, IME expects the selection offset at the end of new composition string. However, if we notify IME of pending selection change before handling that, we notify IME of previous composition string's last offset which is same as the expected offset - 1. This may make IME confused.
url: https://hg.mozilla.org/integration/mozilla-inbound/rev/0a0292a63ef041a3655638cc5e0204946c523813 changeset: 0a0292a63ef041a3655638cc5e0204946c523813 user: Masayuki Nakano <firstname.lastname@example.org> date: Wed Jul 22 14:51:36 2015 +0900 description: Bug 1185316 TabParent should flush pending IME notifications after child process handles all sending events r=smaug
Masayuki Nakano [:masayuki] (he/him)(JST, +0900)(Still struggling with the pain, but becoming better)Assignee
4 years ago
You need to log in before you can comment on or make changes to this bug.