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

6081 Коммитов

Автор SHA1 Сообщение Дата
Andrew McCreight 9cc98c8bf5 Bug 1539948, part 2 - Make nsIWebNavigation and nsIWindowlessBrowser builtinclass. r=nika,Gijs
These two interfaces contain nostdcall methods, so they should be marked
builtinclass.

There is a JS implementation of nsIWebNavigation in RemoteWebNavigation,
but it appears to never be passed into C++, so it doesn't need to be
made into a "real" implementation of nsIWebNavigation that can be passed
through XPConnect.

Differential Revision: https://phabricator.services.mozilla.com/D98862
2020-12-09 02:40:14 +00:00
Razvan Maries 35ccea0325 Backed out 3 changesets (bug 1539948) for build bustages on nsISocketTransport.h. CLOSED TREE
Backed out changeset 81bed88d0adf (bug 1539948)
Backed out changeset 8bf24bdf431f (bug 1539948)
Backed out changeset ef4e49b3701d (bug 1539948)
2020-12-09 02:47:52 +02:00
Andrew McCreight a7c299978d Bug 1539948, part 2 - Make nsIWebNavigation and nsIWindowlessBrowser builtinclass. r=nika,Gijs
These two interfaces contain nostdcall methods, so they should be marked
builtinclass.

There is a JS implementation of nsIWebNavigation in RemoteWebNavigation,
but it appears to never be passed into C++, so it doesn't need to be
made into a "real" implementation of nsIWebNavigation that can be passed
through XPConnect.

Differential Revision: https://phabricator.services.mozilla.com/D98862
2020-12-08 21:22:31 +00:00
Emilio Cobos Álvarez 4fd5d13610 Bug 1680721 - Grant a single iframe without user interaction to top windows. r=smaug,johannh
Only for top windows because for nested iframes they could get around
this without being noticed by reloading themselves which is not great.

Differential Revision: https://phabricator.services.mozilla.com/D98775
2020-12-08 10:15:18 +00:00
Simon Giesecke 1c53236b70 Bug 1679272 - Include ScopeExit.h exactly where used. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D98888
2020-12-07 14:25:59 +00:00
Daisuke Akatsuka b4ec5e858f Bug 1638215: Use https for canonization the URL. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D97942
2020-12-07 01:54:05 +00:00
Razvan Maries fd89df3f6d Backed out changeset 432c83951167 (bug 1662265) for perma failures on test_sync_xhr_event_handling_switch_bcg.html. CLOSED TREE 2020-12-03 23:03:05 +02:00
Sean Feng f521450d39 Bug 1662265 - Fix input events handling for sync XHR when both TaskController and e10s are enabled r=smaug
There are two issues in our current setup

1) Input events which are occurring in the same tab are going to be lost
because sync XHR. We have event handling suppression for synx XHR, so input
events are going to be discarded.

2) Input events that are happening in another tab (same process as the
synx XHR tab) are not going to be delayed. This is not correct since
sync XHR should block the Javascript execution.

This patches fixes the above cases for when both TaskController and e10s are
enabled by suspending the InputTaskManager during sync XHR, which
delays the input event handling and keeps the events around.

Differential Revision: https://phabricator.services.mozilla.com/D90780
2020-12-03 03:13:04 +00:00
Tom Tung 80a5716001 Bug 1656768 - Propagate SessionStorage data in BackgroundSessionStorageManager to the new top browsing context while replacing the top context id; r=nika,dom-workers-and-storage-reviewers,asuth
### Story

While the exisiting top browsing context is replaced, SessionStorage relies on
itself been propagated by SessionStore. However, this has been disabled in
SessionHistory in the parent process.

Therefore, we need to propagate SessionStorage data by propagating
BackgroundSessionStorageManager.

### Notes

This patch assumes that the target top-level browsing context shouldn't have
been registered to BackgroundSessionStorageManager. If this can happen, we will
either need to merge SessionStorage data into it or find a proper (earlier)
place to update sManagers.

### Test Plan

Test: D97763
Try: https://treeherder.mozilla.org/jobs?repo=try&revision=2acc7b393fb80b640f4fbe3ade1da7dd440c380e&selectedTaskRun=KK6XhR-sQuqv5lcntVLc2w.0

Differential Revision: https://phabricator.services.mozilla.com/D98082
2020-12-03 14:19:35 +00:00
Narcis Beleuzu 07361535cd Backed out changeset f59efe5a5ef8 (bug 1638215) for bc failures on browser_tabDrop.js. CLOSED TREE 2020-12-03 17:25:28 +02:00
Daisuke Akatsuka e5a9f1aeee Bug 1638215: Use https for canonization the URL. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D97942
2020-12-03 11:21:36 +00:00
Emilio Cobos Álvarez 106b693662 Bug 1679456 - Use transient user activation for iframe external protocol blocking. r=smaug,edgar
I think this allows us to remove TryUsePopupOpeningToken (which is a similar
concept to consuming user activation), and also the ad-hoc <iframe> timing
thing we have from bug 1514547, which should be covered by the user activation
timeout.

Depends on D97640

Differential Revision: https://phabricator.services.mozilla.com/D98020
2020-11-30 16:16:41 +00:00
Steven MacLeod 4babbd5f25 Bug 1677774 - don't clear descendant's overrides when setting TouchEventsOverride. r=farre
This should prevent content process crashes when there are
cross-origin descendants with an override set.

There is a slight change in behaviour when an override is set after
a descendant context has previously set one. This shouldn't be a
problem since devtools only wants to expose touch simulation at the
tab level. Additionally this new behaviour is reasonable and would
allow devtools to implement the same semantics by doing the clearing
themselves (if needed).

Differential Revision: https://phabricator.services.mozilla.com/D97797
2020-11-27 14:53:27 +00:00
Olli Pettay 6fd3204d40 Bug 1679417 - Remove the UserActivationState field on BrowsingContext, r=edgar
Differential Revision: https://phabricator.services.mozilla.com/D98008
2020-11-26 18:51:29 +00:00
Olli Pettay f0bb22fdeb Bug 1674519, don't use speculative loading for session history initiated page loads, r=peterv
Depends on D97225

Differential Revision: https://phabricator.services.mozilla.com/D97325
2020-11-26 16:38:12 +00:00
Nika Layzell 5fbd298e36 Bug 1676892 - Remove non-subscribed hosts when destroying BrowsingContextGroup, r=farre
Before this change, a BrowsingContextGroup would fail to remove itself from a
ContentParent's mGroups table if the process was still launching when the BCG
was destroyed. This was because until the ContentParent had launched, it existed
only in the mHosts table, and not the mSubscribers table, but we only iterated
over the mSubscribers table.

This patch fixes that issue, by iterating over both tables when unsubscribing.
This will cause RemoveBrowsingContextGroup to be called twice on most
ContentParents, but that should not cause issues.

Differential Revision: https://phabricator.services.mozilla.com/D97788
2020-11-26 06:58:29 +00:00
Simon Giesecke dd80614fa0 Bug 1678062 - Remove unnecessary includes. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D97467

Depends on D96561
2020-11-23 16:12:02 +00:00
Simon Giesecke 6cba3845c8 Bug 1676364 - Remove unused includes from nsDocShell.h. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D96540

Depends on D96539
2020-11-23 16:09:17 +00:00
Simon Giesecke f15895390e Bug 1673931 - Avoid including Element.h from header files.
Differential Revision: https://phabricator.services.mozilla.com/D96535

Depends on D96534
2020-11-23 16:08:40 +00:00
Simon Giesecke 6fac745ea4 Bug 1673931 - Remove dependency of BindingUtils.h on Document.h.
Differential Revision: https://phabricator.services.mozilla.com/D95048

Depends on D95047
2020-11-23 16:08:03 +00:00
Simon Giesecke 5bfbb2a572 Bug 1673931 - Avoid including Document.h from header files. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D95046

Depends on D95045
2020-11-23 16:07:43 +00:00
Simon Giesecke 1ffd69fbb6 Bug 1660470 - Avoid including DocShellMessageUtils.h from header files. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D93239

Depends on D93238
2020-11-23 16:04:08 +00:00
Simon Giesecke 971b645fe3 Bug 1660470 - Add missing include directives/forward declarations. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D87865
2020-11-23 16:21:38 +00:00
Daisuke Akatsuka 0f2a371c85 Bug 1643850: Handle 'www.<something>' as a URI. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D97282
2020-11-21 00:48:43 +00:00
Steven MacLeod 6cd960cfb3 Bug 1585070 - move nsPIDOMWindowOuter::mIsActive to BrowsingContext. r=kmag
A new `BrowsingContext` field 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-11-20 15:16:58 +00:00
Kartikaya Gupta 558df38a4b Bug 1678334 - Mark some functions as const. r=tnikkel
This functions are conceptually getters and should be const.

Differential Revision: https://phabricator.services.mozilla.com/D97621
2020-11-19 22:44:42 +00:00
Anny Gakhokidze 7804c5bdd9 Bug 1661833 - Fix duplicate OnStateChange events during process switches, r=nika
Differential Revision: https://phabricator.services.mozilla.com/D96228
2020-11-19 23:21:04 +00:00
Emilio Cobos Álvarez c839b29aa8 Bug 1676996 - Don't try to process-switch a remote frame to local. r=nika
The guess in comment 3 is basically right, here's the relevant bits that
happen in that trace in order:

[content] nsFrameLoaderOwner::ChangeRemotenessCommon:
  frame becomes remote for the content process.
[parent] WindowGlobalParent::SendMakeFrameLocal (mIsDocumentLoad=true)
[content] ContentChild::SendCloneDocumentTreeInto
[parent] ContentParent::RecvCloneDocumentTreeInto
[content] WindowGlobalChild::RecvMakeFrameLocal

So basically the source frame we're cloning is mid-switch-to-local:
local already from the parent process POV, but still remote for the
child.

I think ignoring the clone in this case is fine (which will make the
print iframe just about:blank).

I've decided it to handle it in ChangeRemoteness but I could also handle
it in RecvCloneDocumentTreeInto with a check like

    if (cp->GetRemoteType() == GetRemoteType())

or such I think. Let me know if you'd prefer that.

Differential Revision: https://phabricator.services.mozilla.com/D97144
2020-11-19 17:44:30 +00:00
Johann Hofmann 15fcfd1312 Bug 1650095 - Part 4 - For Fission, reset SHEntryHasUserInteraction cache in the parent when adding/updating SH entries. r=smaug
When re-enabling the test case blocked by bug 1670933 it became apparent that we were not allowing
session history entries to be marked with user interaction when the SH entry was created by navigation
through a sub-frame. The code that we had for this only covered updating SH entries after pushState etc.,
not adding new entries for document loads.

When SH lives in the child this is easier to manage in nsDocShell, but with Fission it probably makes sense
to move this code to the parent.

Differential Revision: https://phabricator.services.mozilla.com/D97421
2020-11-18 23:42:46 +00:00
Johann Hofmann fc8398626e Bug 1650095 - Part 2 - Implement SessionHistoryEntry::Get/SetHasUserInteraction. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D93346
2020-11-18 11:51:00 +00:00
Henrik Skupin df9ce004a5 Bug 1676709 - Send a "browsing-context-attached" notification when attached, r=nika
Differential Revision: https://phabricator.services.mozilla.com/D97002
2020-11-18 22:19:10 +00:00
Gerald Squelart b3314a1582 Bug 1675409 - Removed now-unused ProfilerMarkerPayload and all dependencies - r=gregtatum,necko-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D96054
2020-11-18 21:56:57 +00:00
Razvan Maries b7eeb731df Backed out 23 changesets (bug 1675409) for build bustages on Preferences.cpp. CLOSED TREE
Backed out changeset c1a131a55767 (bug 1675409)
Backed out changeset 47d210802a5d (bug 1675409)
Backed out changeset e8ebb1c58d30 (bug 1675409)
Backed out changeset 69a1e9aeff2a (bug 1675409)
Backed out changeset 68f330b387a8 (bug 1675409)
Backed out changeset e4750d9ef5a1 (bug 1675409)
Backed out changeset bb6bb71e5ab3 (bug 1675409)
Backed out changeset 988d7f4716df (bug 1675409)
Backed out changeset ca41382e891c (bug 1675409)
Backed out changeset 90f3fbbbbeda (bug 1675409)
Backed out changeset 9b109d61a6f6 (bug 1675409)
Backed out changeset 3dd66abfdaa2 (bug 1675409)
Backed out changeset 44181df5f0db (bug 1675409)
Backed out changeset bb2603d947fc (bug 1675409)
Backed out changeset 97055cf20a56 (bug 1675409)
Backed out changeset f88fcf09de0d (bug 1675409)
Backed out changeset 7963e1c49786 (bug 1675409)
Backed out changeset 4c379c1061c3 (bug 1675409)
Backed out changeset b8be8ae7da63 (bug 1675409)
Backed out changeset 0b90aa89421e (bug 1675409)
Backed out changeset c10fb46467c9 (bug 1675409)
Backed out changeset 894ac233b290 (bug 1675409)
Backed out changeset 075d1d8e34c2 (bug 1675409)
2020-11-18 20:06:28 +02:00
Gerald Squelart ced008cc9f Bug 1675409 - Removed now-unused ProfilerMarkerPayload and all dependencies - r=gregtatum,necko-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D96054
2020-11-17 22:26:20 +00:00
Mihai Alexandru Michis c0d25b01b2 Backed out 24 changesets (bug 1666566, bug 1675409) for causing hazard failures in profiler/core/platform.cpp
CLOSED TREE

Backed out changeset 4d8af8533fd4 (bug 1666566)
Backed out changeset f031a3a8a20f (bug 1675409)
Backed out changeset 2b7e1a031921 (bug 1675409)
Backed out changeset bda5a24b2d0a (bug 1675409)
Backed out changeset 4282e2284314 (bug 1675409)
Backed out changeset 0637f1b26e9f (bug 1675409)
Backed out changeset 67ae04c8f607 (bug 1675409)
Backed out changeset 6c7b3f3618ef (bug 1675409)
Backed out changeset 2f325c22d169 (bug 1675409)
Backed out changeset 1e48ff70ad8f (bug 1675409)
Backed out changeset 1dfc32d6871d (bug 1675409)
Backed out changeset 4f1f218a777b (bug 1675409)
Backed out changeset e6ac8722b38e (bug 1675409)
Backed out changeset cf132e15fb57 (bug 1675409)
Backed out changeset a126e6b00ba9 (bug 1675409)
Backed out changeset fbc7fbb04f33 (bug 1675409)
Backed out changeset 554c69681474 (bug 1675409)
Backed out changeset 44d0521c701f (bug 1675409)
Backed out changeset 04653dfe4720 (bug 1675409)
Backed out changeset 41ca2c043a00 (bug 1675409)
Backed out changeset 264ae4c805d4 (bug 1675409)
Backed out changeset 5f3bbdac0d52 (bug 1675409)
Backed out changeset 11311c11a6e8 (bug 1675409)
Backed out changeset 0355fbc44baf (bug 1675409)
2020-11-17 19:31:28 +02:00
Gerald Squelart f8c24dd6a4 Bug 1675409 - Removed now-unused ProfilerMarkerPayload and all dependencies - r=gregtatum,necko-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D96054
2020-11-17 11:40:46 +00:00
Noemi Erli 60669a2ed8 Backed out changeset 18448a7ebf82 (bug 1585070) for causing failures in test_cocoa_window_focus.html CLOSED TREE 2020-11-17 06:09:50 +02:00
Steven MacLeod 2c4c433439 Bug 1585070 - move nsPIDOMWindowOuter::mIsActive to BrowsingContext. r=kmag
A new `BrowsingContext` field 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-11-16 22:37:51 +00:00
Nika Layzell 6b824cc31d Bug 1671983 - Part 2: Remove SessionStore.navigateAndRestore, r=annyG,kashav
This formed the backbone of the previous process switching codepath, and
shouldn't be necessary anymore thanks to DocumentChannel's new codepath.

This also removes the eager process switching logic from frontend's _loadURI, as
it would rarely be taken, unless an invalid URI was entered, already.

Differential Revision: https://phabricator.services.mozilla.com/D94639
2020-11-12 18:00:55 +00:00
Daisuke Akatsuka 1fc9660ab0 Bug 1181081: Fix up typos for string that user would have intented as protocol. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D95982
2020-11-15 22:26:02 +00:00
Chris Peterson 0a345f15a6 Bug 1676797 - Replace MOZ_MUST_USE with [[nodiscard]] in docshell. r=smaug
The MOZ_MUST_USE macro is defined as clang's and gcc's nonstandard __attribute((warn_unused_result))__. Now that we compile as C++17 by default (bug 1560664), we can replace MOZ_MUST_USE with C++17's standard [[nodiscard]] attribute.

Differential Revision: https://phabricator.services.mozilla.com/D96802
2020-11-13 10:24:04 +00:00
Steven MacLeod 971103bdd5 Bug 1606061 - move TouchEventsOverride to BrowsingContext. r=farre,devtools-backward-compat-reviewers
This change removes docshell's `mTouchEventsOverride` and replaces it
with a new `BrowsingContext` field `TouchEventsOverrideInternal`.
All uses of the old field have been replaced and an override should
now work under fission when there are cross-origin descendent frames.

Differential Revision: https://phabricator.services.mozilla.com/D96414
2020-11-10 15:57:30 +00:00
Razvan Maries 10425eddfc Backed out 7 changesets (bug 1658084, bug 1671983) for perma failures on browser_async_remove_tab.js and browser_e10s_chrome_process.js. CLOSED TREE
Backed out changeset 2e6309c1cdbd (bug 1658084)
Backed out changeset 99aafd9304ef (bug 1671983)
Backed out changeset 80280b85280a (bug 1671983)
Backed out changeset 008db2659002 (bug 1671983)
Backed out changeset 32bd45c7fe3a (bug 1671983)
Backed out changeset 56e227e6580c (bug 1671983)
Backed out changeset a404f809f79d (bug 1671983)
2020-11-04 04:23:47 +02:00
Nika Layzell a30f10ec01 Bug 1671983 - Part 2: Remove SessionStore.navigateAndRestore, r=annyG,kashav
This formed the backbone of the previous process switching codepath, and
shouldn't be necessary anymore thanks to DocumentChannel's new codepath.

This also removes the eager process switching logic from frontend's _loadURI, as
it would rarely be taken, unless an invalid URI was entered, already.

Differential Revision: https://phabricator.services.mozilla.com/D94639
2020-11-04 00:55:23 +00:00
Peter Van der Beken d8307942b8 Bug 1673702 - Wrong page loaded when reloading after navigating back across an eTLD+1 boundary. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D95408
2020-10-30 23:49:14 +00:00
Olli Pettay e26d8e3f5a Bug 1673947 - CreatedDynamically isn't updated on parent side, r=kashav
Depends on D94904

Differential Revision: https://phabricator.services.mozilla.com/D95068
2020-10-30 22:10:22 +00:00
Olli Pettay 1856a4dec3 Bug 1671962 - Iframes loaded from restored session are loaded out of order when Fission enabled, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D94904
2020-10-30 22:10:15 +00:00
Narcis Beleuzu 8042432b13 Backed out 2 changesets (bug 1673947, bug 1671962) for wpt failure on nested-context-navigations-iframe.html . CLOSED TREE
Backed out changeset 8c71945d53bd (bug 1673947)
Backed out changeset 84ed543cd810 (bug 1671962)
2020-10-30 21:05:41 +02:00
Peter Van der Beken 780eafe9ee Bug 1670933 - Back button is not enabled by iframe navigation when Fission is enabled. r=smaug,extension-reviewers,zombie
Differential Revision: https://phabricator.services.mozilla.com/D95322
2020-10-30 15:24:15 +00:00
Olli Pettay 0819023ff0 Bug 1673947 - CreatedDynamically isn't updated on parent side, r=kashav
Depends on D94904

Differential Revision: https://phabricator.services.mozilla.com/D95068
2020-10-30 11:48:30 +00:00