Commit Graph

209 Commits

Author SHA1 Message Date
Simon Giesecke
a69d79b6db Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Eden Chuang
744f4296e3 Bug 1637035 - Do not inherit COEP from opener for non-http or non-initial-about:blank documents r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80414
2020-06-25 02:14:29 +00:00
Nika Layzell
917407823b Bug 1638793 - Ensure OriginAttributes is set on OpenWindowInfo for expanded principals, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D79471
2020-06-12 19:39:51 +00:00
Kashav Madan
28a7ad7a0f Bug 1641929 - Replace uses of StaticPrefs::fission_autostart() with FissionAutostart(), r=nika
Differential Revision: https://phabricator.services.mozilla.com/D78799
2020-06-08 23:00:21 +00:00
Nika Layzell
57d9580412 Bug 1637057 - Part 2: Clarify ComputeChromeFlags method names, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D75611
2020-05-18 18:23:48 +00:00
Nika Layzell
9efd647abb Bug 1637057 - Part 1: Ensure that ChromeFlags are propagated consistently between content owners, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D75610
2020-05-18 18:23:35 +00:00
Kris Maglione
4585b2c550 Bug 1597506: Get rid of GetWindowTreeItem/Owner. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D75403
2020-05-19 19:38:31 +00:00
Razvan Maries
d336b082f0 Backed out 2 changesets (bug 1558394) for perma failures on iframe_sandbox_anchor_download_block_downloads.sub.tentative.html. CLOSED TREE
Backed out changeset 79046ff8143b (bug 1558394)
Backed out changeset e13ede3c68d4 (bug 1558394)
2020-05-15 19:18:34 +03:00
Sebastian Streich
e6e8319b1d Bug 1558394 - Pass the TriggeringSandboxFlags to nsILoadinfo r=ckerschb,smaug,necko-reviewers,valentin
Add triggering Sandbox flags to loadinfo
***
Pass triggering Flags into Loadinfo

Differential Revision: https://phabricator.services.mozilla.com/D69588
2020-05-15 14:03:28 +00:00
Bogdan Tara
0372d293b3 Backed out 2 changesets (bug 1558394) for nsDocShellLoadState related bustage CLOSED TREE
Backed out changeset 5889105bd089 (bug 1558394)
Backed out changeset 80a0ea17c9f8 (bug 1558394)
2020-05-14 15:17:32 +03:00
Sebastian Streich
071f7a395c Bug 1558394 - Pass the TriggeringSandboxFlags to nsILoadinfo r=ckerschb,smaug,necko-reviewers,valentin
Add triggering Sandbox flags to loadinfo
***
Pass triggering Flags into Loadinfo

Differential Revision: https://phabricator.services.mozilla.com/D69588
2020-05-14 10:04:44 +00:00
Nika Layzell
d111c0e0dc Bug 1633820 - Part 5: Get rid of UnsafeIPCTabContext, r=kmag
This variant was only used for service workers' openWindow method, which has
been changed to no longer behave in this way, meaning that the type can be
removed. The follow-up simplification of removing
'ContentChild::ProvideWindowCommon', and moving the logic directly into
'BrowserChild' is not done in this bug, and will be done in a follow-up instead.

Differential Revision: https://phabricator.services.mozilla.com/D72935
2020-05-07 22:18:56 +00:00
Razvan Maries
a08d605e41 Backed out 5 changesets (bug 1633820) for build bustages at TabContext.cpp. CLOSED TREE
Backed out changeset 0a20dd1935d7 (bug 1633820)
Backed out changeset 626e834293ed (bug 1633820)
Backed out changeset 14cc454a8cbc (bug 1633820)
Backed out changeset 7bbcb9266b87 (bug 1633820)
Backed out changeset ef99672bd2af (bug 1633820)
2020-05-08 00:59:20 +03:00
Nika Layzell
1b29a1dc1c Bug 1633820 - Part 5: Get rid of UnsafeIPCTabContext, r=kmag
This variant was only used for service workers' openWindow method, which has
been changed to no longer behave in this way, meaning that the type can be
removed. The follow-up simplification of removing
'ContentChild::ProvideWindowCommon', and moving the logic directly into
'BrowserChild' is not done in this bug, and will be done in a follow-up instead.

Differential Revision: https://phabricator.services.mozilla.com/D72935
2020-05-07 17:18:58 +00:00
Bogdan Tara
61effcd0d6 Backed out 5 changesets (bug 1633820) for bustages complaining about TabContext CLOSED TREE
Backed out changeset 4982d41d5e6b (bug 1633820)
Backed out changeset 9803c41e42f9 (bug 1633820)
Backed out changeset 2475bbab03a8 (bug 1633820)
Backed out changeset 762f0b2c154c (bug 1633820)
Backed out changeset f9ea871a0227 (bug 1633820)
2020-05-06 22:39:46 +03:00
Nika Layzell
5931c7515c Bug 1633820 - Part 5: Get rid of UnsafeIPCTabContext, r=kmag
This variant was only used for service workers' openWindow method, which has
been changed to no longer behave in this way, meaning that the type can be
removed. The follow-up simplification of removing
'ContentChild::ProvideWindowCommon', and moving the logic directly into
'BrowserChild' is not done in this bug, and will be done in a follow-up instead.

Differential Revision: https://phabricator.services.mozilla.com/D72935
2020-05-06 17:42:51 +00:00
Nika Layzell
d50e179778 Bug 1633839 - Don't try to fall back to nsIWindowCreator in the content process, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D72928
2020-05-05 19:34:31 +00:00
Emilio Cobos Álvarez
9a8c41776d Bug 1635094 - Cleanup the ReferrerInfo code. r=ckerschb
The cast in InitWithNode is wrong. AsElement() asserts instead of
checking the flag, so we always pass an element (and if we didn't we'd
have type confusion problems). I audited the callers and we're fine.

Anyhow, always require an element, and add two convenience constructors
for C++ code.

Differential Revision: https://phabricator.services.mozilla.com/D73636
2020-05-04 18:50:20 +00:00
Cosmin Sabou
00d059a4c0 Backed out 2 changesets (bug 1635094) for build bustages on nsMacShellService.cpp. CLOSED TREE
Backed out changeset 0a2b0c6ea19a (bug 1635094)
Backed out changeset ead4f26f76ee (bug 1635094)
2020-05-04 20:04:06 +03:00
Emilio Cobos Álvarez
41fba10f7f Bug 1635094 - Cleanup the ReferrerInfo code. r=ckerschb
The cast in InitWithNode is wrong. AsElement() asserts instead of
checking the flag, so we always pass an element (and if we didn't we'd
have type confusion problems). I audited the callers and we're fine.

Anyhow, always require an element, and add two convenience constructors
for C++ code.

Differential Revision: https://phabricator.services.mozilla.com/D73636
2020-05-04 16:26:51 +00:00
Andrea Marchesini
6d1464a148 Bug 1634470 - Make OriginAttributes assertion in nsWindowWatcher::OpenWindowInternal compatible with FPI, r=timhuang
Differential Revision: https://phabricator.services.mozilla.com/D73307
2020-04-30 17:08:32 +00:00
Simon Giesecke
ea268054bd Bug 1628715 - Part 7: Add MOZ_NONNULL_RETURN to infallible nsTArray::AppendElements. r=xpcom-reviewers,necko-reviewers,nika,valentin
Differential Revision: https://phabricator.services.mozilla.com/D70831
2020-04-24 13:31:14 +00:00
Kris Maglione
acbf8d7bf7 Bug 1614462: Part 3b - Remove moribund DocShell FrameType/IsMozBrowser/IsInMozBrowser fields. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D70749
2020-04-20 22:15:24 +00:00
Ciure Andrei
9957be4184 Backed out 10 changesets (bug 1614462) for causing test_ipc_messagemanager_blob.js failures CLOSED TREE
Backed out changeset bf4f8253c708 (bug 1614462)
Backed out changeset c61b797d63e9 (bug 1614462)
Backed out changeset 284002de7137 (bug 1614462)
Backed out changeset 7f604ee5731c (bug 1614462)
Backed out changeset a73ef8167cd4 (bug 1614462)
Backed out changeset ecc3477ed34e (bug 1614462)
Backed out changeset 2106f3ccc4b5 (bug 1614462)
Backed out changeset e68c38a7741d (bug 1614462)
Backed out changeset 93b3bacdbb34 (bug 1614462)
Backed out changeset 0cf4898ae08d (bug 1614462)
2020-04-21 01:11:37 +03:00
Kris Maglione
739561a72a Bug 1614462: Part 3b - Remove moribund DocShell FrameType/IsMozBrowser/IsInMozBrowser fields. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D70749
2020-04-20 20:11:52 +00:00
Ciure Andrei
ea1e3cbe28 Backed out 10 changesets (bug 1614462) for causing xpcshell failures CLOSED TREE
Backed out changeset 34d4a86530b4 (bug 1614462)
Backed out changeset dbc2e2556d08 (bug 1614462)
Backed out changeset 512bbab4730c (bug 1614462)
Backed out changeset cd6b8d630f4c (bug 1614462)
Backed out changeset e4ad5037658f (bug 1614462)
Backed out changeset 0ffed1dc4296 (bug 1614462)
Backed out changeset 90ed81cbfe34 (bug 1614462)
Backed out changeset 6d2137eb1d52 (bug 1614462)
Backed out changeset b4819c99e16e (bug 1614462)
Backed out changeset b7deaed376ed (bug 1614462)
2020-04-17 02:26:14 +03:00
Kris Maglione
14ee8f4119 Bug 1614462: Part 3b - Remove moribund DocShell FrameType/IsMozBrowser/IsInMozBrowser fields. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D70749
2020-04-16 17:25:06 +00:00
Christoph Kerschbaumer
a923c367b1 Bug 1621987: Implement Sec-Fetch-User. r=baku,edgar,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D69392
2020-04-16 08:04:26 +00:00
Tooru Fujisawa
78b7a8908c Bug 1624150 - Collect telemetry for outerWidth/outerHeight features of window.open in web content. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D67765
2020-04-14 06:00:26 +00:00
Tooru Fujisawa
748fd470d3 Bug 1432749 - Part 2: Introduce WindowFeature class with spec-compliant tokenization, and use it both in nsGlobalWindowOuter and nsWindowWatcher. r=smaug
WindowFeature provides the tokenization and access to the map.
This changes the following behavior:
  * "*" value is removed, given it's unused.
    * Default width and default height handling is removed,
      given there's no callsites
  * Some chrome-priv feature handling becomes stricter:
    * All substring match is removed and directly checks the item in the map

Also, fixed noopener=0 and noreferrer=0 options to be handled properly.

Differential Revision: https://phabricator.services.mozilla.com/D67725
2020-04-14 06:27:47 +00:00
Narcis Beleuzu
8f3be16cf1 Backed out 3 changesets (bug 1624150, bug 1432749) for wpt failures at open-features-tokenization-top-left.html. CLOSED TREE
Backed out changeset ff061c8d9da9 (bug 1624150)
Backed out changeset 7e96d4acf317 (bug 1432749)
Backed out changeset a95f77732a1c (bug 1432749)
2020-04-13 22:51:48 +03:00
Tooru Fujisawa
0fcb8d5eb4 Bug 1624150 - Collect telemetry for outerWidth/outerHeight features of window.open in web content. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D67765
2020-04-13 15:42:26 +00:00
Tooru Fujisawa
e84e39b64e Bug 1432749 - Part 2: Introduce WindowFeature class with spec-compliant tokenization, and use it both in nsGlobalWindowOuter and nsWindowWatcher. r=smaug
WindowFeature provides the tokenization and access to the map.
This changes the following behavior:
  * "*" value is removed, given it's unused.
    * Default width and default height handling is removed,
      given there's no callsites
  * Some chrome-priv feature handling becomes stricter:
    * All substring match is removed and directly checks the item in the map

Also, fixed noopener=0 and noreferrer=0 options to be handled properly.

Differential Revision: https://phabricator.services.mozilla.com/D67725
2020-04-13 15:42:19 +00:00
Kris Maglione
40be55160b Bug 1626404: Part 4 - Remove now-redundant accessor args from BrowsingContext load methods. r=nika CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D69421
2020-04-08 19:04:47 +00:00
Kris Maglione
f0e8681c10 Bug 1626404: Part 1 - Move IsSandboxedFrom to BrowsingContext. r=nika CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D69417
2020-04-04 02:42:30 +00:00
Kris Maglione
61f180fc68 Bug 1626404: Follow-up: Fix missing source BC in some window.open calls.
Differential Revision: https://phabricator.services.mozilla.com/D70253
2020-04-08 21:10:10 +00:00
Bogdan Tara
0e4f143a63 Backed out changeset 5349e5225018 (bug 1626404) frequent timeouts on test_postMessage_onOther.html CLOSED TREE 2020-04-09 11:35:45 +03:00
Bogdan Tara
9f2284c826 Backed out 6 changesets (bug 1626404) for frequent timeouts on test_postMessage_onOther.html CLOSED TREE
Backed out changeset 453b858f4462 (bug 1626404)
Backed out changeset f54ce6a36c75 (bug 1626404)
Backed out changeset ec63b18da4b9 (bug 1626404)
Backed out changeset b0d4b213b819 (bug 1626404)
Backed out changeset af763de00e9d (bug 1626404)
Backed out changeset 45b68d43bdbb (bug 1626404)
2020-04-09 11:07:40 +03:00
Kris Maglione
496dd4cf93 Bug 1626404: Part 4 - Remove now-redundant accessor args from BrowsingContext load methods. r=nika CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D69421
2020-04-08 19:04:47 +00:00
Kris Maglione
35503e3f6f Bug 1626404: Part 1 - Move IsSandboxedFrom to BrowsingContext. r=nika CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D69417
2020-04-04 02:42:30 +00:00
Kris Maglione
02aab86542 Bug 1626404: Follow-up: Fix missing source BC in some window.open calls.
Differential Revision: https://phabricator.services.mozilla.com/D70253
2020-04-08 21:10:10 +00:00
Oana Pop Rus
2e479d6d2e Backed out 6 changesets (bug 1626404) for mochitest failures in BrowsingContext.cpp on a CLOSED TREE
Backed out changeset 4a3b391e08c4 (bug 1626404)
Backed out changeset 1a5a559ec6d5 (bug 1626404)
Backed out changeset 2ffdab0072e7 (bug 1626404)
Backed out changeset 6fb384961b99 (bug 1626404)
Backed out changeset c0c2e85e33da (bug 1626404)
Backed out changeset bf32b30efa49 (bug 1626404)
2020-04-09 00:22:49 +03:00
Kris Maglione
1465a5be2f Bug 1626404: Part 4 - Remove now-redundant accessor args from BrowsingContext load methods. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D69421
2020-04-08 19:04:47 +00:00
Kris Maglione
90013ea51d Bug 1626404: Part 1 - Move IsSandboxedFrom to BrowsingContext. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D69417
2020-04-04 02:42:30 +00:00
Nika Layzell
13956309e2 Bug 1616353 - Part 8: Remove forceInitialBrowserNonRemote, r=Gijs
This method is no longer necessary, as frontend will always make the correct
decisions for the remoteness of the intial content browser by reading
openWindowInfo.

Differential Revision: https://phabricator.services.mozilla.com/D67058
2020-04-07 21:39:47 +00:00
Nika Layzell
825152748c Bug 1616353 - Part 7.2: Create and use nsOpenWindowInfo types in nsWindowWatcher logic, r=kmag
This patch builds on top of part 7.1 by creating this object within
nsWindowWatcher and ContentParent to carry the relevant information through
provider interfaces when creating new content windows. The nsOpenWindowInfo
object is not created for new chrome windows.

This patch does not propagate these flags all of the way through to the
nsFrameLoader. That change is performed in later parts to keep each part
smaller.

Differential Revision: https://phabricator.services.mozilla.com/D67051
2020-04-07 21:39:32 +00:00
Nika Layzell
45e39dffc7 Bug 1616353 - Part 6.5: Assert nsILoadContext attributes are correctly set when opening windows, r=smaug
This is necessary as, by this point, the BrowsingContext has already been
attached, and can no longer have its nsILoadContext flags updated.

Differential Revision: https://phabricator.services.mozilla.com/D67049
2020-04-07 21:39:22 +00:00
Nika Layzell
954f423cb9 Bug 1616353 - Part 6.3: Replace many nsILoadContext mutators with assertions, r=smaug
Many of these setters are redundant, and duplicate work done elsewhere. As it is
no longer correct to set nsILoadContext attributes at these times, they're being
replaced with assertions.

Differential Revision: https://phabricator.services.mozilla.com/D67047
2020-04-07 21:39:16 +00:00
Nika Layzell
59af925389 Bug 1616353 - Part 5: Always set the opener for chrome windows late, r=kmag
This is OK, as all chrome BrowsingContext instances are always in the same
BrowsingContextGroup, so we don't need to have the initial opener avaliable when
creating the BrowsingContext to determine its BrowsingContextGroup.

This is used in part 7.2 to avoid propagating the opener window around when
creating chrome windows.

Differential Revision: https://phabricator.services.mozilla.com/D67044
2020-04-07 21:39:09 +00:00
Nika Layzell
f521b4a02c Bug 1616353 - Part 4: Don't second-guess CHROME_{REMOTE,FISSION}_WINDOW flags, r=kmag
This could cause issues, as we could incorrectly override the decision made by
nsWindowWatcher, and then override the decision again after the method returns.
This could cause the initial content browser to be configured incorrectly.

Differential Revision: https://phabricator.services.mozilla.com/D67043
2020-04-07 21:39:07 +00:00