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

6081 Коммитов

Автор SHA1 Сообщение Дата
Kris Maglione c2c6945169 Bug 1650257: Part 2 - Abort SetNewDocument() if ancestors are discarded/cached. r=nika,smaug,sg
Differential Revision: https://phabricator.services.mozilla.com/D87486
2020-08-31 18:51:56 +00:00
Kris Maglione 5f2d674982 Bug 1650257: Part 1 - Stop discarding BCs from the parent on WindowGlobal destruction. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D87485
2020-08-31 18:51:45 +00:00
Olli Pettay 907f39a20b Bug 1661753 - Don't return early from nsDocShell::UpdateURLAndHistory when only session-history-in-parent related code is running, r=peterv
Depends on D88450

Differential Revision: https://phabricator.services.mozilla.com/D88630
2020-08-30 16:35:11 +00:00
Olli Pettay 7d2b65e50b Bug 1661317 - Make loading session history entries for iframes work when session history lives in the parent process (step 1.5), r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D88450
2020-08-31 10:05:53 +00:00
Olli Pettay b07cfb3c72 Bug 1661317 - Make loading session history entries for iframes work when session history lives in the parent process (step 1), r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D88312
2020-08-28 16:50:58 +00:00
Noemi Erli 0c682c4f01 Backed out changeset db52cf052477 (bug 1660342) for causing Bug 1661364 a=backout 2020-08-31 12:15:29 +03:00
Anny Gakhokidze 7e764895d7 Bug 1589102 - Part 13: Fix a race in process switching code due to reftest.js forcing a process switch, r=kmag
The race occurs when the parent changes the owner process for a BC, but the
child does not know about it and proceeds to call SetCurrentInnerWindowId on a
BC it no longer owns. To fix this, in child process, whenever we call
SetCurrentInnerWindowId on a BC, check that the BC is in process and that the
docshell has not been notified about an upcoming process change.

Differential Revision: https://phabricator.services.mozilla.com/D87934
2020-08-28 17:21:17 +00:00
Anny Gakhokidze 8b553ecfcf Bug 1589102 - Part 1: Enable about:srcdoc loads via DocumentChannel, r=mattwoodrow
This patch enables sandboxed srcdoc loads to take place via DocumentChannel,
and adds mechanisms for enabling unsandboxed ones.

Both unsandboxed srcdoc, and in subsequent patches, about:blank, loads require
that the triggering principal and the principal to inherit point to the same
instance if the load takes place in the same process as where we are inheriting
those principals from. We save those principals on a target browsing context before
we load the URI, and later, when we are deserializing LoadInfoArgs into
LoadInfo in the content process, we retrieve the saved principals if the
current load identifier of the target BC matches the load identifier saved
along with the principals.

We also need to make sure that during a process switch for about:srcdoc load,
we don't use the original URI for about:srcdoc to determine the remote type and
instead we use channel's result principal.

Differential Revision: https://phabricator.services.mozilla.com/D85079
2020-08-28 17:20:30 +00:00
Peter Van der Beken 167889c056 Bug 1656347 - Make session history getters to work with history in parent. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D88413
2020-08-27 18:47:27 +00:00
alwu 6ea69ac823 Bug 1634494 - part4 : notify media control action to the top level browsing context and all its children. r=chunmin
As we want to have an ability to do different operations on different browsing contexts for those actions with default handlers (play/pause/stop), so in D87142 we have changed `ContentMediaController` per browsing context. Techically it's per inner window, but it means each browsing context would have one corresponding `ContentMediaController` if the web content is in that browsing context.

The approach to achieve the goal is that, when getting those actions, we would notify to the top level browsing context, then go through its children to ensure that each browsing context can be operated correctly. By doing so, we can trigger default action handler and customized action handler on different browsing context.

Eg. A page has a child iframe, which has active media session with an action handler for `pause`. A page and iframe are both playing media. When pressing `pause`, default action handler would be run on main frame, and the customized action handler would be run on iframe.

Differential Revision: https://phabricator.services.mozilla.com/D87143
2020-08-27 04:10:45 +00:00
alwu 75773fa092 Bug 1634494 - part1 : store the active media session context Id on WindowContext. r=chunmin,farre
We determine which media session is active media session in chrome process, but the media session in content process doesn't know the detail.

This patch would store the active session context Id on the top level WindowContext, so that media session in content process can know if it's an active context or not, which helps to trigger the action handler only on active media session, after changing our propagation mechanism in following patches.

Differential Revision: https://phabricator.services.mozilla.com/D88106
2020-08-27 14:11:05 +00:00
Nika Layzell d5b6d05485 Bug 1658082 - Part 3: Set TargetBrowsingContext for non-retargeted loads, r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D87468
2020-08-26 19:20:15 +00:00
Nika Layzell 7c0ec51ea3 Bug 1658082 - Part 2: Remove duplicate information from InternalLoad IPC messages, r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D87467
2020-08-26 19:20:06 +00:00
Nika Layzell 6d387b5d53 Bug 1658082 - Part 1: Correctly set mTargetBrowsingContext from IPC, r=mattwoodrow
Previously, this field was incorrectly being initialized to
SourceBrowsingContext instead of TargetBrowsingContext.

Differential Revision: https://phabricator.services.mozilla.com/D88321
2020-08-26 22:21:51 +00:00
Nika Layzell 62ed33101c Bug 1660001 - Don't assert when creating popup from shutting down process, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D87921
2020-08-26 19:18:44 +00:00
Nika Layzell c8dab1397c Bug 1660342 - Add more assertions around host state, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D87928
2020-08-24 18:58:00 +00:00
Nika Layzell f635e5dd35 Bug 1659520 - Use explicit type arguments for `SyncedContext` field setters, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D87466
2020-08-26 07:53:26 +00:00
Peter Van der Beken 7f6d4f154e Bug 1660869 - Forward RemoveFromSessionHistory to the parent process for session history in the parent. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D88061
2020-08-25 16:20:17 +00:00
Peter Van der Beken f0aa8ed5fe Bug 1660868 - Forward RemoveDynEntries to the parent process for session history in the parent. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D88060
2020-08-25 16:04:51 +00:00
Emilio Cobos Álvarez 72730e8e3d Bug 1636728 - Make calling window.print() before load keep deferring the actual printing and closing the window until load. r=smaug
Other engines also do this, but with my previous patch breaks it
(because we only hit print() on the print-content-viewer _after_ doing
the clone).

So move it before triggering all the machinery, and only for
window.print().  Given we didn't check this for print preview etc, I
think it's fine to carry on for user-triggered loads.

Trivial test-case (which I'm not quite sure how to turn into an
automated test...)

    <!doctype html>
    <h1>I do get printed but...</h1>

    <script>
      window.print();
    </script>

    <h2>Do I?</h2>

Note that this is broken with the new print preview UI already, this
fixes it.

Differential Revision: https://phabricator.services.mozilla.com/D87898
2020-08-25 17:45:24 +00:00
Emilio Cobos Álvarez 044b3c4332 Bug 1636728 - Centralize printing entry points in nsGlobalWindowOuter, and move cloning out of nsPrintJob. r=jwatt,geckoview-reviewers,smaug,agi
This centralizes our print and preview setup in nsGlobalWindowOuter so
that we never re-clone a clone, and so that we reuse the window.open()
codepath to create the browsing context to clone into.

For window.print, for both old print dialog / silent printing and new
print preview UI, we now create a hidden browser (as in with visibility:
collapse, which takes no space but still gets a layout box).

 * In the modern UI case, this browser is swapped with the actual print
   preview clone, and the UI takes care of removing the browser.

 * In the print dialog / silent printing case, the printing code calls
   window.close() from nsDocumentViewer::OnDonePrinting().

 * We don't need to care about the old print preview UI for this case
   because it can't be open from window.print().

We need to fall back to an actual window when there's no
nsIBrowserDOMWindow around for WPT print tests and the like, which don't
have one. That seems fine, we could special-case this code path more if
needed but it doesn't seem worth it.

Differential Revision: https://phabricator.services.mozilla.com/D87063
2020-08-25 17:45:12 +00:00
Peter Van der Beken 14120f6a0d Bug 1660873 - Disable some unnecessary nsDocShell code if session history in the parent is turned on. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D88062
2020-08-25 10:42:37 +00:00
Emilio Cobos Álvarez 2139980162 Bug 1659758 - Null-check event target in nsDocShellTreeOwner::AddChromeListeners. r=smaug
Tentative fix (though crash is long-standing), so no test :/

Differential Revision: https://phabricator.services.mozilla.com/D88090
2020-08-24 23:51:26 +00:00
Peter Van der Beken 30b0eb25b2 Bug 1659992 - Fix nsDocShell::LoadURI for session history loads to not rely on session history in the child. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D87744
2020-08-23 17:41:13 +00:00
Peter Van der Beken a4a8b3da89 Bug 1649131 - Implement history.pushState/.replaceState for session history in the parent. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D87039
2020-08-23 17:41:03 +00:00
Peter Van der Beken 1caf077d0b Bug 1649131 - Stop checking for an nsISHEntry in nsDocShellLoadState as a sign of a load from history. r=smaug
Checking for an nsISHEntry doesn't work anymore with session history in the
parent. For that we can check that the loading session history info's
mIsLoadFromSessionHistory is true. If there is no loading session history info
we can fall back to the old way of checking for a non-null nsISHEntry (which
will only ever be true if session history in the parent is turned off).

Differential Revision: https://phabricator.services.mozilla.com/D87037
2020-08-23 20:20:55 +00:00
Peter Van der Beken 4a9e44592e Bug 1649131 - Stop marking SessionHistoryInfo as moveonly. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D87036
2020-08-20 12:58:40 +00:00
Olli Pettay 0bd5beeadf Bug 1658821 - Move Id from SessionHistoryInfo to LoadingSessionHistoryInfo, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D86864
2020-08-20 16:55:21 +00:00
Butkovits Atila 5c5df0b663 Backed out changeset 24d6087acc64 (bug 1658821) for build bustage at SessionHistoryEntry.cpp. CLOSED TREE 2020-08-20 17:37:53 +03:00
Olli Pettay cd47973905 Bug 1658821 - Move Id from SessionHistoryInfo to LoadingSessionHistoryInfo, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D86864
2020-08-20 12:02:17 +00:00
Emilio Cobos Álvarez f04cda9679 Bug 1602410 - Make window.print() work with tab-modal printing. r=nika,geckoview-reviewers,agi
Do this by spinning the event loop until we've done the clone for
preview as appropriate.

This should be much less risky than finishing the previous patches
which would still be nice, but realistically landing them for 81 is not
going to happen.

This just returns without doing nothing in a couple cases, like when
there's already another modal dialog or such. That seems acceptable to
me, it's not clear what better way to do would be.

Differential Revision: https://phabricator.services.mozilla.com/D87484
2020-08-19 09:27:18 +00:00
Andrew McCreight d914048012 Bug 1659825 - Null check gWindowContexts in WindowContext::Discard(). r=nika
If we're after shutdown, then this variable will have been cleared.
This is the remaining use that was failing to do a null check, and
it was manifesting as a very low-volume crash.

Differential Revision: https://phabricator.services.mozilla.com/D87503
2020-08-18 21:46:07 +00:00
Andreas Farre 6fdf0fb9db Bug 1647454 - Check popup permission on window context in DoURILoad. r=nika
Depends on D86808

Differential Revision: https://phabricator.services.mozilla.com/D86828
2020-08-18 16:16:32 +00:00
Peter Van der Beken e5cbd042f8 Bug 1658902 - Fix some code for session history in parent to work without the session history implementation in the child. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D86946
2020-08-17 18:52:31 +00:00
Edgar Chen b2ef530476 Bug 1611961 - Move UserActivationState from BrowsingContext to WindowContext; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D83126
2020-08-17 11:02:34 +00:00
Edgar Chen 7cb48e9af8 Bug 1658650 - Remove hasValidTransientUserAction from DocumentChannelCreationArgs; r=mattwoodrow
There is the same information exposed in DocShellLoadStateInit.
And we don't really need to query user action from BrowsingContext, this
information would be carried in `nsDocShellLoadState`.

Depends on D86724

Differential Revision: https://phabricator.services.mozilla.com/D86773
2020-08-16 20:18:02 +00:00
Olli Pettay 9c7b1aa59d Bug 1658649 - Make session-history-in-parent nsISHEntry setters to rely on active entry, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D86770
2020-08-13 22:51:47 +00:00
Olli Pettay 5192276b89 Bug 1658454 - nsISHEntry.cacheKey setter for session-history-in-parent, r=peterv
SessionHistoryEntry::MaybeSynchronizeSharedStateToInfo call is a tad controversial, but
something like that is needed for the cases when the actual value lives in the SHEntrySharedParentState.

Differential Revision: https://phabricator.services.mozilla.com/D86640
2020-08-13 22:51:17 +00:00
Olli Pettay b4c699ff11 Bug 1658280 - nsISHEntry.scrollRestorationIsManual setter for session-history-in-parent, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D86547
2020-08-13 23:17:48 +00:00
Olli Pettay 33a7c472fa Bug 1657757 - nsISHEntry.title setter for session-history-in-parent, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D86275
2020-08-13 23:38:36 +00:00
Kris Maglione 05de051e4a Bug 1650257: Also set NewWindowBCIsTop annotation in parent. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D87111
2020-08-14 19:16:45 +00:00
Olli Pettay cadcd14bc8 Bug 1656996 - Ensure cross-process session history navigations update child process side index and length, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D85789
2020-08-14 13:05:25 +00:00
Noemi Erli 9858638fe8 Backed out 2 changesets (bug 1657757, bug 1658280) for causing build bustages in nsDocShell.cpp CLOSED TREE
Backed out changeset 0f03a74f24a5 (bug 1658280)
Backed out changeset 3aaeea6bd201 (bug 1657757)
2020-08-14 02:12:48 +03:00
Noemi Erli b7c6d9d228 Backed out changeset 404955e976d6 (bug 1658454) for causing build bustages in nsDocShell.cpp CLOSED TREE 2020-08-14 01:30:50 +03:00
Csoregi Natalia 36ac6c5cca Backed out 2 changesets (bug 1656997, bug 1656996) for fission failures on browser_preferences_usage.js. CLOSED TREE
Backed out changeset c3aaa4f191e6 (bug 1656997)
Backed out changeset e41977f9608f (bug 1656996)
2020-08-14 00:47:56 +03:00
Olli Pettay 510e721d9e Bug 1658454 - nsISHEntry.cacheKey setter for session-history-in-parent, r=peterv
SessionHistoryEntry::MaybeSynchronizeSharedStateToInfo call is a tad controversial, but
something like that is needed for the cases when the actual value lives in the SHEntrySharedParentState.

Differential Revision: https://phabricator.services.mozilla.com/D86640
2020-08-13 19:18:29 +00:00
Olli Pettay 9805690970 Bug 1658280 - nsISHEntry.scrollRestorationIsManual setter for session-history-in-parent, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D86547
2020-08-13 19:18:06 +00:00
Olli Pettay 83814cae84 Bug 1657757 - nsISHEntry.title setter for session-history-in-parent, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D86275
2020-08-13 19:17:38 +00:00
Olli Pettay 9b6fb243d1 Bug 1656996 - Ensure cross-process session history navigations update child process side index and length, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D85789
2020-08-13 19:17:08 +00:00
Olli Pettay 23d50bfbe9 Bug 1655752 - Move session history to the replacing CanonicalBrowsingContext, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D85189
2020-08-13 16:33:56 +00:00
Razvan Maries ca34860579 Backed out changeset 2eca7dff6597 (bug 1658902) for perma failures on test_history_length_during_pageload.html. CLOSED TREE 2020-08-13 19:00:00 +03:00
Peter Van der Beken 360f74796c Bug 1658902 - Fix some code for session history in parent to work without the session history implementation in the child. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D86946
2020-08-13 13:07:21 +00:00
Edgar Chen 747f9db6d7 Bug 1658572 - Do not propagate user activation state while loading loading-error-page (about:neterror); r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D86724
2020-08-13 09:47:08 +00:00
Jean-Yves Avenard 358cef5d1a Bug 1646539 - Part 3. Fix compilation. r=farre
BrowserContext is only fast declared here.
To avoid having to include the full header, move it out of the header.

Differential Revision: https://phabricator.services.mozilla.com/D86904
2020-08-13 07:16:11 +00:00
Geoff Lankow 35d3be0fc3 Bug 1646539 follow-up - Add missing #include to un-break the Thunderbird build. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D86871
2020-08-12 23:47:09 +00:00
Dorel Luca dcd1938a78 Backed out changeset 178fa7e29bb6 (bug 1585070) for Browser-chrome failures in general/browser_windowactivation.js. CLOSED TREE 2020-08-12 20:10:46 +03:00
Andreas Farre 2f88f75c98 Bug 1646539 - Part 2: Add field on WindowContext tracking popup permission. r=nika
Popup permissions initialized with the result of checking if the
constructing WindowContext's principal is allowed to open a popup. The
field is updated for all WindowContexts sharing a principal whenever
the popup permission for that nsIPrincipal changes.

Differential Revision: https://phabricator.services.mozilla.com/D86378
2020-08-12 15:38:12 +00:00
Steven MacLeod 05066e9e52 Bug 1585070 - move nsPIDOMWindowOuter::mIsActive to BrowsingContext. r=farre
A new `BrowsingContext` field, `isActiveBrowserWindow`, has been added
to track the active browser window for the `:-moz-window-inactive`
pseudoclass. This field takes the place of
`nsPIDOMWindowOuter::mIsActive`.

With this change `:-moz-window-inactive` is now fission compatible.

Differential Revision: https://phabricator.services.mozilla.com/D86422
2020-08-11 12:53:57 +00:00
Emilio Cobos Álvarez 0c03ba166c Bug 1658471 - Remove dom.security.featurePolicy.enabled. r=baku
We've shipped it on by default since 74 (bug 1617219).

Differential Revision: https://phabricator.services.mozilla.com/D86665
2020-08-12 10:57:04 +00:00
Kashav Madan 255b3f3ecb Bug 1566422 - Avoid unnecessary coordinate conversions when showing tooltips, r=emilio
We currently start with screen-relative coordinates, translate them to
widget-relative coordinates, and then translate them back to screen-relative
coordinates when actually showing the tooltip in XULBrowserWindow.showTooltip().
There's no reason for the extra conversions, so we can just send screen-relative
coordinates directly.

Since the widget origin for out-of-process frames is the origin of the frame
itself (instead of the tab, which is the case for in-process frames), the
screen-to-widget conversion was incorrect, and was causing a bug in how the
tooltip was being positioned. Avoiding that conversion altogether also fixes
that bug.

Differential Revision: https://phabricator.services.mozilla.com/D86750
2020-08-11 22:01:40 +00:00
Steven MacLeod 560478715a Bug 1580596 - Fix usage of nsIDocShellTreeItem in nsDocShell::CheckLoadingPermission r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D56004
2020-08-10 19:36:35 +00:00
Nika Layzell 28a9513c43 Bug 1656854 - Part 1: Block subframe creation in discarded BCs, r=farre
This should help catch and/or prevent any cases where we're creating a new
subframe at an unfortunate time during `BrowsingContext` or `WindowContext`
teardown.

Differential Revision: https://phabricator.services.mozilla.com/D85896
2020-08-06 14:03:30 +00:00
Christoph Kerschbaumer e99c9c8e77 Bug 1657583: Simplify TestSitePermission within nsHTTPSOnlyUtils r=necko-reviewers,JulianWels,dragana
Differential Revision: https://phabricator.services.mozilla.com/D86178
2020-08-10 08:51:44 +00:00
Steven MacLeod b329c4ff4c Bug 1646547 - fix ScriptLoader::ReadyToExecuteParserBlockingScripts stopping at OOP ancestors. r=kmag
`ReadyToExecuteParserBlockingScripts` was walking the ancestor chain but
would stop if it hit an OOP ancestor. With this change we walk the
`WindowContext` tree instead, so that we may skip over OOP ancestors
and continue checking all in process ancestors.

Differential Revision: https://phabricator.services.mozilla.com/D86436
2020-08-09 23:50:35 +00:00
Kartikaya Gupta b242b603bc Bug 1657995 - Rename UpdateViewportOverridden to a more appropriate name. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D86491
2020-08-09 21:40:56 +00:00
Kris Maglione 6dc4123fea Bug 1646519: Fix GetInProcessTopInternal usage in GetZone. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80092
2020-08-07 22:02:02 +00:00
Bogdan Tara 492ec9ba2f Backed out changeset c20c383af4db (bug 1657583) for http related failures CLOSED TREE 2020-08-07 17:13:37 +03:00
Christoph Kerschbaumer 080bd94e56 Bug 1657583: Simplify TestSitePermission within nsHTTPSOnlyUtils r=necko-reviewers,JulianWels,dragana
Differential Revision: https://phabricator.services.mozilla.com/D86178
2020-08-07 12:50:31 +00:00
Bogdan Tara 3bc4fa6d50 Backed out changeset 5a2241b01c82 (bug 1657583) for DocumentLoadListener.cpp related bustage CLOSED TREE 2020-08-07 14:58:47 +03:00
Christoph Kerschbaumer b6387305a4 Bug 1657583: Simplify TestSitePermission within nsHTTPSOnlyUtils r=necko-reviewers,JulianWels,dragana
Differential Revision: https://phabricator.services.mozilla.com/D86178
2020-08-07 11:27:56 +00:00
Emilio Cobos Álvarez ac6059e379 Bug 1657841 - Remove unused visible tabs tracking. r=edgar
This stopped being used at some point and now it's just useless.

Differential Revision: https://phabricator.services.mozilla.com/D86322
2020-08-07 09:40:07 +00:00
Csoregi Natalia 8fa5e9e957 Backed out 3 changesets (bug 1648887, bug 1611961) for assertion failures on WindowContext.cpp. CLOSED TREE
Backed out changeset 3719f7db339d (bug 1648887)
Backed out changeset b7c7fcb5df37 (bug 1648887)
Backed out changeset ab82a9c613f8 (bug 1611961)
2020-08-06 17:43:51 +03:00
Edgar Chen d2c2f39bd2 Bug 1611961 - Move UserActivationState from BrowsingContext to WindowContext; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D83126
2020-08-06 10:25:00 +00:00
Butkovits Atila 3bd0e5497c Backed out 10 changesets (bug 1589102) for failure at browser_saveHeapSnapshot_e10s_01.js CLOSED TREE
Backed out changeset 0d22ad297b19 (bug 1589102)
Backed out changeset 14bcaf2a452c (bug 1589102)
Backed out changeset 20905f91e2bb (bug 1589102)
Backed out changeset 29ee0fbe855f (bug 1589102)
Backed out changeset d1f6185030af (bug 1589102)
Backed out changeset 31949872cc1d (bug 1589102)
Backed out changeset ec04e1a20597 (bug 1589102)
Backed out changeset ffe8da473b91 (bug 1589102)
Backed out changeset 3b92f7306c64 (bug 1589102)
Backed out changeset b187548e258f (bug 1589102)
2020-08-05 21:47:50 +03:00
Anny Gakhokidze e903c66d34 Bug 1589102 - Part 1: Enable about:srcdoc loads via DocumentChannel, r=mattwoodrow
This patch enables sandboxed srcdoc loads to take place via DocumentChannel,
and adds mechanisms for enabling unsandboxed ones.

Both unsandboxed srcdoc, and in subsequent patches, about:blank, loads require
that the triggering principal and the principal to inherit point to the same
instance if the load takes place in the same process as where we are inheriting
those principals from. We save those principals on a target browsing context before
we load the URI, and later, when we are deserializing LoadInfoArgs into
LoadInfo in the content process, we retrieve the saved principals if the
current load identifier of the target BC matches the load identifier saved
along with the principals.

We also need to make sure that during a process switch for about:srcdoc load,
we don't use the original URI for about:srcdoc to determine the remote type and
instead we use channel's result principal.

Differential Revision: https://phabricator.services.mozilla.com/D85079
2020-08-05 16:44:01 +00:00
Christoph Kerschbaumer 394ac42d42 Bug 1657348: Simplify CouldBeHttpsOnlyError within docshell. r=JulianWels
Differential Revision: https://phabricator.services.mozilla.com/D86009
2020-08-05 15:18:01 +00:00
Nika Layzell 1c71a222fc Bug 1653729 - Part 1: Generalize do_QueryActor API, r=kmag
This changes the set of types which can be passed as the second argument to
do_QueryActor to ones which can be unambiguously converted to a JSActorManager,
and combines nsCOMPtr_helper implementations.

Differential Revision: https://phabricator.services.mozilla.com/D84067
2020-08-04 21:34:29 +00:00
Anny Gakhokidze 2d1151529c Bug 1654922 - Part 1: Remove DocumentChannel pref usage from tests and document navigation code, r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D85483
2020-08-01 16:36:12 +00:00
Simon Giesecke 96f3e7e019 Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84807
2020-08-04 11:27:07 +00:00
Noemi Erli 381fca9783 Backed out 4 changesets (bug 1654992, bug 1654991) for causing timeous in mask-opacity-1e.html
Backed out changeset 11f0f54c6e0a (bug 1654992)
Backed out changeset a353dd5b3f08 (bug 1654991)
Backed out changeset 6a7964ba549f (bug 1654991)
Backed out changeset cf3bfb91d98c (bug 1654991)
2020-08-03 22:09:36 +03:00
Simon Giesecke 032d2ac9d3 Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D84807
2020-08-03 14:54:18 +00:00
Sylvestre Ledru 843f943758 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D85678
2020-08-02 15:29:15 +00:00
Steven MacLeod 6ceacee1c3 Bug 1646567 - fix nsDocShell::HasUnloadedParent to work for OOP frames. r=nika
With fission enabled, walking the docshell tree to find unloaded
parents would stop at the first OOP parent. Instead we now walk
the `BrowsingContext`/`WindowContext` tree. To still check parents
which are OOP, we take advantage of the fact that a parent
`WindowContext` will no longer be the current `WindowContext` if
the parent was unloaded. For in process docshell's we additionally
check the docshell directly.

Differential Revision: https://phabricator.services.mozilla.com/D85328
2020-07-31 19:58:09 +00:00
Butkovits Atila 336243e692 Backed out changeset 6164e09df60e (bug 1646567) for nsDocShell failures. CLOSED TREE 2020-07-31 21:26:45 +03:00
Steven MacLeod ae5aa0f5bf Bug 1646567 - fix nsDocShell::HasUnloadedParent to work for OOP frames. r=nika
With fission enabled, walking the docshell tree to find unloaded
parents would stop at the first OOP parent. Instead we now walk
the `BrowsingContext`/`WindowContext` tree. To still check parents
which are OOP, we take advantage of the fact that a parent
`WindowContext` will no longer be the current `WindowContext` if
the parent was unloaded. For in process docshell's we additionally
check the docshell directly.

Differential Revision: https://phabricator.services.mozilla.com/D85328
2020-07-31 16:23:58 +00:00
Andreas Farre 5ae385d240 Bug 1613431 - Part 4: Require that synced field setters' return value is handled. r=nika
Depends on D83647

Differential Revision: https://phabricator.services.mozilla.com/D83648
2020-07-31 13:37:20 +00:00
Andreas Farre b13577d8e4 Bug 1613431 - Part 3: Handle synced setters return value. r=nika
Depends on D83646

Differential Revision: https://phabricator.services.mozilla.com/D83647
2020-07-31 13:37:13 +00:00
Andreas Farre 8d7d0ec85c Bug 1613431 - Part 2: Ignore synced setters return value. r=nika
Depends on D83645

Differential Revision: https://phabricator.services.mozilla.com/D83646
2020-07-31 13:37:00 +00:00
Andreas Farre 336fe46681 Bug 1613431 - Part 1: Have synced setters return nsresult. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D83645
2020-07-31 13:36:45 +00:00
Olli Pettay 26b28f1b65 Bug 1654525 - Ensure loads initiated from session history in parent reuse the existing SHEntries, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D85173
2020-07-29 14:23:09 +00:00
Chris H-C ca634b6fb5 Bug 1635253 - Add new about:glean to control Glean SDK debugging, logging r=janerik,flod
Included documentation, but no tests, as it doesn't yet actually control the
Glean SDK.

Differential Revision: https://phabricator.services.mozilla.com/D83977
2020-07-30 16:35:17 +00:00
Nika Layzell bcb0efc158 Bug 1654569 - Keep BrowsingContextGroup alive throughout the process switch, r=farre,annyG
This builds on the new API added in bug 1652085 to reduce the chance of a
different BrowsingContextGroup instance being used for process selection at the
start of a process switch, and BrowsingContext creation at the end.

While this would probably not be a serious issue right now, as we always have
only a single "extension" process, it could become an issue in the future if the
specific group specifier is used in more places.

Differential Revision: https://phabricator.services.mozilla.com/D84549
2020-07-30 20:27:44 +00:00
Nika Layzell 5ed1074194 Bug 1652085 - Delay BrowsingContextGroup destruction until acked, r=farre
This should ensure that any BrowsingContexts racily created during the discard
process don't end up creating a separate BrowsingContextGroup from their
relatives, and triggering group mismatch assertions.

Differential Revision: https://phabricator.services.mozilla.com/D84548
2020-07-30 20:27:41 +00:00
Nika Layzell 06dd04520e Bug 1652144 - Part 2: Consider current BrowsingContextGroup for process selection, r=farre
This requires keeping track of the current process used to host documents with a
particular remote type loaded in each BrowsingContextGroup. Due to lifecycle
oddities, this set is kept separate from the existing subscribers set on
BrowsingContextGroup.

Differential Revision: https://phabricator.services.mozilla.com/D84061
2020-07-30 20:27:37 +00:00
Nika Layzell 59bd2d5f83 Bug 1652144 - Part 1: Remove unused argument from process launch methods, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D84060
2020-07-30 20:27:34 +00:00
Steven MacLeod baee2f562d Bug 1587418 - cache shortcuts permission on WindowContext. r=farre
We now cache the shortcuts permission in a synced field on
`WindowContext`. This will allow checking the permission quickly and
without IPC when Fission is enabled and the top-level document is
in another process.

Differential Revision: https://phabricator.services.mozilla.com/D84182
2020-07-30 12:26:24 +00:00
Nathan Froyd e3ebda1914 Bug 1223932 - delete guard object uses from the tree; r=jwalden
CLOSED TREE

We don't need these macros anymore, for two reasons:

1. We have static analysis to provide the same sort of checks via `MOZ_RAII`
   and friends.
2. clang now warns for the "temporary that should have been a declaration" case.

The extra requirements on class construction also show up during debug tests
as performance problems.

This change was automated by using the following sed script:

```
# Remove declarations in classes.
/MOZ_DECL_USE_GUARD_OBJECT_NOTIFIER/d
/MOZ_GUARD_OBJECT_NOTIFIER_INIT/d

# Remove individual macros, carefully.
{
  # We don't have to worry about substrings here because the closing
  # parenthesis "anchors" the match.
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_IN_IMPL)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_IN_IMPL)/)/g;

  # Remove the longer identifier first.
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_TO_PARENT//g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM//g;
}

# Remove the actual include.
\@# *include "mozilla/GuardObjects.h"@d
```

and running:

```
find . -name \*.cpp -o -name \*.h | grep -v 'GuardObjects.h' |xargs sed -i -f script 2>/dev/null
mach clang-format
```

Differential Revision: https://phabricator.services.mozilla.com/D85168
2020-07-30 14:22:38 +00:00
Mihai Alexandru Michis a911a108d0 Backed out changeset ac9c811bc427 (bug 1223932) for causing spidermonkey rust failures.
CLOSED TREE
2020-07-30 18:23:21 +03:00
Nathan Froyd bec9f9b93a Bug 1223932 - delete guard object uses from the tree; r=jwalden
We don't need these macros anymore, for two reasons:

1. We have static analysis to provide the same sort of checks via `MOZ_RAII`
   and friends.
2. clang now warns for the "temporary that should have been a declaration" case.

The extra requirements on class construction also show up during debug tests
as performance problems.

This change was automated by using the following sed script:

```
# Remove declarations in classes.
/MOZ_DECL_USE_GUARD_OBJECT_NOTIFIER/d
/MOZ_GUARD_OBJECT_NOTIFIER_INIT/d

# Remove individual macros, carefully.
{
  # We don't have to worry about substrings here because the closing
  # parenthesis "anchors" the match.
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_IN_IMPL)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_IN_IMPL)/)/g;

  # Remove the longer identifier first.
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_TO_PARENT//g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM//g;
}

# Remove the actual include.
\@# *include "mozilla/GuardObjects.h"@d
```

and running:

```
find . -name \*.cpp -o -name \*.h | grep -v 'GuardObjects.h' |xargs sed -i -f script 2>/dev/null
mach clang-format
```

Differential Revision: https://phabricator.services.mozilla.com/D85168
2020-07-30 14:22:38 +00:00
Nika Layzell d0686776d2 Bug 1648955 - Check parent WC is in-proc rather than parent BC nsDocShell to tree, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D85309
2020-07-30 12:27:12 +00:00
Kashav Madan 75b193e637 Bug 1655549 - Implement BrowsingContext::GetAllBrowsingContextsInSubtree, r=nika
Differential Revision: https://phabricator.services.mozilla.com/D85311
2020-07-29 21:10:36 +00:00
Steven MacLeod 2e5bd98b61 Bug 1647449 - fix nsDocShell::DetermineContentType to work for OOP frames. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D85194
2020-07-29 15:41:40 +00:00
Sebastian Streich fb1d1dc1df Bug 1558394 - Pass the TriggeringSandboxFlags to nsILoadinfo r=ckerschb,smaug,necko-reviewers,valentin
Add triggering Sandbox flags to loadinfo
***
Pass triggering Flags into Loadinfo

***
Fix triggeringSandboxflags passing

Differential Revision: https://phabricator.services.mozilla.com/D69588
2020-07-29 11:43:23 +00:00
Peter Van der Beken bcde4b996a Bug 1655735 - Remove nsIDocShell::GetOSHEId. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D85146
2020-07-28 14:17:49 +00:00
Butkovits Atila cf561cece0 Backed out 5 changesets (bug 1652144, bug 1654569, bug 1652085) for assertion failure nsDocShell.cpp. CLOSED TREE
Backed out changeset 4388af0c7d95 (bug 1654569)
Backed out changeset 66d5bb2ff027 (bug 1652085)
Backed out changeset 05132c178b4f (bug 1652144)
Backed out changeset fbdc7fd9cb96 (bug 1652144)
Backed out changeset 920a06a52b8b (bug 1652144)
2020-07-26 11:12:52 +03:00
Nika Layzell 09b3c13a42 Bug 1648955 - Stop process changing loads in inactive subframes, r=mattwoodrow,annyG
Differential Revision: https://phabricator.services.mozilla.com/D84752
2020-07-24 22:19:38 +00:00
Nika Layzell 82d3bd6bd5 Bug 1654569 - Keep BrowsingContextGroup alive throughout the process switch, r=farre,annyG
This builds on the new API added in bug 1652085 to reduce the chance of a
different BrowsingContextGroup instance being used for process selection at the
start of a process switch, and BrowsingContext creation at the end.

While this would probably not be a serious issue right now, as we always have
only a single "extension" process, it could become an issue in the future if the
specific group specifier is used in more places.

Differential Revision: https://phabricator.services.mozilla.com/D84549
2020-07-24 20:24:48 +00:00
Nika Layzell 9ad094035e Bug 1652085 - Delay BrowsingContextGroup destruction until acked, r=farre
This should ensure that any BrowsingContexts racily created during the discard
process don't end up creating a separate BrowsingContextGroup from their
relatives, and triggering group mismatch assertions.

Differential Revision: https://phabricator.services.mozilla.com/D84548
2020-07-24 20:24:45 +00:00
Nika Layzell fc494ad88c Bug 1652144 - Part 2: Consider current BrowsingContextGroup for process selection, r=farre
This requires keeping track of the current process used to host documents with a
particular remote type loaded in each BrowsingContextGroup. Due to lifecycle
oddities, this set is kept separate from the existing subscribers set on
BrowsingContextGroup.

Differential Revision: https://phabricator.services.mozilla.com/D84061
2020-07-24 20:24:36 +00:00
Nika Layzell 03de005ca0 Bug 1652144 - Part 1: Remove unused argument from process launch methods, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D84060
2020-07-24 20:24:33 +00:00
Olli Pettay 1b3d2a37fb Bug 1647229 - Synchronize layouthistorystate to parent process, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D81753
2020-07-23 19:35:29 +00:00
Emilio Cobos Álvarez ff61891772 Bug 1653011 - Simplify and make WeakPtr<Derived> usable and compact. r=froydnj,sg,geckoview-reviewers,jgilbert,kvark,snorp
Having two classes in the inheritance chain inherit from SupportsWeakPtr
now won't compile, but you can use WeakPtr<Derived> when any base class
inherits from SupportsWeakPtr.

Differential Revision: https://phabricator.services.mozilla.com/D83674
2020-07-23 14:51:46 +00:00
prathiksha 37e1247796 Bug 1653839 - Fix error 'mozilla/dom/RTCCertificateBinding.h' file not found on mingw builds. r=keeler
Differential Revision: https://phabricator.services.mozilla.com/D84480
2020-07-22 16:22:55 +00:00
Jonathan Almeida [:jonalmeida] e9a6ea525b Bug 1607092 - Add new quote from Book of Mozilla for GeckoView r=geckoview-reviewers,Pike,agi
Differential Revision: https://phabricator.services.mozilla.com/D80575
2020-07-07 02:22:07 +00:00
Simon Giesecke e443211b53 Bug 1653229 - Remove unnecessary includes for BindingUtils.h. r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D83771
2020-07-22 15:12:10 +00:00
Simon Giesecke 2d57d60bcc Bug 1653000 - Use a fold expression within EachIndexInner instead of recursion. r=nika,farre
Differential Revision: https://phabricator.services.mozilla.com/D84131
2020-07-22 09:43:28 +00:00
Nika Layzell 49c7080ba4 Bug 1653000 - Part 2: Refactor CreateDetached to reduce callers of SetWithoutSyncing, r=farre
With the new implementation from part 1, this is now shorter to write than it
would be before.

Depends on D84063

Differential Revision: https://phabricator.services.mozilla.com/D84064
2020-07-22 09:13:20 +00:00
Nika Layzell dc09e15686 Bug 1653000 - Part 1: Switch away from tuples in SyncedContext, r=farre,sg
This should help reduce the overhead of template instantiation in C++ code.

Differential Revision: https://phabricator.services.mozilla.com/D84063
2020-07-22 14:07:26 +00:00
Simon Giesecke 3d27322bc3 Bug 1653000 - Declare WindowGlobalInit and SyncedContextInitializer uncomparable and remove unused equality operators. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D84299
2020-07-22 11:48:11 +00:00
James Willcox ecaad75230 Bug 1639577 - Only suspend GeckoView tabs that are alone in their BrowsingContextGroup r=nika,geckoview-reviewers,agi
This avoids problems where a foreground tab tries to communicate with a background
tab via `window.opener`, but is unable to because the background tab
is suspended.

Differential Revision: https://phabricator.services.mozilla.com/D83693
2020-07-21 21:04:53 +00:00
Dan Glastonbury 081870285c Bug 1646899 - P4: Handle object & embed via DocumentChannel. r=mattwoodrow,jya
Pass internal content policy type to DLL and switch behavior depending on type
being loaded. This implementation immediately redirects channel back to the
content process for further handling.



Depends on D80406

Differential Revision: https://phabricator.services.mozilla.com/D80407
2020-07-21 01:01:05 +00:00
Dan Glastonbury 06cb85265c Bug 1646899 - P3: Modify CanUseDocumentChannel to take necessary vars. r=mattwoodrow
Allows checking if DocumentChannel can be used with out creating an
nsDocShellLoadState object.



Depends on D80405

Differential Revision: https://phabricator.services.mozilla.com/D80406
2020-07-21 01:01:03 +00:00
prathiksha 78c662789a Bug 1617987 - Fix URLs by prefixing www. when users encounter bad cert domain errors. r=nika,keeler
Differential Revision: https://phabricator.services.mozilla.com/D82024
2020-07-18 13:38:59 +00:00
Marco Bonardo 9717edb569 Bug 1637745. r=Gijs,necko-reviewers,mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D80345
2020-07-17 13:45:58 +00:00
Paul Bone 02b5195413 Bug 1653482 - Tidy up after Bug 1647109 r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D83897
2020-07-17 09:39:59 +00:00
Olli Pettay 306b718cb8 Bug 1602115, make it possible to test async history.length handling even when session history lives in the child process, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D79198
2020-07-16 23:04:18 +00:00
Olli Pettay 41fc87999f Bug 1602115 - Make history.length Fission compatible, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D79197
2020-07-16 22:23:29 +00:00
Kris Maglione 5cad4b348e Bug 1652849: Use NotifyWhenScriptSafe for some additional observers. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D83845
2020-07-16 20:44:51 +00:00
Edgar Chen 86341ec4ef Bug 1653214 - Part 2: Remove nsIBaseWindow::Create; r=nika
Differential Revision: https://phabricator.services.mozilla.com/D83767
2020-07-16 20:42:20 +00:00
Edgar Chen beeae4cb08 Bug 1653214 - Part 1: Merge implementations of nsDocShell::Create into nsDocShell::InitWindow; r=nika
Differential Revision: https://phabricator.services.mozilla.com/D83766
2020-07-16 20:42:02 +00:00
Razvan Maries 4ccaec8564 Backed out 3 changesets (bug 1653123, bug 1602115) for perma failures on test_history_length_during_pageload.html. CLOSED TREE
Backed out changeset 6b3c0f542ef3 (bug 1653123)
Backed out changeset 951c0fd65a00 (bug 1602115)
Backed out changeset 258d0ebd9e34 (bug 1602115)
2020-07-16 23:21:18 +03:00
alwu 37f08f36a0 Bug 1647430 - part2 : store `DocTreeHadAudibleMedia` in WindowContext. r=nika
After we enable Fissions, we can't always access the top level document because it might be in another process.

Therefore, we should move `mDocTreeHadAudibleMedia` from document to the top window context, which can ensure that we set the value correctly even if setting `mDocTreeHadAudibleMedia` happens in a different process which is different from the process where the top level document exists.

Differential Revision: https://phabricator.services.mozilla.com/D83162
2020-07-16 19:53:49 +00:00
Kris Maglione c75a803c6e Bug 1646542: Fix GetInProcessParent usage in IsSameOrAncestor. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80097
2020-07-15 20:17:52 +00:00
Olli Pettay e702898d75 Bug 1602115, make it possible to test async history.length handling even when session history lives in the child process, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D79198
2020-07-16 19:02:49 +00:00
Olli Pettay c142af0f58 Bug 1602115 - Make history.length Fission compatible, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D79197
2020-07-16 19:01:36 +00:00
Peter Van der Beken 9db58fa8c3 Bug 1648040 - Use the new session history if pref is on. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D80885
2020-07-16 14:04:59 +00:00
alwu 1493d7798d Bug 1621403 - part2 : implement `seekto` action. r=chunmin,emilio
Implement `Seekto` action [1]. In addtion, as `seekto` can go with additional properties, we create a new structure `MediaControlAction` to wrap `MediaControlKey` and `SeekDetails`, which can be sent with `seekto`.

[1] https://w3c.github.io/mediasession/#dom-mediasessionaction-seekto

Differential Revision: https://phabricator.services.mozilla.com/D82816
2020-07-16 00:16:33 +00:00
Peter Van der Beken da46069826 Bug 1648038 - Create session history entry in the parent without checking if session history is on for the browsing context, because we only find out later if session history is disabled. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D80884
2020-07-14 10:41:04 +00:00
Peter Van der Beken 1ca3ccc2c4 Bug 1648038 - Don't require session history object when creating an entry. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D80883
2020-07-14 11:14:46 +00:00
Olli Pettay b2c2617436 Bug 1648400 - Make it possible to get back to nsISHEntry from SessionHistoryInfo ID, r=peterv
Using raw pointer to the hashtable to avoid static constructors.

Differential Revision: https://phabricator.services.mozilla.com/D81353
2020-07-15 15:54:02 +00:00
Frederik Braun a7153982e8 Bug 1366973: Rename security flags to not contain DATA anymore r=geckoview-reviewers,ckerschb,snorp
Differential Revision: https://phabricator.services.mozilla.com/D83490
2020-07-15 11:20:45 +00:00
Marco Bonardo 7e76f843c7 Bug 1641467 - Remove temporary browser.fixup.defaultToSearch feature pref and its code. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D83554
2020-07-15 09:53:04 +00:00
Olli Pettay 58ab7096a2 Bug 1647431, make ReportShadowDOMUsage Fission compatible, r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D83471
2020-07-14 11:22:20 +00:00
Razvan Maries 4f6b5e6e2a Backed out 2 changesets (bug 1648038) for build bustages on nsDocShell.cpp. CLOSED TREE
Backed out changeset 78b8a2b9277a (bug 1648038)
Backed out changeset b6b620d72e6b (bug 1648038)
2020-07-14 12:17:31 +03:00
Peter Van der Beken 48cb1143b8 Bug 1648038 - Create session history entry in the parent without checking if session history is on for the browsing context, because we only find out later if session history is disabled. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D80884
2020-07-14 08:57:59 +00:00
Peter Van der Beken f481f2b486 Bug 1648038 - Don't require session history object when creating an entry. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D80883
2020-07-14 08:57:54 +00:00
Peter Van der Beken c7c65a2a89 Bug 1644140 - Remove nsDocShell::AddChildSHEntryInternal and make some session history code in nsDocShell work with fission. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D78686
2020-07-13 15:42:15 +00:00
Narcis Beleuzu 8981494089 Backed out 5 changesets (bug 1646899) for mochitest failures on DocumentLoadListener.cpp . CLOSED TREE
Backed out changeset f41ac122a801 (bug 1646899)
Backed out changeset 86a5e0827050 (bug 1646899)
Backed out changeset d2fd0f955e24 (bug 1646899)
Backed out changeset 7a7194146fe1 (bug 1646899)
Backed out changeset 4731d76dae88 (bug 1646899)
2020-07-13 05:43:30 +03:00
Dan Glastonbury f5fd7b3d97 Bug 1646899 - P4: Handle object & embed via DocumentChannel. r=mattwoodrow,jya
Pass internal content policy type to DLL and switch behavior depending on type
being loaded. This implementation immediately redirects channel back to the
content process for further handling.

Differential Revision: https://phabricator.services.mozilla.com/D80407
2020-07-13 00:48:57 +00:00
Dan Glastonbury 8847465b59 Bug 1646899 - P3: Modify CanUseDocumentChannel to take necessary vars. r=mattwoodrow
Allows checking if DocumentChannel can be used with out creating an
nsDocShellLoadState object.

Differential Revision: https://phabricator.services.mozilla.com/D80406
2020-07-13 00:48:54 +00:00
Kris Maglione b6be72f351 Bug 1649554: Part 1 - Move deprecated component registration helpers out of XPCOMUtils. r=mccr8,remote-protocol-reviewers,marionette-reviewers,perftest-reviewers,webcompat-reviewers,whimboo,twisniewski
Differential Revision: https://phabricator.services.mozilla.com/D81749
2020-07-10 23:58:30 +00:00
Kris Maglione 9d78661f88 Bug 1649221: Update ChromeUtils.generateQI callers to pass strings. r=mccr8,remote-protocol-reviewers,marionette-reviewers,perftest-reviewers,webcompat-reviewers,geckoview-reviewers,preferences-reviewers,agi,whimboo,Bebe,twisniewski
Differential Revision: https://phabricator.services.mozilla.com/D81594
2020-07-10 23:58:28 +00:00
Randell Jesup 4238e3d8e8 Bug 1648583: Add GetCurrentTopByBrowserId() to get the BrowsingContext for a tab r=nika
Differential Revision: https://phabricator.services.mozilla.com/D81181
2020-07-09 20:34:06 +00:00
Matt Woodrow 17fbf88433 Bug 1649879 - Handle URIFixup that happens on a failed channel in DocumentLoadListener if available, rather than waiting for it to reach nsDocShell. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D81947
2020-07-08 23:38:22 +00:00
Matt Woodrow 6aac98f0a2 Bug 1649879 - Implement WebNavigationFlagsToFixupFlags in C++ so that we avoid needing to call into the URIFixup JS module. r=kmag
This should be the exact same code, just avoiding needing to create the URIFixup service in order to run it.

Differential Revision: https://phabricator.services.mozilla.com/D81945
2020-07-08 23:37:42 +00:00
Matt Woodrow 655377eb57 Bug 1649879 - Don't create nsIURIFixupInfo in content process nsDocShellLoadState construction. r=kmag
Rather than constructing an nsIURIFixupInfo from the IPC call return valuess, and then immediately querying the same data, this just use the results directly.

It also moves the firing of "keyword-uri-fixup" observers to the parent process side. As far as I can tell, the only consumer was URIFixupChild, which was also forwarding them to the parent process.

Differential Revision: https://phabricator.services.mozilla.com/D81944
2020-07-08 23:37:29 +00:00
Matt Woodrow 38e792c270 Bug 1649879 - Fold GetFixupURIInfo into the calling code. r=kmag
This should be a no-op change, just to make the next patch a small diff.

Differential Revision: https://phabricator.services.mozilla.com/D81943
2020-07-08 23:37:17 +00:00
Nika Layzell 3f8ded27c9 Bug 1650163 - Part 2: Add a NOT_REMOTE_TYPE define to clarify calling code, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D82106
2020-07-08 20:16:04 +00:00
Nika Layzell 22a65a237e Bug 1650163 - Part 1: Switch native remoteType values to nsCString, r=farre,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D82104
2020-07-08 20:15:59 +00:00
Mihai Alexandru Michis 1ba2a3f6f6 Backed out 3 changesets (bug 1650163) for causing bustages in nsContentSecurityManager.cpp
CLOSED TREE

Backed out changeset 51d7c644a1e6 (bug 1650163)
Backed out changeset 3d2b6908447a (bug 1650163)
Backed out changeset 79141707d47b (bug 1650163)
2020-07-08 21:18:44 +03:00
Nika Layzell 64031d88e9 Bug 1650163 - Part 2: Add a NOT_REMOTE_TYPE define to clarify calling code, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D82106
2020-07-08 01:13:45 +00:00
Nika Layzell c850a94434 Bug 1650163 - Part 1: Switch native remoteType values to nsCString, r=farre,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D82104
2020-07-08 14:54:48 +00:00
julianwels c44ea283e8 Bug 1644456 - Manage HTTPS-Only Mode permission with SitePermissions interface. r=necko-reviewers,pbz,dragana
Differential Revision: https://phabricator.services.mozilla.com/D79427
2020-07-08 12:06:02 +00:00
Narcis Beleuzu 8359f16846 Backed out 7 changesets (bug 1650163, bug 1649477) for bustages on JSActor.cpp . CLOSED TREE
Backed out changeset 4a21afb65254 (bug 1650163)
Backed out changeset c41753a56f5a (bug 1650163)
Backed out changeset 5fb444c35764 (bug 1650163)
Backed out changeset 830aa93d2b0c (bug 1649477)
Backed out changeset eca6e9dce450 (bug 1649477)
Backed out changeset 5b217aa88289 (bug 1649477)
Backed out changeset 8959d02b840f (bug 1649477)
2020-07-08 04:09:27 +03:00
Nika Layzell a3b4b6cba4 Bug 1650163 - Part 2: Add a NOT_REMOTE_TYPE define to clarify calling code, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D82106
2020-07-06 20:27:59 +00:00
Nika Layzell df351180c3 Bug 1650163 - Part 1: Switch native remoteType values to nsCString, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D82104
2020-07-06 20:30:58 +00:00
Nika Layzell cafcceeb34 Bug 1599579 - Part 1: Add the ability to specify a specific BrowsingContextGroup during process switch, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D80254
2020-07-06 20:10:43 +00:00
Paul Bone 4cb7f584bf Bug 1647109 - Set the child history as in process when the BC is in process r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D82367
2020-07-07 01:10:01 +00:00
Matt Woodrow 817b91a023 Bug 1581500 - Don't assert if there are multiple process switches in-flight, since we don't do anything to prevent this. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D82309
2020-07-06 19:31:33 +00:00
Kris Maglione eb99a31f3b Bug 1646609: Don't assert when an inactive/OOP inner window tries to navigate an OOP BrowsingContext. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D81731
2020-07-06 19:56:32 +00:00
Christoph Kerschbaumer 402b0a5c46 Bug 1647719: Introduce Pref for HTTS-Only in Private Browsing Mode. r=JulianWels,jcj
Differential Revision: https://phabricator.services.mozilla.com/D80873
2020-07-06 08:52:02 +00:00
Coroiu Cristina 057efa89c8 Backed out 5 changesets (bug 1649879) for browser-chrome failures at browser/base/content/test/tabs/browser_progress_keyword_search_handling.js
Backed out changeset f9670eed4ac5 (bug 1649879)
Backed out changeset 76ab8adad34b (bug 1649879)
Backed out changeset 6dc2e9474f43 (bug 1649879)
Backed out changeset 6f905d33681f (bug 1649879)
Backed out changeset 13b19e14a332 (bug 1649879)
2020-07-06 10:44:56 +03:00
Matt Woodrow 1ef58514bd Bug 1649879 - Handle URIFixup that happens on a failed channel in DocumentLoadListener if available, rather than waiting for it to reach nsDocShell. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D81947
2020-07-06 04:29:33 +00:00
Matt Woodrow 830392048a Bug 1649879 - Implement WebNavigationFlagsToFixupFlags in C++ so that we avoid needing to call into the URIFixup JS module. r=kmag
This should be the exact same code, just avoiding needing to create the URIFixup service in order to run it.

Differential Revision: https://phabricator.services.mozilla.com/D81945
2020-07-06 04:29:08 +00:00
Matt Woodrow 970c9c00b8 Bug 1649879 - Don't create nsIURIFixupInfo in content process nsDocShellLoadState construction. r=kmag
Rather than constructing an nsIURIFixupInfo from the IPC call return valuess, and then immediately querying the same data, this just use the results directly.

It also moves the firing of "keyword-uri-fixup" observers to the parent process side. As far as I can tell, the only consumer was URIFixupChild, which was also forwarding them to the parent process.

Differential Revision: https://phabricator.services.mozilla.com/D81944
2020-07-06 04:29:06 +00:00
Matt Woodrow bdc50cf48e Bug 1649879 - Fold GetFixupURIInfo into the calling code. r=kmag
This should be a no-op change, just to make the next patch a small diff.

Differential Revision: https://phabricator.services.mozilla.com/D81943
2020-07-06 04:29:04 +00:00
Olli Pettay 3305455259 Bug 1649772 - Simplify nsIWebPageDescriptor, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D81871
2020-07-02 14:58:15 +00:00
Henri Sivonen 356e90f2b6 Bug 1647301 - Remove forceCharset from nsIContentViewer. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D80470
2020-07-02 06:23:24 +00:00
Matt Woodrow ed35966cff Bug 1648679 - Allow setting UseErrorPages from the parent process. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D81484
2020-07-02 00:53:18 +00:00
Simon Giesecke 9364b353d4 Bug 1648010 - Remove NS_NAMED_LITERAL_CSTRING and NS_NAMED_LITERAL_STRING macros. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80631
2020-07-01 08:42:31 +00:00
Simon Giesecke e3c223da3e Bug 1648010 - Fix uses of NS_LITERAL_STRING with C string literals. r=geckoview-reviewers,agi,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80861
2020-07-01 08:34:12 +00:00
Simon Giesecke cd8b8939b9 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
Coroiu Cristina 31d8600b73 Backed out changeset 6debf3390ba2 (bug 1646609) for mochitest failures on docshell/base/BrowsingContext.cpp 2020-07-01 08:39:53 +03:00
Kris Maglione d646c6cbe9 Bug 1646609: Don't assert when an inactive/OOP inner window tries to navigate an OOP BrowsingContext. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D81731
2020-06-30 22:19:56 +00:00
Butkovits Atila e01165cdfc Backed out changeset 6d882a42cfbe (bug 1646519) for causing failure on WindowContext.cpp. CLOSED TREE 2020-07-01 01:11:52 +03:00
Kris Maglione 6f9317a061 Bug 1646519: Fix GetInProcessTopInternal usage in GetZone. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80092
2020-06-25 21:13:10 +00:00
Butkovits Atila 146ad267af Backed out 6 changesets (bug 1599579) for bc failures at test_chrome_ext_contentscript_data_uri.html.
Backed out changeset b767f26b10ed (bug 1599579)
Backed out changeset c5bc0ea42193 (bug 1599579)
Backed out changeset cfdd8d5973d4 (bug 1599579)
Backed out changeset 73f6c956fc30 (bug 1599579)
Backed out changeset 14698ab42ee4 (bug 1599579)
Backed out changeset b4bdd8759433 (bug 1599579)
2020-06-30 21:41:27 +03:00
Nika Layzell 824c8da580 Bug 1599579 - Part 1: Add the ability to specify a specific BrowsingContextGroup during process switch, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D80254
2020-06-30 16:52:53 +00:00
Matt Woodrow c056aaf0b8 Bug 1623461 - Clear nsDocShell::mBlankTiming when providing an existing timing object from a process switch. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D81636
2020-06-30 03:32:43 +00:00
Matt Woodrow 7d65de1298 Bug 1647557 - Add preffed-off code for controlling document loads directly from CanonicalBrowsingContext. r=nika,jya,necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D70629
2020-06-30 01:19:15 +00:00
Matt Woodrow 751fe6358b Bug 1647557 - Implement RemoteWebProgress using CanonicalBrowsingContext instead of MessageManager. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D70626
2020-06-30 01:18:47 +00:00
Marco Bonardo d606440481 Bug 1646928 - Bogus scheme typo correction in URIFixup. r=harry
Differential Revision: https://phabricator.services.mozilla.com/D81329
2020-06-29 14:06:06 +00:00
Matt Woodrow 269822540c Bug 1646892 - Disable DocumentChannel process switching into the parent process when the old-RDM is running, since we don't support switching out of a nested <iframe mozbrowser>. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D81262
2020-06-27 04:10:48 +00:00
Matt Woodrow 213fab51e4 Bug 1646892 - Allow DocumentChannel process switches into the parent process. r=jya,nika
Differential Revision: https://phabricator.services.mozilla.com/D80327
2020-06-27 04:10:23 +00:00
Gabriel Luong bcf1de6e49 Bug 1647972 - Add a new PlatformOverride field onto BrowsingContext r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D81285
2020-06-26 14:17:08 +00:00
Kris Maglione c04b0a1b46 Bug 1648270: Get rid of unused ContentParent 'opener' field. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80971
2020-06-26 16:26:50 +00:00
Peter Van der Beken 26e71bd99d Bug 1648033 - Call session history listener for reload in the parent process if session history in the parent is on. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D80882
2020-06-26 14:34:12 +00:00
Dorel Luca 88ce7f0c92 Backed out changeset c6d8b979af47 (bug 1644140) for causing Bug 1644213 to regress 2020-06-26 14:21:41 +03:00
Butkovits Atila f47ca94618 Backed out changeset 840d3dc313f1 (bug 1648270) for causing build bustages on ProtocolFuzzer.cpp. CLOSED TREE 2020-06-26 01:57:49 +03:00
Matt Woodrow 8fa4e5c092 Bug 1626362 - Make mOriginalUriString available in DocumentLoadListener and docshell. r=nika,necko-reviewers,valentin
This also fixes a bug where we were setting mOriginalUriString in docshell before InternalLoad (which clears it), instead of after.

Differential Revision: https://phabricator.services.mozilla.com/D80110
2020-06-25 04:33:14 +00:00
Matt Woodrow f0b769ce30 Bug 1626362 - Move nsDocShell::mUserErrorPages to BrowsingContext. r=nika
This is only used by Thunderbird, and is always true for Firefox. I've made CanSet only allow the embedder process, which is the desired behaviour, and should work for non-e10s.

Differential Revision: https://phabricator.services.mozilla.com/D80109
2020-06-25 04:32:51 +00:00
Matt Woodrow 19c4b43cba Bug 1626362 - Move url classifier notifications to parent process. r=nika,necko-reviewers,JuniorHsu
We shouldn't need to handle this with an early return in docshell, since the classifier failure codes won't display an error page anyway.

Differential Revision: https://phabricator.services.mozilla.com/D80108
2020-06-25 04:32:28 +00:00
Matt Woodrow 5f0218a196 Bug 1626362 - Combine two load error page functions into one. r=nika
I don't think we need these to be done at different times, since the set of checks that happen before uri fixup are error codes that won't be affected by fixup.

Differential Revision: https://phabricator.services.mozilla.com/D80107
2020-06-25 04:32:06 +00:00
Matt Woodrow 0f894bda06 Bug 1626362 - Move checks for deciding if we should load an error page into helpers. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80106
2020-06-25 04:32:04 +00:00
Matt Woodrow d545a61edb Bug 1626362 - Move docshell uri fixup code into a static helper. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80104
2020-06-25 04:32:01 +00:00
Kris Maglione f1d85755a8 Bug 1648270: Get rid of unused ContentParent 'opener' field. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80971
2020-06-25 20:30:33 +00:00
Butkovits Atila 366cbc5518 Backed out changeset 3468660179b1 (bug 1648270) for bustages at ContentParent.h. CLOSED TREE 2020-06-25 22:06:46 +03:00
Olli Pettay e7b1c3e32f Bug 1647307 - Simplify SessionHistoryInfo ID handling, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D80553
2020-06-25 16:20:32 +00:00
Kris Maglione f465a90bb0 Bug 1648270: Get rid of unused ContentParent 'opener' field. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80971
2020-06-25 17:53:39 +00:00
Henri Sivonen 2d63627ce0 Bug 1647728 - Unify kCharsetFromUserForced and kCharsetFromParentForced. r=m_kato
For making further changes less messy.

Differential Revision: https://phabricator.services.mozilla.com/D80813
2020-06-25 03:25:03 +00:00
Eden Chuang a383fd6b63 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
Csoregi Natalia e67ceab432 Backed out 9 changesets (bug 1626362) for failures on a-download-click-404.html. CLOSED TREE
Backed out changeset d29ac651a4fd (bug 1626362)
Backed out changeset 5ba5cf98a95d (bug 1626362)
Backed out changeset 69b5b01da9c1 (bug 1626362)
Backed out changeset 1d31061f4421 (bug 1626362)
Backed out changeset a627870e35fb (bug 1626362)
Backed out changeset 5f3ee46032b6 (bug 1626362)
Backed out changeset 5b170666991e (bug 1626362)
Backed out changeset 4d31c2ede058 (bug 1626362)
Backed out changeset 66a9ba0f87cb (bug 1626362)
2020-06-25 02:45:52 +03:00
Matt Woodrow e9d06799ca Bug 1626362 - Make mOriginalUriString available in DocumentLoadListener and docshell. r=nika,necko-reviewers,valentin
This also fixes a bug where we were setting mOriginalUriString in docshell before InternalLoad (which clears it), instead of after.

Differential Revision: https://phabricator.services.mozilla.com/D80110
2020-06-24 22:03:39 +00:00
Matt Woodrow 3eda9e7d73 Bug 1626362 - Move nsDocShell::mUserErrorPages to BrowsingContext. r=nika
This is only used by Thunderbird, and is always true for Firefox. I've made CanSet only allow the embedder process, which is the desired behaviour, and should work for non-e10s.

Differential Revision: https://phabricator.services.mozilla.com/D80109
2020-06-24 22:03:16 +00:00
Matt Woodrow 87cdbac816 Bug 1626362 - Move url classifier notifications to parent process. r=nika,necko-reviewers,JuniorHsu
We shouldn't need to handle this with an early return in docshell, since the classifier failure codes won't display an error page anyway.

Differential Revision: https://phabricator.services.mozilla.com/D80108
2020-06-24 22:03:04 +00:00
Matt Woodrow 55f60f13b9 Bug 1626362 - Combine two load error page functions into one. r=nika
I don't think we need these to be done at different times, since the set of checks that happen before uri fixup are error codes that won't be affected by fixup.

Differential Revision: https://phabricator.services.mozilla.com/D80107
2020-06-24 22:02:56 +00:00
Matt Woodrow 89307a1e82 Bug 1626362 - Move checks for deciding if we should load an error page into helpers. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80106
2020-06-24 22:01:55 +00:00
Matt Woodrow 28c5ddf563 Bug 1626362 - Move docshell uri fixup code into a static helper. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80104
2020-06-24 22:01:43 +00:00
Matt Woodrow 00dc8d3d73 Bug 1646582 - Remove DOM(Inner)WindowID from nsIWebProgress. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80128
2020-06-24 19:58:15 +00:00
Jared Wein 7639e4f712 Bug 1643093 - Remove references to 'whitelist' in browser/components/urlbar. r=jaws
Depends on D78124

Differential Revision: https://phabricator.services.mozilla.com/D78122
2020-06-24 15:59:04 +00:00
Dorel Luca 90a64f0da1 Backed out 4 changesets (bug 1646582) for Browser-chrome failures on nsIWebProgress.addProgressListener. CLOSED TREE
Backed out changeset 2111dd0d6dc0 (bug 1646582)
Backed out changeset e6c496c5a4b1 (bug 1646582)
Backed out changeset 49b4ae8c8be0 (bug 1646582)
Backed out changeset 9d42ec89240c (bug 1646582)
2020-06-24 07:50:07 +03:00
Matt Woodrow 21ac707a3b Bug 1646582 - Remove DOM(Inner)WindowID from nsIWebProgress. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80128
2020-06-24 03:24:21 +00:00
Andreas Farre 78dfb0a991 Bug 1590762 - Part 3: Keep track of current loads in BrowsingContext. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D75110
2020-06-23 13:01:37 +00:00
Andreas Farre ca5db92916 Bug 1590762 - Part 2: Bump the id for channel registration to uint64_t. r=mattwoodrow,necko-reviewers,valentin
This patch also makes the identifier for channels global, in the sense
that the generated identifier is generated outside of and passed to
the nsIRedirectChannelRegistrar.

Differential Revision: https://phabricator.services.mozilla.com/D79820
2020-06-23 13:18:56 +00:00
Jean-Yves Avenard 87438519f0 Bug 1637500 - P2. Rename methods as they are not always dealing with "threads". r=froydnj
Before P1, GetCurrentThreadSerialEventTarget would have always returned the same data as NS_GetCurrentThread, making the comment incorrect Now it will properly return the running TaskQueue if any.

This change of name more clearly exposes what they are doing, as we aren't always dealing with threads directly; but a nsISerialEventTarget

Differential Revision: https://phabricator.services.mozilla.com/D80354
2020-06-23 05:05:36 +00:00
Narcis Beleuzu b894acb874 Backed out 4 changesets (bug 1646582) for mochitest failures on test_ext_tabs_create.html . CLOSED TREE
Backed out changeset ce5cdfc5d7cf (bug 1646582)
Backed out changeset 2ac69a2b6708 (bug 1646582)
Backed out changeset 74d89cb24414 (bug 1646582)
Backed out changeset 7de0ff1af560 (bug 1646582)
2020-06-23 06:30:03 +03:00
Matt Woodrow 79562a2ca1 Bug 1646582 - Remove DOM(Inner)WindowID from nsIWebProgress. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80128
2020-06-23 01:23:57 +00:00
Kashav Madan 960bd54cfd Bug 1646563 - Remove BrowserId from nsFrameLoaderOwner, r=nika
We can just use BrowsingContext::BrowserId directly, so it's unnecessary to have
the field on nsFrameLoaderOwner as well.

This also makes it so that we only ever generate browser IDs in
BrowsingContext::CreatedDetached.

Differential Revision: https://phabricator.services.mozilla.com/D80121
2020-06-22 21:46:03 +00:00
Narcis Beleuzu 46e3b1ce2c Backed out 5 changesets (bug 1599579) for twinopen failures. CLOSED TREE
Backed out changeset 053229a30ef1 (bug 1599579)
Backed out changeset c2828aec4caf (bug 1599579)
Backed out changeset 085558fe56dc (bug 1599579)
Backed out changeset a4e7334f8ce6 (bug 1599579)
Backed out changeset 9ebd2eb155da (bug 1599579)
2020-06-23 02:23:48 +03:00
Nika Layzell 59e9c1cfcc Bug 1599579 - Part 1: Add the ability to specify a specific BrowsingContextGroup during process switch, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D80254
2020-06-22 20:43:14 +00:00
Nika Layzell 7c209a23b1 Bug 1646088 - Part 1: Keep processes alive during process switches, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D79888
2020-06-18 18:51:54 +00:00
Henri Sivonen a9061bdcce Bug 1646484 - Remove nsIDocShell::forcedCharset. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D80072
2020-06-18 01:18:11 +00:00
Mihai Alexandru Michis 287d6c29db Backed out 3 changesets (bug 1646088) for causing failures in test_multiple_nav_process_switches.
CLOSED TREE

Backed out changeset 8c4a24b91c88 (bug 1646088)
Backed out changeset ef746bdcbaf6 (bug 1646088)
Backed out changeset 77d15266af3c (bug 1646088)
2020-06-17 23:47:15 +03:00
Nika Layzell 05df8f2a96 Bug 1646088 - Part 1: Keep processes alive during process switches, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D79888
2020-06-17 15:43:35 +00:00
Kris Maglione 316de88922 Bug 1642425: Part 2 - Remove IsFrame() from GlobalWindow(Inner|Outer). r=smaug
It does not return sensible values under Fission.

Differential Revision: https://phabricator.services.mozilla.com/D77701
2020-06-17 18:01:02 +00:00
Kris Maglione 85c4e84fc5 Bug 1638153: Part 1 - Add topChromeWindow getter to CanonicalBrowsingContext. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D75431
2020-06-17 17:17:09 +00:00
Kris Maglione 394e6d02d5 Bug 1638153: Part 0 - Add Window.browsingContext getter. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D75430
2020-06-17 17:17:01 +00:00
Matt Woodrow d3e50c8f76 Bug 1644943 - Create single webprogress for CanonicalBrowsingContext, regardless of process the browser element contents are in. r=nika,kmag,Gijs
I think at this point we can remove all of RemoteWebProgressManager, some/all of the TabProgressListener recreations, and probably a bunch more.

Differential Revision: https://phabricator.services.mozilla.com/D79240
2020-06-17 02:59:29 +00:00
Razvan Maries c350ad5bd6 Backed out changeset f56d5efc5e43 (bug 1644943) for build bustages on nsFrameLoaderOwner.cpp. CLOSED TREE 2020-06-17 02:55:01 +03:00
Nicholas Nethercote a8f5f49b8a Bug 1645982 - Rename some service getters in `Services.py` to better match the types. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D79791
2020-06-16 23:32:21 +00:00
Matt Woodrow 645b2bc301 Bug 1644943 - Create single webprogress for CanonicalBrowsingContext, regardless of process the browser element contents are in. r=nika,kmag,Gijs
I think at this point we can remove all of RemoteWebProgressManager, some/all of the TabProgressListener recreations, and probably a bunch more.

Differential Revision: https://phabricator.services.mozilla.com/D79240
2020-06-16 23:24:49 +00:00
Kashav Madan 1a71fed80e Bug 1580766 - Add a unique ID for the BrowsingContext tree inside a browser element. r=kmag
This adds a `browserId` property to all browsing contexts. This ID is the same
for the entire tree of contexts inside a frame element. Each new top-level
context created for a given frame also inherits this ID. This allows identifying
the frame element for a given browsing context.

Originally authored by :mossop in D56245.

Differential Revision: https://phabricator.services.mozilla.com/D77911
2020-06-16 18:12:46 +00:00
Razvan Maries 73dfe9d277 Backed out changeset 585e0230b2d5 (bug 1580766) as requested. CLOSED TREE 2020-06-16 21:01:26 +03:00
Dave Townsend 7a5ade2788 Bug 1580766 - Add a unique ID for the BrowsingContext tree inside a browser element. r=kmag
This adds a `browserId` property to all browsing contexts. This ID is the same
for the entire tree of contexts inside a frame element. Each new top-level
context created for a given frame also inherits this ID. This allows identifying
the frame element for a given browsing context.

Originally authored by :mossop in D56245.

Differential Revision: https://phabricator.services.mozilla.com/D77911
2020-06-16 17:25:16 +00:00
Simon Giesecke 5bf5787445 Bug 1645339 - Use range-based for with nsTObserverArray in docshell. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D79493
2020-06-16 10:14:24 +00:00
Butkovits Atila 9e85a224ef Backed out changeset d9608e8bff0c (bug 1633338) on request by dev. a=backout 2020-06-16 12:05:54 +03:00
Simon Giesecke 1e42310e51 Bug 1645450 - Remove elements by index rather than searching in docshell. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D79513
2020-06-15 17:04:20 +00:00
Nika Layzell cde53b3bec Bug 1508306 - Part 1: Migate the Large-Allocation handler to DocumentLoadListener, r=mattwoodrow,necko-reviewers,geckoview-reviewers,agi,valentin
This removes the diagnostic warnings which used to be logged when the
Large-Allocation header was present, but failed to switch into a
Large-Allocation process. Due to the low adoption of the header, this shouldn't
be too large of a problem, but we can look into re-adding the diagnostics if
needed in the future.

The new codepath no longer performs multiple network requests for
Large-Allocation resources, and now relies on the battle-tested
DocumentLoadListener codepath for process switching.

Differential Revision: https://phabricator.services.mozilla.com/D78998
2020-06-15 23:24:07 +00:00
Nika Layzell 025dcf4a90 Bug 1640019 - Part 3: Also allow switching between remote and non-remote, r=mattwoodrow,necko-reviewers,valentin
Due to the PPDC process switching changes, we also handle switching between
remote and non-remote browsers with DocumentLoadListener. Adds support to
CanonicalBrowsingContext::ChangeFrameRemoteness to allow it to handle non-remote
browsers as well.

Differential Revision: https://phabricator.services.mozilla.com/D78971
2020-06-15 23:23:53 +00:00
Nika Layzell 0e74912c80 Bug 1640019 - Part 2: Use new process switch logic in tabbrowser, r=mattwoodrow,Gijs
Add a series of extra hooks and methods to allow tabbrowser to use the new
process switching codepath. This duplicates some of the logic from
`updateBrowserRemoteness` into event handlers.

Differential Revision: https://phabricator.services.mozilla.com/D78970
2020-06-15 23:23:46 +00:00