Closed Bug 1030414 Opened 6 years ago Closed 6 years ago

Pop-up windows don't work from non-e10s windows when e10s autostart is enabled

Categories

(Core :: DOM: Core & HTML, defect)

x86
macOS
defect
Not set

Tracking

()

VERIFIED FIXED
mozilla33
Tracking Status
e10s + ---
firefox33 --- verified

People

(Reporter: cpeterson, Assigned: mconley)

References

Details

Attachments

(1 file)

STR:
1. Enable e10s pref
2. Restart then open a *non-e10s* window
3. In the non-e10s window, load http://myfavoritebeer.org/
4. Click the "Sign in with Persona" button

RESULT:
Nothing happens. The Persona pop-up window works correctly from the same page in an e10s window.

Could this be fallout from pop-up bug 989501?
Yes, this sounds distinctly like fallout from bug 989501. :/
A quick look shows that we're failing this assertion:

http://hg.mozilla.org/mozilla-central/file/f78e532e8a10/xpfe/appshell/src/nsXULWindow.cpp#l1814

So the primary content shell is not being set in the new window. Hm...
Assignee: nobody → mconley
Attached patch Patch v1Splinter Review
In one of my patches for bug 989501, I didn't account for the possibility that we'd want to open up new non-e10s popup windows. Because the autostart pref is set to true, we ignore the load context of the opener.

This patch makes it so that regardless of the value for browser.tabs.remote.autostart, we still look at the parent load context to determine whether or not to use a remote window if such a parent load context exists.
Greatly altering estimate - this was far simpler than I originally thought it'd be.
Attachment #8447384 - Flags: review?(bugs) → review+
https://hg.mozilla.org/mozilla-central/rev/f472837980fd
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Whiteboard: [fixed-in-fx-team]
Target Milestone: --- → mozilla33
Verified as fixed using Firefox 33 beta 2 (20140908190852) under Win 7 64-bit and Mac OSX 10.9.4
Status: RESOLVED → VERIFIED
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.