Граф коммитов

543 Коммитов

Автор SHA1 Сообщение Дата
Tim Huang 336cd10b0e Bug 1590032 - Propagate the first party domain when creating new browser in Fission. r=smaug
In this patch, we add the propagation of the first party domain through
the tabContext while creating OOP browsers. In the window.open() case,
we will propagate the first party domain from the opener's browser parent.
And in the frame case, we will propagate it from the manager of the
browserBridgeParent of the OOP frame.

Differential Revision: https://phabricator.services.mozilla.com/D49886

--HG--
extra : moz-landing-system : lando
2019-10-24 08:51:06 +00:00
Nika Layzell d9c800fe18 Bug 1589054 - Part 3: Store mDocShell directly on nsFrameLoader, r=farre
This is necessary as the nsFrameLoader may have been swapped, due to a process
switch, before the teardown of the old nsDocShell is complete. In this case, the
nsDocShell is still present on the BrowsingContext despite a nsFrameLoader for a
remote frame having been set up.

This will also be important for future changes such as cross-process bfcache. It
may be possible to change the calls to `nsFrameLoader::GetDocShell()` back to
`mDocShell` accesses in the future.

Differential Revision: https://phabricator.services.mozilla.com/D49648

--HG--
extra : moz-landing-system : lando
2019-10-22 13:57:01 +00:00
Cosmin Sabou cce21ffe59 Backed out 3 changesets (bug 1589054) for browser chrome failures on browser_crash_oopiframe.js CLOSED TREE
Backed out changeset 1a43032819e1 (bug 1589054)
Backed out changeset 91e4d5c6422a (bug 1589054)
Backed out changeset 03bc24aa3a2c (bug 1589054)
2019-10-21 19:29:20 +03:00
Nika Layzell 5edef5cff0 Bug 1589054 - Part 3: Store mDocShell directly on nsFrameLoader, r=farre
This is necessary as the nsFrameLoader may have been swapped, due to a process
switch, before the teardown of the old nsDocShell is complete. In this case, the
nsDocShell is still present on the BrowsingContext despite a nsFrameLoader for a
remote frame having been set up.

This will also be important for future changes such as cross-process bfcache. It
may be possible to change the calls to `nsFrameLoader::GetDocShell()` back to
`mDocShell` accesses in the future.

Differential Revision: https://phabricator.services.mozilla.com/D49648

--HG--
extra : moz-landing-system : lando
2019-10-21 14:03:40 +00:00
Emilio Cobos Álvarez 9eb8be65f7 Bug 1576714 - Don't update scrollbar visibility for non-top-level remote browsers. r=nika
This flag is only meant for window.open() stuff, so not relevant to iframes at
all.

This preserves the current fission behavior (which is quite broken) of always
showing scrollbars.

The way to control scrollbars for iframes (the scrolling attribute) is not
handled at all for Fission, I filed a bug and left a few FIXMEs.

Differential Revision: https://phabricator.services.mozilla.com/D49292

--HG--
extra : moz-landing-system : lando
2019-10-15 14:32:18 +00:00
Matt Woodrow 70bb7111fa Bug 1578624 - P4: Add an option to set mIsNavigating on the docshell when loading using BrowsingContext. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D44760

--HG--
extra : moz-landing-system : lando
2019-10-11 02:27:05 +00:00
Brindusan Cristian ef3c975bc9 Backed out 11 changesets (bug 1578624) for build bustages. CLOSED TREE
Backed out changeset b22733eb880f (bug 1578624)
Backed out changeset cb5e15489635 (bug 1578624)
Backed out changeset f1746b2f9dec (bug 1578624)
Backed out changeset d08a099a22ff (bug 1578624)
Backed out changeset 8ebd563c72a8 (bug 1578624)
Backed out changeset d8bfec2dc9b6 (bug 1578624)
Backed out changeset 591664928bce (bug 1578624)
Backed out changeset 63f5a619b9ef (bug 1578624)
Backed out changeset ff67cc13cdf3 (bug 1578624)
Backed out changeset 43556c937a09 (bug 1578624)
Backed out changeset 49065a55694d (bug 1578624)
2019-10-09 11:50:37 +03:00
Matt Woodrow a48a476531 Bug 1578624 - P4: Add an option to set mIsNavigating on the docshell when loading using BrowsingContext. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D44760

--HG--
extra : moz-landing-system : lando
2019-10-09 06:37:50 +00:00
Narcis Beleuzu 3429292547 Backed out 11 changesets (bug 1578624) for bustages on WindowGlobalChild.h . CLOSED TREE
Backed out changeset 478897956ee0 (bug 1578624)
Backed out changeset ab9c09164df0 (bug 1578624)
Backed out changeset f461f10efa46 (bug 1578624)
Backed out changeset 9b958693a003 (bug 1578624)
Backed out changeset 3b8220a15051 (bug 1578624)
Backed out changeset 180407dc57a8 (bug 1578624)
Backed out changeset bb11892e2171 (bug 1578624)
Backed out changeset 4f5c28244290 (bug 1578624)
Backed out changeset 6c02bbe5c1c5 (bug 1578624)
Backed out changeset 1d762fdce921 (bug 1578624)
Backed out changeset 818bc6e20c7d (bug 1578624)

--HG--
extra : histedit_source : ea22e628bf35425402009e9af274602f342a7476
2019-10-09 08:52:25 +03:00
Matt Woodrow 1696b97a9f Bug 1578624 - P4: Add an option to set mIsNavigating on the docshell when loading using BrowsingContext. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D44760

--HG--
extra : moz-landing-system : lando
2019-10-09 04:50:16 +00:00
Jonathan Kingston 14ec3140a9 Bug 1585364 - Fix IsFrame check to work in fission. r=ckerschb,nika
Differential Revision: https://phabricator.services.mozilla.com/D47783

--HG--
extra : moz-landing-system : lando
2019-10-03 16:42:25 +00:00
Gabriele Svelto 10d41866a5 Bug 1585156 - Remove useless inclusions of nsIDOMWindow.h and nsIDOMWindowUtils.h r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D47678

--HG--
extra : moz-landing-system : lando
2019-09-30 22:06:47 +00:00
Emilio Cobos Álvarez 2e05768081 Bug 1578379 - Make pageshow / pagehide during frame loader swaps not mess with document visibility. r=bzbarsky
Also while doing it:

 * Ensure activity observers get notified after visibility is computed already.
This is how we notify all other activity observers already, and we are
double-notifying in the case we actually get a page show _and_ a visibility
change, but this is a pre-existing problem.

 * Remove special-cases for InFrameSwap() from MediaRecorder. Now that pagehide
doesn't mess up with our visibility state the regular check just works. I
ensured I didn't regress bug 1444541.

 * Had to fix a UITour test that relied on the visibility changing back and
forth for the detached tab. It seems there's no real place in UITour that
listens to that event so we should be good.

 * Added tests, verifying that they both fail without the patch.

After this we can remove nsDocShell::InFrameSwap(), as the only caller is the
assertion, but I wanted to keep it regardless, at least for now, until this
patch has been in for a bit.

Differential Revision: https://phabricator.services.mozilla.com/D45906

--HG--
extra : moz-landing-system : lando
2019-09-23 10:16:44 +00:00
Bogdan Tara 8675cadd18 Backed out changeset d984fd004e7e (bug 1578379) for ES lint failure on browser_tab_replace_while_loading.js CLOSED TREE 2019-09-23 13:00:56 +03:00
Emilio Cobos Álvarez 10fa3b178f Bug 1578379 - Make pageshow / pagehide during frame loader swaps not mess with document visibility. r=bzbarsky
Also while doing it:

 * Ensure activity observers get notified after visibility is computed already.
This is how we notify all other activity observers already, and we are
double-notifying in the case we actually get a page show _and_ a visibility
change, but this is a pre-existing problem.

 * Remove special-cases for InFrameSwap() from MediaRecorder. Now that pagehide
doesn't mess up with our visibility state the regular check just works. I
ensured I didn't regress bug 1444541.

 * Had to fix a UITour test that relied on the visibility changing back and
forth for the detached tab. It seems there's no real place in UITour that
listens to that event so we should be good.

 * Added tests, verifying that they both fail without the patch.

After this we can remove nsDocShell::InFrameSwap(), as the only caller is the
assertion, but I wanted to keep it regardless, at least for now, until this
patch has been in for a bit.

Differential Revision: https://phabricator.services.mozilla.com/D45906

--HG--
extra : moz-landing-system : lando
2019-09-23 09:36:59 +00:00
Nika Layzell f103e26834 Bug 1579213 - Remove unused fields from ChangeRemoteness API, r=farre
This patch changes a few things about how nsFrameLoader is created, specifically
around the ChangeRemoteness API.

1. The private 'nsFrameLoader::nsFrameLoader' constructor has been simplified to
   only have one overload, shared by the different `::Create` static methods.

2. The creation static method used by `ChangeRemoteness` has changed name to
   `::Recreate`, as the signature is becoming more like the old method.

3. The `mNetworkCreated` bit is preserved when doing a `ChangeRemoteness`, as a
   remoteness change shouldn't be affecting that property.

4. Unused fields are removed from the ChangeRemoteness API.

5. The `remoteType` attribute is now mandatory in the ChangeRemoteness API,
   which simplifies the logic and makes it harder to accidentally misuse.

Differential Revision: https://phabricator.services.mozilla.com/D44893

--HG--
extra : moz-landing-system : lando
2019-09-11 08:09:58 +00:00
Alphan Chen cc2cf9eb99 Bug 1578296 - TabListener is only for contentSessionStore on FF desktop r=peterv
Don't need TabListener on Thunderbird

Differential Revision: https://phabricator.services.mozilla.com/D44995

--HG--
extra : moz-landing-system : lando
2019-09-09 13:49:27 +00:00
Kris Maglione edd7375038 Bug 1542415: Part 3 - Create new BrowserChild in the same tab group as its opener. r=nika
When we initially create a FrameLoader for a new tab created by a
window.open() call or a link click, it automatically winds up in the correct
tab group, because it's created in the child.

The problem comes when the window navigates to a new origin which requires a
process switch, and then navigates back to the same origin as its opener (for
instance, using `history.back()`). In that case, the parent rebuilds the frame
loader in a new tab group. But, since the child knows that it has an opener,
and that opener is in the same process, it (rightly) expects it to be in the
same tab group as its opener, and puts it there. It then asserts that this
matches the tab group of its actor, and explodes.

This patch fixes that, so that the parent checks whether its BrowsingContext
has an opener, and if does, tells the child to join its tab group.

Differential Revision: https://phabricator.services.mozilla.com/D44737

--HG--
extra : moz-landing-system : lando
2019-09-09 11:50:37 +00:00
Kris Maglione e561c0f595 Bug 1542415: Part 2 - Treat in-flight messages from incorrect owner as warnings. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D44736

--HG--
extra : moz-landing-system : lando
2019-09-09 11:50:35 +00:00
Nika Layzell ff18afeafd Bug 1562029 - Remove fission.oopif.attribute support, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D44859

--HG--
extra : moz-landing-system : lando
2019-09-06 14:45:51 +00:00
Nika Layzell 0354cad681 Bug 1577711 - Part 2: Perform frame static clone after parent static clone, r=smaug
This is done by delaying the code within nsFrameLoader::CreateStaticClone until
after the document has been created. The nsFrameLoader is re-discovered using
the subframe BrowsingContext's mEmbedderElement.

Differential Revision: https://phabricator.services.mozilla.com/D44586

--HG--
extra : moz-landing-system : lando
2019-09-05 14:55:19 +00:00
Nika Layzell 245b18cd39 Bug 1577711 - Part 1: Revert calling SetDocument earlier during clone from 1568055, r=smaug
This change was causing issues with images not displaying and iframes not
displaying correctly after multiple print preview calls.

Differential Revision: https://phabricator.services.mozilla.com/D44585

--HG--
extra : moz-landing-system : lando
2019-09-05 14:55:11 +00:00
Kris Maglione 3230783043 Bug 1576407: Part 4 - Stop storing opener redundantly on nsGlobalWindowOuter. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D43693

--HG--
extra : source : 19bf40067233299dbe4870e3a5698ae67027dcd9
2019-08-28 18:07:45 +00:00
Mihai Alexandru Michis a105826a55 Backed out 6 changesets (bug 1576407) for causing wpt and mochitest failures. CLOSED TREE
Backed out changeset 3b0498064cbf (bug 1576407)
Backed out changeset 38e4ea431445 (bug 1576407)
Backed out changeset 19bf40067233 (bug 1576407)
Backed out changeset 0ddbc451dcab (bug 1576407)
Backed out changeset 08d4c25fc670 (bug 1576407)
Backed out changeset be7cbc61f825 (bug 1576407)
2019-08-29 03:00:47 +03:00
Kris Maglione 49be7509f5 Bug 1576407: Part 4 - Stop storing opener redundantly on nsGlobalWindowOuter. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D43693

--HG--
extra : moz-landing-system : lando
2019-08-28 18:07:45 +00:00
Kannan Vijayan e53a880b1c Bug 1569262 - Rename nsIDocShellTreeItem::GetRootTreeItem to GetInProcessRootTreeItem for Fission marking. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D41064

--HG--
extra : moz-landing-system : lando
2019-08-07 19:24:00 +00:00
Kris Maglione 85c7f7187f Bug 1566186: Part 1 - Remove DocShell support for isolated mozbrowsers. r=nika
This functionality is currently unused, and blocks work needed to support
Fission.

Differential Revision: https://phabricator.services.mozilla.com/D39542

--HG--
extra : rebase_source : 1d8fdea73d48c714112d13844f5110f7f1892dda
2019-07-16 16:40:19 -07:00
Kannan Vijayan 3fb6190ec6 Bug 1559414 - Rename unaudited pre-fission methods with SameProcess for future audit burndown. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D39378

--HG--
extra : moz-landing-system : lando
2019-07-26 16:48:31 +00:00
Alphan Chen bb06ecd152 Bug 1567057 - TabListener is only for contentSessionStore on desktop r=peterv
Don't need TabListener on geckoview

Differential Revision: https://phabricator.services.mozilla.com/D38630

--HG--
extra : moz-landing-system : lando
2019-07-24 08:05:55 +00:00
Narcis Beleuzu 78f3381905 Backed out changeset f74c9d255293 (bug 1568055) for Assertion failures (MOZ_ASSERT_UNREACHABLE: leaking stream event). CLOSED TREE 2019-07-23 23:13:43 +03:00
Nika Layzell 454761339c Bug 1568055 - Part 2: Set embedder for BrowsingContext upon frame creation, r=farre
This should help ensure that the embedder is always set soon enough that we
don't run into the situation which caused the null deref fixed by bug 1565489.

This patch also adds an assertion earlier in WindowGlobalParent's lifecycle to
ensure that the condition is satisfied. This assertion will fail before the
changes in part 1.

Differential Revision: https://phabricator.services.mozilla.com/D38723

--HG--
extra : moz-landing-system : lando
2019-07-23 08:05:50 +00:00
Nika Layzell d75c40bc90 Bug 1568055 - Part 1: SetDocument earlier in the clone operation for print, r=farre
This should ensure that the inner window for each document is set up correctly
before iframe elements are created in them during a static clone. Other,
non-static-clone cases are not affected because they cannot load subframes.

Differential Revision: https://phabricator.services.mozilla.com/D38931

--HG--
extra : moz-landing-system : lando
2019-07-23 12:26:31 +00:00
Olli Pettay 7c88ba1685 Bug 1539497, navigator.maxTouchPoints returns 0 in child process, r=ehsan
Differential Revision: https://phabricator.services.mozilla.com/D38583

--HG--
extra : amend_source : 52f1fdbf79f18a6c3ff52eab0a45b397cee76baf
2019-07-19 01:45:16 +03:00
Boris Zbarsky 374137e8d8 Bug 1565767 part 5. Remove some unnecesary refcounting at nsIContent::GetBaseURI callsites. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D37973

--HG--
extra : moz-landing-system : lando
2019-07-15 18:29:05 +00:00
Alphan Chen 02e1dcbe25 bug 1562889 - Convert content-sessionStore to C++: add browser epochs support r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D36606

--HG--
extra : moz-landing-system : lando
2019-07-11 09:46:14 +00:00
Ryan Hunt 27bd25767f Bug 1561395 - Move drawSnapshot API to WindowGlobalParent and allow specifying the whole viewport as a rect. r=mattwoodrow,nika
Differential Revision: https://phabricator.services.mozilla.com/D35842

--HG--
extra : moz-landing-system : lando
2019-07-10 16:45:46 +00:00
Barret Rennie e6b381544e Bug 1289211 - Rename InfallibleTArray to nsTArray in dom/base/ r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D36941

--HG--
extra : moz-landing-system : lando
2019-07-10 03:25:21 +00:00
Nika Layzell eb598b2ae9 Bug 1563542 - Correctly align usage of mIsDiscarded and mClosed for BrowsingContext, r=peterv
In the bug which introduced mIsDiscarded, the code was changed to not set
mClosed during Detach, and only set mIsDiscarded. This was a mistake because a
bunch of places are only reading mClosed. Specifically when creating a
BrowsingContext for an iframe, we check GetClosed() to see whether to skip
creating it. Not doing this check can lead to assertions like the one in this
bug.

This patch changes the behaviour to continue setting `mClosed`, and also updates
the relevant `GetClosed()` checks to correctly check `IsDiscarded()`

Differential Revision: https://phabricator.services.mozilla.com/D37267

--HG--
extra : moz-landing-system : lando
2019-07-08 17:27:27 +00:00
Julian Descottes 9897a987da Bug 1543710 - Whitelist webext-panels.xul in FrameLoader::TryRemoteBrowser r=nika
Differential Revision: https://phabricator.services.mozilla.com/D33284

--HG--
extra : moz-landing-system : lando
2019-06-28 10:16:30 +00:00
Nika Layzell e3eb05b9c9 Bug 1560399 - Propagate remote type selection into subframes with Fission, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D35451

--HG--
extra : moz-landing-system : lando
2019-06-21 16:24:55 +00:00
Henri Sivonen 91cd6a0d25 Bug 1549930 - Avoid popping BrowserParent in response to window lowering. r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D30873

--HG--
extra : moz-landing-system : lando
2019-06-14 07:02:18 +00:00
Mike Conley 45db9df532 Bug 1559240 - Make sure oop-browser-context passes the BrowsingContext of the crashing subframe. r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D34930

--HG--
extra : moz-landing-system : lando
2019-06-13 21:06:23 +00:00
shindli c9ee4bb3ac Merge mozilla-central to autoland. a=merge CLOSED TREE
--HG--
rename : testing/web-platform/tests/referrer-policy/generic/iframe-inheritance.html => testing/web-platform/tests/referrer-policy/generic/inheritance/iframe-inheritance-data.html
rename : testing/web-platform/tests/referrer-policy/generic/iframe-inheritance.html => testing/web-platform/tests/referrer-policy/generic/inheritance/iframe-inheritance-srcdoc.html
2019-06-06 13:51:59 +03:00
Thomas Nguyen 01ff0bf93f Bug 1534681 Use ReferrerInfo class in document r=ckerschb,baku,Gijs
Also, in many place, we use document uri as referrer. It is not right
for the case srdoc iframe. We should use the last non-srdoc parent
document's uri

Differential Revision: https://phabricator.services.mozilla.com/D30191

--HG--
rename : testing/web-platform/tests/referrer-policy/generic/iframe-inheritance.html => testing/web-platform/tests/referrer-policy/generic/inheritance/iframe-inheritance-data.html
rename : testing/web-platform/tests/referrer-policy/generic/iframe-inheritance.html => testing/web-platform/tests/referrer-policy/generic/inheritance/iframe-inheritance-srcdoc.html
extra : moz-landing-system : lando
2019-06-06 07:23:37 +00:00
Ryan Hunt 298a301151 Bug 1556548 - Make RenderFrame an internal detail to BrowserParent. r=mattwoodrow,farre
Code outside of BrowserParent should just get the LayersId from a getter
and not worry about RenderFrame.

Differential Revision: https://phabricator.services.mozilla.com/D33562

--HG--
extra : rebase_source : 63f9f9680a7cb16a18d9e56999e02a124aa63429
extra : source : e86839ca63260b09184755c98890fa8abf371530
extra : histedit_source : 34333f5f78ecf9b4f3e12c6175a6e81724a41fb2
2019-05-31 16:00:57 -05:00
Emilio Cobos Álvarez d143aaa5f3 Bug 1545499 - Remove dead code for threading accelerator state. r=NeilDeakin
It's only moved around, but not actually used anywhere.

I have no idea what this was supposed to control in the past but it doesn't seem
useful to keep it around.

Differential Revision: https://phabricator.services.mozilla.com/D33393

--HG--
extra : moz-landing-system : lando
2019-06-03 15:29:06 +00:00
Ryan Hunt ea567d2cec Bug 1519546, part 4 - Wire up basic EffectsInfo updates in DOM IPC. r=farre
This commit adds RemoteBrowser::UpdateEffects for updating a remote browser's
EffectsInfo over IPC.

A following commit will actually use the EffectsInfo for
enabling/disabling rendering for a remote browser, and another
commit will actually use these IPDL methods.

Differential Revision: https://phabricator.services.mozilla.com/D31472

--HG--
extra : rebase_source : 304d843d2c4a35f468aa847ee66005a932bb7eb2
extra : intermediate-source : d31b7d33efc711fb8115663f4cfc5bc98fd58d73
extra : source : 5aea122dea2120efe107c639b17678e0464b1389
2019-05-15 15:26:25 -05:00
Mark Striemer ce0c11236e Bug 1532724 - Part 1: Inline options browser for HTML about:addons details r=rpl,kmag
Differential Revision: https://phabricator.services.mozilla.com/D29787

--HG--
extra : moz-landing-system : lando
2019-05-31 14:05:53 +00:00
Ryan Hunt 94db3c24c4 Bug 1554073 - Use GetContentParent in TryRemoteBrowser to avoid null-deref if PBrowser actor is destroyed. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D32547

--HG--
extra : moz-landing-system : lando
2019-05-27 17:31:24 +00:00
shindli 7b0d34e0a4 Backed out changeset 79436da3bf79 (bug 1549930) for causing perma browser chrome failures in browser/components/privatebrowsing/test/browser/browser_privatebrowsing_about.js CLOSED TREE 2019-05-27 18:09:53 +03:00