Closed
Bug 1211352
Opened 9 years ago
Closed 9 years ago
[e10s][IMM] composition string on windowless plugin should be positioned at left-bottom of the plugin
Categories
(Core :: DOM: UI Events & Focus Handling, defect)
Tracking
()
RESOLVED
FIXED
mozilla44
People
(Reporter: masayuki, Assigned: masayuki)
Details
(Keywords: flashplayer, inputmethod)
Attachments
(5 files)
11.34 KB,
patch
|
smaug
:
review+
|
Details | Diff | Splinter Review |
4.81 KB,
patch
|
m_kato
:
review+
|
Details | Diff | Splinter Review |
5.37 KB,
patch
|
m_kato
:
review+
|
Details | Diff | Splinter Review |
2.74 KB,
patch
|
m_kato
:
review+
|
Details | Diff | Splinter Review |
5.10 KB,
patch
|
m_kato
:
review+
|
Details | Diff | Splinter Review |
In e10s mode, we don't cache editor rect (windowless plugin rect) in ContentCacheInParent. Therefore, IMMHandler cannot set the composing window to the left-bottom of the plugin rect.
Assignee | ||
Comment 1•9 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=750c72c13a79
Assignee | ||
Comment 2•9 years ago
|
||
The main purpose of this fix is, the focused plugin rect is cached in ContentCacheInParent as focused editor rect. For that, we need to send the rect at: * a plugin gets focus * the plugin is scrolled or window moved For computing the plugin rect, we need to use eQueryEditorRect at enough safe time. So, using IMEContentObserver should be the best approach. My plan is, while a plugin has focus, IMEContentObserver should be created without nsIEditor. And it should notify widget of focus, blur and position change. This patch allows to create IMEContentObserver instance when input context's IME enabled state is 'PLUGIN'.
Attachment #8670070 -
Flags: review?(bugs)
Assignee | ||
Comment 3•9 years ago
|
||
PuppetWidget shouldn't send ContentCache as a notification if it's not wanted by the parent process's widget. And TabParent doesn't need to check it. At text change notification, we've already used this approach.
Attachment #8670078 -
Flags: review?(m_kato)
Assignee | ||
Comment 4•9 years ago
|
||
For reducing unnecessary run-time cost, i.e., preventing notifications from content while a plugin has focus, all native IME handlers should return nsIMEUpdatePreference() when the IME enabled state of the input context is PLUGIN.
Attachment #8670079 -
Flags: review?(m_kato)
Assignee | ||
Comment 5•9 years ago
|
||
While a plugin has focus, only PuupetWidget should request position change notification for updating the ContentCacheInParent::mEditorRect.
Attachment #8670080 -
Flags: review?(m_kato)
Assignee | ||
Comment 6•9 years ago
|
||
PuppetWidget should ignore unnecessary notification with outputting warnings. Except not outputting warnings part, this change just makes the code safer.
Attachment #8670082 -
Flags: review?(m_kato)
Assignee | ||
Updated•9 years ago
|
Attachment #8670079 -
Attachment description: nsIWidget::GetIMEupdatePreference() for each platform should not request any notifications while a plugin has focus → part.3 nsIWidget::GetIMEupdatePreference() for each platform should not request any notifications while a plugin has focus
Assignee | ||
Comment 7•9 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=2ad1b9d9aae9
Updated•9 years ago
|
tracking-e10s:
--- → +
Updated•9 years ago
|
Attachment #8670078 -
Flags: review?(m_kato) → review+
Updated•9 years ago
|
Attachment #8670079 -
Flags: review?(m_kato) → review+
Updated•9 years ago
|
Attachment #8670080 -
Flags: review?(m_kato) → review+
Updated•9 years ago
|
Attachment #8670082 -
Flags: review?(m_kato) → review+
Updated•9 years ago
|
Attachment #8670070 -
Flags: review?(bugs) → review+
Assignee | ||
Comment 8•9 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/e889d9abef34debbb7d09b4e187047bf2febece8 Bug 1211352 part.1 IMEContentObserver should be created when a plugin has focus r=smaug https://hg.mozilla.org/integration/mozilla-inbound/rev/d6fbe14c354aac2711fbd71df40c70901557da03 Bug 1211352 part.2 PuppetWidget shouldn't send notifications which are not wanted by the parent process r=m_kato https://hg.mozilla.org/integration/mozilla-inbound/rev/4724d4f02b571d73c3571823b53c3ed97794466a Bug 1211352 part.3 nsIWidget::GetIMEupdatePreference() for each platform should not request any notifications while a plugin has focus r=m_kato https://hg.mozilla.org/integration/mozilla-inbound/rev/26b4afb254c21a417736ed9215a406eaa4cecf5e Bug 1211352 part.4 PuppetWidget::GetIMEUpdatePreference() should request only position change notifications while a plugin has focus r=m_kato https://hg.mozilla.org/integration/mozilla-inbound/rev/4381d0272963eefc9fc7667895809e5956401d41 Bug 1211352 part.5 PuppetWidget should cache only the focused editor rect information while a plugin has focus r=m_kato
Comment 9•9 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/e889d9abef34 https://hg.mozilla.org/mozilla-central/rev/d6fbe14c354a https://hg.mozilla.org/mozilla-central/rev/4724d4f02b57 https://hg.mozilla.org/mozilla-central/rev/26b4afb254c2 https://hg.mozilla.org/mozilla-central/rev/4381d0272963
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
status-firefox44:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla44
Updated•5 years ago
|
Component: Event Handling → User events and focus handling
You need to log in
before you can comment on or make changes to this bug.
Description
•