mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 1104400 - Get all message managers in Mulet setup. r=yzen
This commit is contained in:
parent
01b4aefdc8
commit
78648094ac
@ -160,14 +160,14 @@ this.Utils = { // jshint ignore:line
|
||||
},
|
||||
|
||||
get AllMessageManagers() {
|
||||
let messageManagers = [];
|
||||
let messageManagers = new Set();
|
||||
|
||||
function collectLeafMessageManagers(mm) {
|
||||
for (let i = 0; i < mm.childCount; i++) {
|
||||
let childMM = mm.getChildAt(i);
|
||||
|
||||
if ('sendAsyncMessage' in childMM) {
|
||||
messageManagers.push(childMM);
|
||||
messageManagers.add(childMM);
|
||||
} else {
|
||||
collectLeafMessageManagers(childMM);
|
||||
}
|
||||
@ -179,12 +179,19 @@ this.Utils = { // jshint ignore:line
|
||||
let document = this.CurrentContentDoc;
|
||||
|
||||
if (document) {
|
||||
if (document.location.host === 'b2g') {
|
||||
// The document is a b2g app chrome (ie. Mulet).
|
||||
let contentBrowser = this.win.content.shell.contentBrowser;
|
||||
messageManagers.add(this.getMessageManager(contentBrowser));
|
||||
document = contentBrowser.contentDocument;
|
||||
}
|
||||
|
||||
let remoteframes = document.querySelectorAll('iframe');
|
||||
|
||||
for (let i = 0; i < remoteframes.length; ++i) {
|
||||
let mm = this.getMessageManager(remoteframes[i]);
|
||||
if (mm) {
|
||||
messageManagers.push(mm);
|
||||
messageManagers.add(mm);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -23,7 +23,7 @@ XPCOMUtils.defineLazyModuleGetter(this, 'Roles',
|
||||
XPCOMUtils.defineLazyModuleGetter(this, 'States',
|
||||
'resource://gre/modules/accessibility/Constants.jsm');
|
||||
|
||||
Logger.debug('content-script.js');
|
||||
Logger.info('content-script.js', content.document.location);
|
||||
|
||||
let eventManager = null;
|
||||
let contentControl = null;
|
||||
|
Loading…
Reference in New Issue
Block a user