Closed Bug 1292344 Opened 8 years ago Closed 8 years ago

Move contentWindow-specific logic out of ExtensionContext

Categories

(WebExtensions :: Untriaged, defect, P3)

defect

Tracking

(firefox51 affected)

RESOLVED DUPLICATE of bug 1292369
Tracking Status
firefox51 --- affected

People

(Reporter: robwu, Unassigned)

Details

(Whiteboard: triaged)

There are different ExtensionContext types:
- ExtensionContext in content script, contentWindow = page's
- ExtensionContext in extension frames in web pages, contentWindow = extension frame's (same limited API as content scripts)
- ExtensionContext in extension frames/pages, contentWindow = extension frame's (full extension API)
- ExtensionContext in browser process serving as a proxy for remote ExtensionContexts, contentwindow = none
- Contexts in tests (sharing the BaseContext with ExtensionContexts), contentWindow = none

The first two are implemented in ExtensionContent.jsm,
the third is implemented in Extension.jsm,
and the contentWindow logic is scattered.

ExtensionContent.jsm has some logic to handle the bfcache, Extension.jsm does not.
In bug 1288901 I saw that the implementation in Extension.jsm changed to something very similar to ExtensionContent.jsm. So I expect more bugs and duplicate efforts unless the contentWindow management logic moves to a single place (ExtensionUtils?).
Priority: -- → P3
Whiteboard: triaged
Fixed by bug 1292369, the content window setter logic is now in BaseContext.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → DUPLICATE
Product: Toolkit → WebExtensions
You need to log in before you can comment on or make changes to this bug.