Commit Graph

924 Commits

Author SHA1 Message Date
Edgar Chen
831b31724f Bug 1588720 - Part 3: Remove nsGlobalWindowOuter::gOpenPopupSpamCount; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D49277
2019-10-18 03:05:18 +00:00
Edgar Chen
b2d6793250 Bug 1588720 - Part 2: Track number of popup spam through BrowsingContext; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D49276
2019-10-18 03:04:55 +00:00
Edgar Chen
b5198ffc90 Bug 1588720 - Part 1: Convert dom.popup_maximum to a static pref; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D49275
2019-10-18 02:52:25 +00:00
thomasmo
6fedc9ed4d Bug 1587521 - Enable FullScreen in FxR for Desktop r=mconley,Gijs
Bug 1587521 - Enable FullScreen in FxR for Desktop

This change enables Fullscreen functionality in the UI for Firefox Reality for Desktop. On Fullscreen, the window (rather than the desktop) is taken over, and it is up to the host to render the contents as fullscreen.

To mitigate the impact on Desktop's implementation, browser-fullScreenAndPointerLock.js is forked and removes the dependencies on browser.js. These two files will be rationalized at a later time.

Differential Revision: https://phabricator.services.mozilla.com/D48913
2019-10-18 00:15:08 +00:00
Olli Pettay
34bcfec5c5 Bug 1586793 - [Fission] iframe.contentWindow may be null when it shouldn't be, r=peterv
The other cases when ClearWindowProxy is called seem to be fine.
It is the Unlink case which was causing null .contentWindow with test_mozfiledataurl.html

Fixes bug 1580391 and backs out bug 1581004

Differential Revision: https://phabricator.services.mozilla.com/D48878
2019-10-17 14:56:54 +00:00
Narcis Beleuzu
8b503ffdd0 Backed out 3 changesets (bug 1575051) for bc failures on browser_browsingContext-getWindowByName.js . CLOSED TREE
Backed out changeset 67aaf4a157af (bug 1575051)
Backed out changeset e01256038537 (bug 1575051)
Backed out changeset 0c8f70f9328b (bug 1575051)
2019-10-14 19:19:05 +03:00
Andreas Farre
967275c308 Bug 1575051 - Part 1: Remove nsIDocShellTreeItem.findItemWithName. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D46285
2019-10-14 12:07:14 +00:00
Kris Maglione
3678333d88 Bug 1586887: Return WindowProxyHolder rather than BrowsingContext from Window WebIDL getters. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D48429
2019-10-11 19:32:09 +00:00
Ehsan Akhgari
6d7829d3ba Bug 1587922 - Remove the remnants of the showModalDialog code; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D48892
2019-10-10 22:59:28 +00:00
Brendan Dahl
bf272a3bca Bug 1510785 - Only build XBL related code when MOZ_XBL is defined. r=bzbarsky
When XBL is disabled, no code in dom/xbl will be built. Also, adds ifdefs
to remove any of the XBL related code elsewhere. There's definitely more
that can be done here, but I think it's better to wait to do the rest of
the cleanup when we actually remove the code.

Depends on D45612

Differential Revision: https://phabricator.services.mozilla.com/D45613
2019-10-08 23:52:14 +00:00
Xidorn Quan
dbf9659edb Bug 1567355 - Admit that exiting fullscreen can fail on macOS. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D47525
2019-09-30 12:35:45 +00:00
Tom Tung
9fb9159874 Bug 1562663 - P6 - Fix try failure on test_postMessage_closed.html; r=nika
Depends on D46492

Differential Revision: https://phabricator.services.mozilla.com/D46526
2019-09-23 09:57:25 +00:00
Tom Tung
e675497e60 Bug 1562663 - P4b - Enable SAB for window.postMessage and worker.postMessage; r=nika
Differential Revision: https://phabricator.services.mozilla.com/D43243
2019-09-23 09:57:24 +00:00
Tom Tung
42b362bfe0 Bug 1562663 - P4a - Deny sharing memery by default for DataClonePolicy; r=nika,lth
Differential Revision: https://phabricator.services.mozilla.com/D45187
2019-09-26 13:27:25 +00:00
alwu
e2babf78fa Bug 1578615 - part2 : make the pref 'media.block-autoplay-until-in-foreground' to a static pref. r=chunmin
Differential Revision: https://phabricator.services.mozilla.com/D44745
2019-09-25 02:06:57 +00:00
Emilio Cobos Álvarez
c1bd815761 Bug 1583534 - Further simplify PresShell::ResizeReflow. r=botond
In particular, not let ResizeReflow take the old and new size. Most of the
callers pass dummy values anyway.

Instead, use the old size of the layout viewport. This ensures we fire resize
events only if the layout viewport actually changes.

This is important because the first resize of the mobile viewport manager
after a navigation has an "old size" of 0x0, even though the layout viewport
is initialized on presshell initialization to the right size.

Thus, we fire resize events unnecessarily in that case, which is the root cause
for bug 1528052.

To do this, we need to shuffle a bit of code in nsDocumentViewer that deals with
delayed resizes, to set the visible area _and_ invalidate layout, rather than
setting the visible area and _then_ relying on doing a resize reflow.

Further cleanup is possible, though not required for my android resizing fix, so
will do separately.

Differential Revision: https://phabricator.services.mozilla.com/D46944
2019-09-25 19:12:44 +00:00
alwu
fea5095f22 Bug 1580659 - part7 : make AudioChannelAgent's 'WindowVolumeChanged()' consistent with other 'WindowXXXChanged()'. r=Ehsan
Now other `WindowXXXChanged()` would receive the change directly from their input parameter, we should make `WindowVolumeChanged()` consistent with them, instead of asking `AudioChannelService` again.

Differential Revision: https://phabricator.services.mozilla.com/D45754
2019-09-24 06:55:35 +00:00
Brindusan Cristian
8633c6f1f4 Backed out 2 changesets (bug 1582716, bug 1575051) for gv-junit failures, new exception. CLOSED TREE
Backed out changeset b5aa3ac4483e (bug 1582716)
Backed out changeset c385531b4ee3 (bug 1575051)
2019-09-24 19:47:00 +03:00
Andreas Farre
adc8fc7fb5 Bug 1575051 - Remove nsIDocShellTreeItem.findItemWithName. r=kmag
This also allows us to remove TabGroup::FindItemWithName, which is a
big step towards removing TabGroup entirely.

Differential Revision: https://phabricator.services.mozilla.com/D46285
2019-09-24 13:16:26 +00:00
Brindusan Cristian
f52298b70e Backed out changeset 0ebd1612a4ae (bug 1575051) for gv-junit crashes and bc failures on browser_browsingContext-02.js. CLOSED TREE 2019-09-24 15:08:41 +03:00
Andreas Farre
24fa934f6b Bug 1575051 - Remove nsIDocShellTreeItem.findWithName. r=kmag
This also allows us to remove TabGroup::FindItemWithName, which is a
big step towards removing TabGroup entirely.

Differential Revision: https://phabricator.services.mozilla.com/D46285
2019-09-24 10:58:47 +00:00
shindli
e097175b42 Backed out 9 changesets (bug 1580659) for causing linting failure in /builds/worker/checkouts/gecko/dom/plugins/base/nsNPAPIPluginInstance.cpp CLOSED TREE
Backed out changeset b8c46aaec410 (bug 1580659)
Backed out changeset fd31977767d5 (bug 1580659)
Backed out changeset 8b9f61694270 (bug 1580659)
Backed out changeset 276827f54c71 (bug 1580659)
Backed out changeset ecb2bf9fb452 (bug 1580659)
Backed out changeset b712f15af619 (bug 1580659)
Backed out changeset c25bfc8b31b1 (bug 1580659)
Backed out changeset 20cfcd96a40e (bug 1580659)
Backed out changeset e92ff4ac7f43 (bug 1580659)
2019-09-24 09:50:42 +03:00
alwu
0aebe8b062 Bug 1580659 - part7 : make AudioChannelAgent's 'WindowVolumeChanged()' consistent with other 'WindowXXXChanged()'. r=Ehsan
Now other `WindowXXXChanged()` would receive the change directly from their input parameter, we should make `WindowVolumeChanged()` consistent with them, instead of asking `AudioChannelService` again.

Differential Revision: https://phabricator.services.mozilla.com/D45754
2019-09-17 18:59:27 +00:00
Kris Maglione
7dc062c986 Bug 1576187: Don't set closed flag on discarded BrowsingContext. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D45319
2019-09-10 12:01:42 +00:00
Dave Townsend
1e14cbacc2 Bug 1550058: Move most keyboard shortcut handling out of XBL. r=masayuki
Most of our keyboard shortcut handling is handled by nsXBLWindowKeyHandler along
with nsXBLPrototypeHandler. With the impending removal of XBL this needs to
change.

This patch moves nsXBLWindowKeyHandler to dom/events/GlobalKeyListener and copies
nsXBLPrototypeHandler to dom/events/KeyEventHandler. Windows, text elements and
XUL <keyset> are changed to use the new copies and anything unnecessary for
those is stripped out.

XBL handler elements still remain using the existing nsXBLPrototypeHandler path.
Some of the code is ripped out there to make it compile. There is probably a
lot more that can be removed but since the whole of XBL is likely gone soon I'm
not sure it is worth cleaning that up much.

Differential Revision: https://phabricator.services.mozilla.com/D42336
2019-09-06 17:10:40 +00:00
Razvan Maries
95578a4b34 Backed out changeset e18ae5f66cac (bug 1550058) for causing Android build bustages. CLOSED TREE 2019-09-05 20:31:59 +03:00
Dave Townsend
4400f798da Bug 1550058: Move most keyboard shortcut handling out of XBL. r=masayuki
Most of our keyboard shortcut handling is handled by nsXBLWindowKeyHandler along
with nsXBLPrototypeHandler. With the impending removal of XBL this needs to
change.

This patch moves nsXBLWindowKeyHandler to dom/events/GlobalKeyListener and copies
nsXBLPrototypeHandler to dom/events/KeyEventHandler. Windows, text elements and
XUL <keyset> are changed to use the new copies and anything unnecessary for
those is stripped out.

XBL handler elements still remain using the existing nsXBLPrototypeHandler path.
Some of the code is ripped out there to make it compile. There is probably a
lot more that can be removed but since the whole of XBL is likely gone soon I'm
not sure it is worth cleaning that up much.

Differential Revision: https://phabricator.services.mozilla.com/D42336
2019-09-05 16:51:27 +00:00
Ehsan Akhgari
fced70efa4 Bug 1576641 - Add two new content blocking event flags to indicate a tracking/social-tracking cookie has been loaded in a tab; r=baku,droeh
Differential Revision: https://phabricator.services.mozilla.com/D44216
2019-09-03 17:37:43 +00:00
Dorel Luca
0731b8921a Merge mozilla-inbound to mozilla-central. a=merge 2019-08-31 12:47:56 +03:00
Brad Werth
bdc46f354f Bug 1572840 Part 4: Change nsGlobalWindowOuter::GetRDMDeviceSize to divide out full zoom levels. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D43716
2019-08-30 18:45:29 +00:00
Mihai Alexandru Michis
5bf8e80ffd Backed out 6 changesets (bug 1576407) for causing wpt and mochitest failures. CLOSED TREE
Backed out changeset 3b0498064cbf (bug 1576407)
Backed out changeset 38e4ea431445 (bug 1576407)
Backed out changeset 19bf40067233 (bug 1576407)
Backed out changeset 0ddbc451dcab (bug 1576407)
Backed out changeset 08d4c25fc670 (bug 1576407)
Backed out changeset be7cbc61f825 (bug 1576407)
2019-08-29 03:00:47 +03:00
Kris Maglione
8118aaf7ab Bug 1576407: Follow-up: Ignore window.opener get/set when BrowsingContext is discarded.
Differential Revision: https://phabricator.services.mozilla.com/D43833
2019-08-28 21:50:44 +00:00
Kris Maglione
9c50c43630 Bug 1576407: Part 4 - Stop storing opener redundantly on nsGlobalWindowOuter. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D43693
2019-08-28 18:07:45 +00:00
Kris Maglione
176a22d6ef Bug 1576407: Part 3 - Return window opener as a WindowProxyHolder or BrowsingContext. r=farre
Also adds a legacy `GetSameProcessOpener()` method for callers which can only
deal with in-process windows and may need to be updated for Fission.

Differential Revision: https://phabricator.services.mozilla.com/D43692
2019-08-28 18:07:38 +00:00
Kris Maglione
1d5f606615 Bug 1576407: Part 1 - Add HadOriginalOpener flag to BrowsingContext. r=farre
This is currently only available on the outer window, but needs to move to
BrowsingContext in order from us to remove redundant opener tracking from the
former.

Differential Revision: https://phabricator.services.mozilla.com/D43690
2019-08-28 18:07:31 +00:00
Brad Werth
f41bbd6ed5 Bug 1575097 Part 1: Add a method nsGlobalWindowOuter::GetRDMDeviceSize and use it in GetOuterSize. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D43130
2019-08-25 23:53:04 +00:00
Abdoulaye O. Ly
dfe95e81d9 Bug 1562990 - [Fission] Make AudioPlayback work with JSWindowActor. r=NeilDeakin,farre
Differential Revision: https://phabricator.services.mozilla.com/D36648
2019-08-19 21:17:21 +00:00
Brindusan Cristian
d6b0ae3ead Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-08-15 12:50:36 +03:00
Jon Coppeard
84f9d85099 Bug 1573844 - Remove external references to js::Class r=mccr8
Depends on D41985

Differential Revision: https://phabricator.services.mozilla.com/D41986
2019-08-14 17:15:15 +00:00
Andrew McCreight
b9c5444472 Bug 1559489, part 4 - Remote-to-local window transplanting. r=tcampbell,bzbarsky
This patch cleans up remote outer window proxies when we navigate back
into the process.

It adds a flag to mDanglingRemoteOuterProxies that is set in between
BrowsingContext::SetDocShell(), where we can tell that the browsing
context is going from being remote to being local, to
nsGlobalWindowOuter::SetNewDocument(), where the local outer window
proxy is actually created. Once the outer window is created, the
remote window proxies can be cleaned up in
CleanUpDanglingRemoteOuterWindowProxies().

The clean up is done by a process that is similar to object
transplanting, except that instead of looking in the cross-compartment
wrapper table for each compartment to find objects to be turned into
CCWs to the new object, it looks in the remote proxy map for each
compartment. SpiderMonkey doesn't know about the proxy maps, so this
has to be done by a new callback object CompartmentTransplantCallback.

Now that this cleanup is being done, it shouldn't be possible to wrap
a remote outer window proxy when the browsing context is local, so
MaybeWrapWindowProxy() can be simplified. I had to drop the assert
here that the browsing context has a window proxy because during clean
up we call wrap on a local outer window proxy before the BC gets the
window proxy set on it. I had the assert because my original plan was
to implicitly fix remote proxies during wrapping, but that is no
longer necessary.

Differential Revision: https://phabricator.services.mozilla.com/D38343
2019-08-13 19:09:59 +00:00
Brendan Dahl
121428ad45 Bug 1551344 - Part 1: Remove XULDocument code. r=smaug,Jamie
All .xul files have been loading as HTMLDocuments for a few weeks now, so
it should be safe to remove the XULDocument implementation.

Differential Revision: https://phabricator.services.mozilla.com/D41238
2019-08-09 19:57:50 +00:00
alwu
4ff15382f7 Bug 1565689 - part5 : control media from chrome process. r=farre,baku
This patch implements how to use MediaController to control corresponding media in content processes.

Differential Revision: https://phabricator.services.mozilla.com/D38145
2019-08-07 01:46:03 +00:00
Nika Layzell
8f12a56d0d Bug 1523638 - Part 9: Use provided 'WindowGlobalChild' actors to create the initial about:blank document, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D37656
2019-08-08 16:07:12 +00:00
Nika Layzell
e727b79ee0 Bug 1523638 - Part 2: Store and expose URI and Principal on WindowGlobalChild, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D37649
2019-08-08 16:06:54 +00:00
Kannan Vijayan
c110dbe443 Bug 1569262 - Rename nsIDocShellTreeItem::GetRootTreeItem to GetInProcessRootTreeItem for Fission marking. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D41064
2019-08-07 19:24:00 +00:00
Andreea Pavel
402570769a Backed out 7 changesets (bug 1565689) for assertion failures at MediaControlUtils.h on a CLOSED TREE
Backed out changeset 9ebf6f8a4fda (bug 1565689)
Backed out changeset 49c41a9238f9 (bug 1565689)
Backed out changeset 9014276e070a (bug 1565689)
Backed out changeset d9f7fcbef3ee (bug 1565689)
Backed out changeset d3db3285e933 (bug 1565689)
Backed out changeset 1ca26f550f4b (bug 1565689)
Backed out changeset 1d27d083e974 (bug 1565689)
2019-08-07 04:40:52 +03:00
alwu
0dc5070a72 Bug 1565689 - part5 : control media from chrome process. r=farre,baku
This patch implements how to use MediaController to control corresponding media in content processes.

Differential Revision: https://phabricator.services.mozilla.com/D38145
2019-08-06 01:13:07 +00:00
Bogdan Tara
288c163e6d Backed out 7 changesets (bug 1565689) for browser chrome failures CLOSED TREE
Backed out changeset 36ea91bf28f7 (bug 1565689)
Backed out changeset 278340adf69c (bug 1565689)
Backed out changeset 4f508252b015 (bug 1565689)
Backed out changeset faaa4e9ba8d3 (bug 1565689)
Backed out changeset 177f2b26c892 (bug 1565689)
Backed out changeset ba665f96330d (bug 1565689)
Backed out changeset 0de7b1db3ef9 (bug 1565689)
2019-08-06 04:09:19 +03:00
alwu
f1b7fc45b1 Bug 1565689 - part5 : control media from chrome process. r=farre,baku
This patch implements how to use MediaController to control corresponding media in content processes.

Differential Revision: https://phabricator.services.mozilla.com/D38145
2019-08-05 17:32:27 +00:00
Andrew McCreight
10547a6fad Bug 1570484 - Nuke Xray waivers for remote outer window proxies. r=bzbarsky,tcampbell,jonco
Remote outer window proxies can't be the target of a CCW, because if
you attempt to wrap them we just create a new outer window proxy.
Therefore, they can't be the target of an Xray wrapper, so they can't
have Xray waivers that do anything useful. However, if we do a
navigation from a local iframe to a remote iframe, we'll transplant a
remote outer window proxy onto a local outer window proxy, which might
have an Xray. This can cause some issues, particularly if we later
navigate back to a different local window.

To work around this, this patch nukes Xray waivers on navigation to a
remote outer window proxy. This makes Xray waiver behavior
inconsistent with the non-Fission behavior, but it is safer to leave
the non-Fission behavior alone for now, for fear of breaking addons.

Differential Revision: https://phabricator.services.mozilla.com/D40116
2019-08-05 16:32:31 +00:00