Commit Graph

485 Commits

Author SHA1 Message Date
Steven MacLeod
cc94eb3f9f 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
Olli Pettay
8bb67aa0d3 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
8ad3337d21 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
cc40242343 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
Olli Pettay
619cfae74d 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
Olli Pettay
ed33c8b544 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 11:48:23 +00:00
Emilio Cobos Álvarez
8529bb07b8 Bug 1673707 - Simplify handling of the suspendMediaWhenInactive flag. r=nika
Make it a synced field on the top browsing context. This handling the
propagation right and is much simpler.

This should fix cases where we don't look at the top level docshell to
figure out if we should suspend media.

Differential Revision: https://phabricator.services.mozilla.com/D94878
2020-10-27 19:55:47 +00:00
Randell Jesup
27a2ada105 Bug 1670848: Handling aborting history navigations when others run r=smaug
Handles edge cases around history.go() with one event loop spin

Differential Revision: https://phabricator.services.mozilla.com/D93302
2020-10-23 20:27:50 +00:00
Andreas Farre
e4556a3316 Bug 1667767 - Expose the BC's HistoryID field through WebIDL. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D92893
2020-10-23 10:07:09 +00:00
alwu
e3ecb6756c Bug 1670841 - part2 : prevent tab with a main controller from being suspended. r=snorp,nika
When a tab is owning a main controller, which means that the tab is either playing media, or still waiting for media keys in order to control its media again.

In those situations, we should not suspend the tab so that its script can continue to run for playing media or handling the future task for media keys.

Differential Revision: https://phabricator.services.mozilla.com/D93445
2020-10-22 21:31:18 +00:00
Emilio Cobos Álvarez
96044339f2 Bug 1646222 - Don't invalidate vector images as a result of size/display mode changes. r=tnikkel
sizemode/displaymode media queries only affect a given browsing context
tree so there's no need to propagate the change to images in that case.

Differential Revision: https://phabricator.services.mozilla.com/D94422
2020-10-22 09:29:43 +00:00
Olli Pettay
8940fdea4e Bug 1670098 - location.replace should do a proper replace for same document navigations, r=peterv
With this change SHIP seems to also fix an issue with hashchange event - those are triggered now
more consistently than without SHIP.

Differential Revision: https://phabricator.services.mozilla.com/D92993
2020-10-09 19:20:07 +00:00
Agi Sferro
f3ed600503 Bug 1648157 - Move DisplayMode to BrowsingContext. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D92484
2020-10-09 17:31:59 +00:00
Olli Pettay
6d5e019fcf Bug 1669287 - Ensure AddPendingHistoryChange is called even when doing same document navigations in iframes, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D92464
2020-10-05 17:17:56 +00:00
Andreas Farre
4f72aac868 Bug 1669183 - Make sure length delta is correctly computed. r=smaug
When adding a new entry while handling popstate, this would go
throught the paremeterized version of AddPendingHistoryChange, which
doesn't re-compute length which would result in an error in
history.length.

Differential Revision: https://phabricator.services.mozilla.com/D92393
2020-10-05 11:04:10 +00:00
Olli Pettay
aee6f990e5 Bug 1668577 - Make child process to send offset to parent process, not index, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D92074
2020-10-02 16:15:47 +00:00
Cameron McCormack
1a10f8e9fc Bug 1662839 - Set author style disabled state correctly on newly created iframes. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D90953
2020-10-04 03:25:16 +00:00
Razvan Maries
e7522539a9 Backed out changeset a3cbffeb24a3 (bug 1668577) for perma failures on location_reload.html. CLOSED TREE 2020-10-02 19:11:53 +03:00
Olli Pettay
83ddcf9adc Bug 1668577 - Make child process to send offset to parent process, not index, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D92074
2020-10-02 12:05:57 +00:00
Peter Van der Beken
527c3ba7c7 Bug 1659102 - Fix fragment navigation for session history in parent. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D91593
2020-09-29 12:09:59 +00:00
Peter Van der Beken
9e53805747 Bug 1659102 - Merge SetActiveSessionHistoryEntryForTop and SetActiveSessionHistoryEntryForFrame. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D91592
2020-09-29 12:04:20 +00:00
Olli Pettay
517a59e62b Bug 1667449 - Hide fission.sessionHistoryInParent pref getter behind a function r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D91462
2020-09-28 12:01:12 +00:00
Peter Van der Beken
eb219331eb Bug 1666881 - Make fission.sessionHistoryInParent require a restart when switching. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D91260
2020-09-25 09:03:58 +00:00
Mihai Alexandru Michis
5875dcbe89 Backed out changeset 88337b6e4e3e (bug 1666881) for causing failures regarding the fission.autostart pref.
CLOSED TREE
2020-09-24 15:41:33 +03:00
Peter Van der Beken
97d3d4638e Bug 1666881 - Make fission.sessionHistoryInParent require a restart when switching. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D91260
2020-09-24 11:14:51 +00:00
Bogdan Tara
0b359244d1 Backed out changeset 1bfa83880712 (bug 1662839) for browser_disable_author_style_oop.js failures CLOSED TREE 2020-09-24 05:55:25 +03:00
Cameron McCormack
bbad6d2354 Bug 1662839 - Set author style disabled state correctly on newly created iframes. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D90953
2020-09-24 01:24:57 +00:00
Simon Giesecke
ab6f0a7137 Bug 1650145 - Replace all value uses of Empty[C]String by 0-length _ns literals. r=froydnj,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D82325
2020-09-23 15:17:15 +00:00
Kashav Madan
a38531ab04 Bug 1666485 - Make BrowsingContext::CreatedDynamically non-synced, r=nika,kmag
Differential Revision: https://phabricator.services.mozilla.com/D89223
2020-09-23 13:43:38 +00:00
Butkovits Atila
c2d7327248 Backed out changeset a81b4130ac14 (bug 1666485) for causing bustages on BrowsingContext. CLOSED TREE 2020-09-23 16:18:53 +03:00
Kashav Madan
fb01408d2e Bug 1666485 - Make BrowsingContext::CreatedDynamically non-synced, r=nika,kmag
Differential Revision: https://phabricator.services.mozilla.com/D89223
2020-09-23 12:45:38 +00:00
Kris Maglione
49362ffbc0 Bug 1655866: Part 4 - Handle OOP beforeunload listeners in PermitUnload(). r=nika
Differential Revision: https://phabricator.services.mozilla.com/D88317
2020-09-21 22:41:01 +00:00
pbz
5c176a0ded Bug 1314912 - Rate limit calls to History and Location interfaces. r=smaug
This adds a rate limit to methods and setters of the History and Location
for non-system callers.
The rate limit is counted per BrowsingContext and can be controlled by prefs.

This patch is based on the original rate limit patch by :freesamael.

Differential Revision: https://phabricator.services.mozilla.com/D90136
2020-09-21 11:54:50 +00:00
Peter Van der Beken
073b9fe8a3 Bug 1664656 - Decide whether to add a new entry based on the load type. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D90028
2020-09-20 12:40:10 +00:00
Dorel Luca
ec20fe3b28 Backed out 3 changesets (bug 1664656, bug 1664655) for multiple failures in checkouts/gecko/docshell/base/nsDocShell.cpp
Backed out changeset ac1e652efeb6 (bug 1664655)
Backed out changeset c8c1abf5f616 (bug 1664656)
Backed out changeset 3c1e9e36a39e (bug 1664656)
2020-09-19 16:38:26 +03:00
Peter Van der Beken
b8bc59f244 Bug 1664656 - Decide whether to add a new entry based on the load type. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D90028
2020-09-18 16:49:35 +00:00
Nika Layzell
cbb7e8111c Bug 1659696 - Check PendingInitialization before targeting in window.open, r=kmag
This requires adding the flag as a synced field on the BrowsingContext, and
checking it in a few more places. Attempts to open a new window in this racy
manner will now raise an exception.

This should avoid the issue from bug 1658854 by blocking the buggy attempts to
load before the nested event loop has been exited.

Differential Revision: https://phabricator.services.mozilla.com/D87927
2020-09-16 20:47:55 +00:00
Peter Van der Beken
891496b6f7 Bug 1663486 - Synchronize ChildSHistory state when sending a browsing context to a new process. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D89419
2020-09-08 15:24:13 +00:00
Jeff Walden
1760d6f90a Bug 1663365 - Move various Object-related functions to a new js/public/Object.h header. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D89333
2020-09-08 22:55:38 +00:00
Peter Van der Beken
1031757a1d Bug 1662407 - Call nsSHistory::GotoIndex directly when loading from session history in the parent process. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D88976
2020-09-08 19:32:27 +00:00
Henri Sivonen
9449f24864 Bug 1613054 part 1 - Synchronously request frame focus when .contentWindow.focus() called on OOP iframe. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D70800
2020-09-02 15:05:53 +00:00
Henri Sivonen
eb0f404341 Bug 1662103 - Make .close() a no-op on OOP iframes. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D88983
2020-09-02 09:27:36 +00:00
Kris Maglione
c67b4248ac 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
d6859a14a7 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
Anny Gakhokidze
68c83c5040 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
a7185cba9a 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
Nika Layzell
1d159a5aea 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
758beeb5cd 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
78c82ffa68 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
c49bf30ba7 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