Open Bug 1494029 Opened 7 years ago Updated 3 years ago

ExtensionPopups.jsm implicitly relies on an about:blank window being loaded by any non-remote browsers it creates

Categories

(WebExtensions :: General, defect, P3)

defect

Tracking

(Not tracked)

People

(Reporter: Gijs, Unassigned)

References

(Depends on 1 open bug, Blocks 1 open bug)

Details

From IRC: 16:37:44 <@Gijs> aswan: the same-process browser binding implementation touches browser.securityUI in the constructor 16:37:47 <@Gijs> that touches browser.contentWindow 16:37:55 <@Gijs> that forces the creation of a dummy about:blank document 16:38:04 <@Gijs> I'm trying to fix this in bug 1493655 16:38:05 <firebot> https://bugzil.la/1493655 — ASSIGNED, gijskruitbosch+bugs@gmail.com — nsISecureBrowserUI::Init should take a docshell instead of a content window With that getter removed, a number of webextension tests go orange, cf. https://treeherder.mozilla.org/#/jobs?repo=try&selectedJob=201418654&revision=aa93743aa6b57f7922aa0f17ace8f6294fea812b . It's not entirely clear to me off-hand why that is, but it goes away if I make ExtensionPopups.jsm touch browser.contentWindow for any non-remote browsers it creates, to simulate what the docshell code used to do. I'm splitting this off so that it's possible to make progress on bug 1493655 without blocking on figuring out the webextensions tests.
Priority: -- → P1
Blocks: 1493606
Priority: P1 → P2
Component: General → Android
Priority: P2 → P3

I don't really understand why this got moved to android - pretty sure this affects desktop?

Flags: needinfo?(jmathies)

We don't use non-remote browsers on desktop. We have some non-remote tests in toolkit, but that is only to support android.

(In reply to Shane Caraveo (:mixedpuppy) from comment #2)

We don't use non-remote browsers on desktop. We have some non-remote tests in toolkit, but that is only to support android.

Ah, ok - sorry, that wasn't obvious to me.

Flags: needinfo?(jmathies)

(In reply to :Gijs (he/him) from comment #3)

(In reply to Shane Caraveo (:mixedpuppy) from comment #2)

We don't use non-remote browsers on desktop. We have some non-remote tests in toolkit, but that is only to support android.

Ah, ok - sorry, that wasn't obvious to me.

no problem. A slight correction though, this is controlled by extensions.webextensions.remote which defaults to true on desktop. It could be flipped to false. It should probably become a build-time option.

Given that we don't support fennec on current m-c anymore, and the geckoview implementation is quite different, should all the support for non-remote browsers just be removed at this point?

Flags: needinfo?(mixedpuppy)

From a Firefox/Toolkit perspective I'm happy to remove non-remote support everywhere. I'd like a definitive OK from someone in geckoview that would know whether this will create a problem for them.

Flags: needinfo?(mixedpuppy) → needinfo?(agi)

GV/Android doesn't support remote extensions yet, sorry. We need multi-e10s support first which is being worked on as we speak. You can follow Bug 1535365 and dependents.

Flags: needinfo?(agi)
See Also: → 1613141

ExtensionPopups.jsm is only used on desktop, not mobile. Bug 1613141 is about removing it from desktop, so I'll close this bug once the other has been resolved.

Depends on: 1613141
See Also: 1613141
Component: Android → General
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.