Commit Graph

924 Commits

Author SHA1 Message Date
Emilio Cobos Álvarez
3e98351a82 Bug 1617990 - Remove a silly string copy in nsGlobalWindowOuter::Prompt. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D64192
2020-02-25 20:46:57 +00:00
Kris Maglione
232ff37e9f Bug 1535617: Part 2 - Clear weak references for most cycle collected objects on unlink. r=mccr8
This covers most cycle collected objects which support weak references, but
not the ones which inherit from a cycle collected class and don't do any cycle
collection on their own.

Differential Revision: https://phabricator.services.mozilla.com/D63962
2020-02-25 19:44:39 +00:00
Dorel Luca
6842883250 Backed out 4 changesets (bug 911444) for Mochitest failures in dom/base/test/test_pdf_print.html. CLOSED TREE
Backed out changeset d156bbaabbd5 (bug 911444)
Backed out changeset a32592af0b11 (bug 911444)
Backed out changeset b96d0a37ed1a (bug 911444)
Backed out changeset fd2e3e8728d9 (bug 911444)
2020-02-25 00:11:50 +02:00
Boris Zbarsky
2c46771784 Bug 911444 part 4. Expose a print method on PDF viewer windows. r=bholley
The method is exposed only if the consumer has the same principal as the PDF
would have if it were not getting the PDF viewer treatment.

The method just calls the print() method in the PDF viewer window.

It's enough to expose this on nsOuterWindowProxy, not RemoteOuterWindowProxy,
because PDF documents end up in the process they would have been in based on
their pre-PDF-viewer principal, since we do process determination in the parent
process but only run the pdfjs stream converter in the content process, once we
have decided which one to use.

Differential Revision: https://phabricator.services.mozilla.com/D63711
2020-02-22 05:25:35 +00:00
Simon Giesecke
d9ad6f7529 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/base. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D63102
2020-02-21 10:41:47 +00:00
Andrea Marchesini
0507896212 Bug 1577040 - Part 2: Remove nsContentUtils::IsTrackingResourceWindow() and replace its calls with IsThirdPartyTrackingResourceWindow(), r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D63300
2020-02-20 07:29:11 +00:00
Jonathan Watt
dfec4151d6 Bug 1552966. Convert the printing code to stop using DocShellTree* classes. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D56830
2020-02-14 16:31:01 +00:00
Jonathan Watt
f77af76c84 Bug 855889. Remove the print.use_global_printsettings pref. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D62754
2020-02-14 02:59:45 +00:00
Simon Giesecke
9bcfd47601 Bug 1611415 - Prefer using std::move over forget. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980
2020-02-13 14:38:48 +00:00
shindli
6bb3487209 Backed out changeset 0c982bc69cb3 (bug 1611415) for causing build bustages in /builds/worker/workspace/build/src/obj-firefox/dist/include/nsCOMPtr CLOSED TREE 2020-02-12 20:13:29 +02:00
Simon Giesecke
d45525793f Bug 1611415 - Applied FixItHints from mozilla-non-std-move. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980
2020-02-12 17:24:41 +00:00
Andrea Marchesini
8c42e363ae Bug 1611855 - Worklet must be part of the same parent's agentCluster - part 8 - usage of IsSharedMemoryAllowed, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D61278
2020-02-06 13:51:07 +00:00
Andrea Marchesini
7287ba25ca Bug 1611855 - Worklet must be part of the same parent's agentCluster - part 6 - CloneDataPolicy.allowSharedMemoryObjects(), r=sfink,smaug
Differential Revision: https://phabricator.services.mozilla.com/D61276
2020-02-06 13:49:28 +00:00
Narcis Beleuzu
f00579517d Backed out 13 changesets (bug 1611855) for wpt failures on /audioworklet-postmessage-sharedarraybuffer.https.html . CLOSED TREE
Backed out changeset 2b661d588f96 (bug 1611855)
Backed out changeset 16094fc92bc9 (bug 1611855)
Backed out changeset 3f89bbcaff92 (bug 1611855)
Backed out changeset a906501b6d92 (bug 1611855)
Backed out changeset 54738b88425d (bug 1611855)
Backed out changeset d27de910a6c0 (bug 1611855)
Backed out changeset 261902f6336d (bug 1611855)
Backed out changeset 380d83b61e62 (bug 1611855)
Backed out changeset 39aac60ebf5e (bug 1611855)
Backed out changeset 5ea099787376 (bug 1611855)
Backed out changeset d0f58871f838 (bug 1611855)
Backed out changeset e1be102310a9 (bug 1611855)
Backed out changeset 633357835540 (bug 1611855)
2020-02-06 12:31:36 +02:00
Andrea Marchesini
4ead8b83b9 Bug 1611855 - Worklet must be part of the same parent's agentCluster - part 8 - usage of IsSharedMemoryAllowed, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D61278
2020-02-05 22:10:17 +00:00
Andrea Marchesini
afe69ab38b Bug 1611855 - Worklet must be part of the same parent's agentCluster - part 6 - CloneDataPolicy.allowSharedMemoryObjects(), r=sfink,smaug
Differential Revision: https://phabricator.services.mozilla.com/D61276
2020-02-05 22:19:21 +00:00
Andrew McCreight
fd57f3665f Bug 1611767 - Add MaybeTabGroup methods. r=farre
The ghost window checker examines windows in all sorts of weird states,
apparently including when the docshell on the outer is null. Add some
fallible variants of the tab group methods on inner and outer windows
so it can call one of those instead.

Differential Revision: https://phabricator.services.mozilla.com/D61203
2020-01-29 09:09:46 +00:00
Dimi Lee
67467b685c Bug 1599046 - P2. Remove calling NotifyOnContentBlocking in the child process r=timhuang,Ehsan
This patch does the followings:
1. Remove NotifyOnContentBlocking in WindowOuter and all the call sites.
   This is because all the content blocking event handling is moved to the parent.

2. Replace UrlClassifierCommon::NotifyChannelBlocked with AntiTrackingCommon:::NotifyContentBlockingEventInParent.
   This is because we don't need to pass the request to the child anymore, which was implemented in NotifyChannelBlocked previously.

3. Add NotifyContentBlockingEvent* utility functions to AntiTrackingCommon.cpp.

4. Update AntiTrackingCommon::NotifyBlockingDecision, when it is called in the parent,
   do not send requests to the child, notify the parent directly

Depends on D56874

Differential Revision: https://phabricator.services.mozilla.com/D56875
2020-01-27 10:39:43 +00:00
Dimi Lee
e1f7951b88 Bug 1599046 - P1. Remove ContentBlockingLog from the child r=timhuang,Ehsan
At this point, there is no consumer that uses ContentBlockingLog stored
in the child. This patch removes the following code:
1. Removing nsGlobalWindowOuter::NotifyContentBlockingEvent
2. Removing nsDocLoader::OnContentBlockingEvent
3. Removing contentBlockingEvent in nsISecureBrowserUI.idl
4. Removing mContentBlockingLog from Document.cpp and APIs related to it.

Differential Revision: https://phabricator.services.mozilla.com/D56874
2020-01-27 10:39:41 +00:00
Brindusan Cristian
e5a08690e4 Backed out 4 changesets (bug 1599046) for xpcshell failures at test_ext_cookieBehaviors. CLOSED TREE
Backed out changeset 721f54870498 (bug 1599046)
Backed out changeset 2e165c119a4f (bug 1599046)
Backed out changeset 2bc0fa3bbe0e (bug 1599046)
Backed out changeset 805fb67be8a3 (bug 1599046)
2020-01-27 12:36:11 +02:00
Dimi Lee
46c9abbb0d Bug 1599046 - P2. Remove calling NotifyOnContentBlocking in the child process r=timhuang,Ehsan
This patch does the followings:
1. Remove NotifyOnContentBlocking in WindowOuter and all the call sites.
   This is because all the content blocking event handling is moved to the parent.

2. Replace UrlClassifierCommon::NotifyChannelBlocked with AntiTrackingCommon:::NotifyContentBlockingEventInParent.
   This is because we don't need to pass the request to the child anymore, which was implemented in NotifyChannelBlocked previously.

3. Add NotifyContentBlockingEvent* utility functions to AntiTrackingCommon.cpp.

4. Update AntiTrackingCommon::NotifyBlockingDecision, when it is called in the parent,
   do not send requests to the child, notify the parent directly

Depends on D56874

Differential Revision: https://phabricator.services.mozilla.com/D56875
2020-01-27 09:13:19 +00:00
Dimi Lee
97a7b28ab3 Bug 1599046 - P1. Remove ContentBlockingLog from the child r=timhuang,Ehsan
At this point, there is no consumer that uses ContentBlockingLog stored
in the child. This patch removes the following code:
1. Removing nsGlobalWindowOuter::NotifyContentBlockingEvent
2. Removing nsDocLoader::OnContentBlockingEvent
3. Removing contentBlockingEvent in nsISecureBrowserUI.idl
4. Removing mContentBlockingLog from Document.cpp and APIs related to it.

Differential Revision: https://phabricator.services.mozilla.com/D56874
2020-01-27 09:13:12 +00:00
Emilio Cobos Álvarez
a4a384fffd Bug 1611711 - Remove kCursorKTable. r=jwatt
(And while at it, format the end of the other keyword tables so that
cleanup_ktables.py works).

It seems `Window.setCursor` is only used once in our code, maybe
we should remove it...

Differential Revision: https://phabricator.services.mozilla.com/D61090
2020-01-26 20:17:41 +00:00
Andrea Marchesini
05efe281e1 Bug 1609990 - AgentCluster comparison in MessagePort and BroadcastChannel - part 3 - CloneDataPolicy, r=smaug,sfink,lth
Differential Revision: https://phabricator.services.mozilla.com/D60485
2020-01-24 16:31:21 +00:00
Noemi Erli
5fee1020e5 Backed out 4 changesets (bug 1609990) for causing Spidermonkey rust bustage CLOSED TREE
Backed out changeset 81a77bb3772c (bug 1609990)
Backed out changeset d4524885cb97 (bug 1609990)
Backed out changeset c95aac908332 (bug 1609990)
Backed out changeset bae3e50ab64d (bug 1609990)
2020-01-24 18:13:24 +02:00
Andrea Marchesini
ea77f4cf0d Bug 1609990 - AgentCluster comparison in MessagePort and BroadcastChannel - part 3 - CloneDataPolicy, r=smaug,sfink,lth
Differential Revision: https://phabricator.services.mozilla.com/D60485
2020-01-24 15:25:24 +00:00
Mike Conley
49abd29c1d Bug 1576917 - Port PopupBlocker to JSWindowActors to make it Fission-compatible. r=NeilDeakin
This patch was started by Alex Vamvounis <a.vamvounis@gmail.com> and finished by
Mike Conley <mconley@mozilla.com>

Differential Revision: https://phabricator.services.mozilla.com/D53075
2020-01-22 21:24:19 +00:00
Sebastian Streich
f7058f4b49 Bug 1594781 -- Refactor nsGlobalWindowOuter r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D52186
2020-01-22 17:14:08 +00:00
Jonathan Watt
af4ecb08c3 Bug 1607671. Back out changeset edf3df2adebb (bug 1602410) for regressions. kmag r=RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D59785
2020-01-22 14:43:46 +00:00
Andreas Farre
ab078dadbb Bug 1583863 - Part 3: WindowContext using SyncedContext, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D56743
2020-01-20 14:58:52 +00:00
pbz
9ca53ea171 Bug 1432856 - Extended focus methods in Window.webidl, Client.webidl and Element.webidl to pass CallerType. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D55811
2020-01-16 14:38:40 +00:00
Anny Gakhokidze
1934b9d89d Bug 1574017 - Fix console error reporting for postMessage, r=peterv
1. Rename mCallerDocumentURI field of PostMessageEvent to mCallerURI as we
might not always have a document, e.g. when we have a sandbox.
2. When we neither have caller's inner window (and thus we have no caller's
window ID) nor caller's URI, use script location as a source name for the error
object when reporting errors to console.
3. When the caller of postMessage has its window in a different process, pass along
the caller's window ID so that the error can be reported correctly.

Differential Revision: https://phabricator.services.mozilla.com/D59526
2020-01-15 20:20:31 +00:00
Olli Pettay
3e2dc6a047 Bug 1608867 - Consider to remove nsGlobalWindow* objects from id hashtable when unlinking and also clear weak references r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D59747
2020-01-14 16:38:58 +00:00
Nika Layzell
626cb3329b Bug 1607573 - Part 4: Drop the 'Outer' from GetFrameElementOuter, r=bzbarsky
No longer necessary since the nsGlobalWindow{Inner,Outer}-split.

Differential Revision: https://phabricator.services.mozilla.com/D59551
2020-01-10 19:39:31 +00:00
Nika Layzell
10760d19c0 Bug 1607573 - Part 3: Remove GetRealFrameElementOuter in favor of GetFrameElement, r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D59550
2020-01-10 19:39:01 +00:00
Nika Layzell
db23397dd9 Bug 1607573 - Part 1: Change GetRealFrameElementOuter to use BrowsingContext, r=bzbarsky
This does not fix consumers of GetRealFrameElementOuter, which may still act
incorrectly, as the frame element will not be available in cross-process
situations, but removes a user of the docshell tree.

This has a small behaviour change, in that it causes 'window.realFrameElement'
to return 'null' when run within an <iframe mozbrowser>. A quick inspection of
use-sites suggested that this would not be an issue, and it appears to pass a
try run.

Differential Revision: https://phabricator.services.mozilla.com/D59398
2020-01-10 19:22:29 +00:00
Tim Huang
f4399c7eab Bug 1599043 - Part 3: Stop propagation of the OnContentBlockingEvent in content processes. r=dimi,Ehsan
This patch moves the propatation of the onContentBlockingEvent in the
content processes. After this, the
nsGlobalWindowOuter::NotifyContentBlockingEvent will only update the
ContentBlockingLog.

Differential Revision: https://phabricator.services.mozilla.com/D55646
2020-01-13 14:07:19 +00:00
Masatoshi Kimura
1179ae0505 Bug 1448967 - Remove enablePrivilege. r=mccr8,marionette-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D57243
2020-01-08 23:14:48 +00:00
Boris Zbarsky
5989e28920 Bug 1601175. Make sure the mDoc of an inner window is set before we call SetScriptGlobalObject on the document. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D56218
2020-01-06 14:53:00 +00:00
Jonathan Watt
5b46328548 Bug 1602410. Make window.print() invoke printing via the parent process using a JSWindowActor. r=Gijs,kmag
Differential Revision: https://phabricator.services.mozilla.com/D56414
2019-12-21 12:33:11 +00:00
Andreas Farre
f6a5621897 Bug 1561715 - Part 3: Remove SchedulerGroup::IsBackground. r=smaug
Depends on D56745

Differential Revision: https://phabricator.services.mozilla.com/D56879
2019-12-12 15:20:52 +00:00
Hiroyuki Ikezoe
48585fe72f Bug 1596317 - Use CallState for SubDocEnumFunc. r=smaug
`true` -> `CallState::Continue`
`false` -> `CallState::Stop`

Differential Revision: https://phabricator.services.mozilla.com/D57437
2019-12-19 07:58:45 +00:00
Bogdan Tara
e59c8c65fb Backed out 7 changesets (bug 1596317) for causing build bustages CLOSED TREE
Backed out changeset 0d3208fcb948 (bug 1596317)
Backed out changeset fe5554dc4115 (bug 1596317)
Backed out changeset 019de59cbc93 (bug 1596317)
Backed out changeset f4851472b087 (bug 1596317)
Backed out changeset a984cf515db8 (bug 1596317)
Backed out changeset d0da5bf9b4d4 (bug 1596317)
Backed out changeset abe5f2030dd9 (bug 1596317)
2019-12-19 06:49:39 +02:00
Hiroyuki Ikezoe
5575d95de1 Bug 1596317 - Use CallState for SubDocEnumFunc. r=smaug
`true` -> `CallState::Continue`
`false` -> `CallState::Stop`

Differential Revision: https://phabricator.services.mozilla.com/D57437
2019-12-19 04:16:10 +00:00
Oana Pop Rus
2fa2ebf69d Backed out 7 changesets (bug 1432856) for build bustages failures in nsWindow.h on a CLOSED TREE
Backed out changeset 3d08c3cce533 (bug 1432856)
Backed out changeset 49d03dd89b17 (bug 1432856)
Backed out changeset 62fc84c8ce99 (bug 1432856)
Backed out changeset a8a4fa63f5b2 (bug 1432856)
Backed out changeset c81f3d5b9bf3 (bug 1432856)
Backed out changeset 8351a8b1d96a (bug 1432856)
Backed out changeset a303b775a51b (bug 1432856)
2019-12-16 23:53:35 +02:00
pbz
29a2e0c4e4 Bug 1432856 - Extended focus methods in Window.webidl, Client.webidl and Element.webidl to pass CallerType. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D55811
2019-12-16 21:06:11 +00:00
Emilio Cobos Álvarez
9034de5dd0 Bug 1603313 - Subdocument enum callbacks should take a reference. r=bzbarsky
As they can never take null.

Differential Revision: https://phabricator.services.mozilla.com/D56843
2019-12-14 05:08:39 +00:00
Kris Maglione
41a5f0e588 Bug 1588220: Keep track of last active inner window when BrowsingContext is discarded. r=bzbarsky
Any number of outer windows may be attached to a BrowsingContext over its
lifetime. While the BrowsingContext is alive, it's easy to keep track of which
of these is active, and therefore which of its inner windows is active. After
it has been discarded, though, it discards its docShell reference, so all we
can tell about an inner window is whether it is active for its own outer
window, but not whether it should be considered active for its
BrowsingContext.

This patch updates the BrowsingContext detach logic to store a flag on the
current inner window recording that it was active when its BrowsingContext was
detached, and then later checks that flag to determine if it is the current
window for a detached BrowsingContext.

Differential Revision: https://phabricator.services.mozilla.com/D49032
2019-12-12 23:11:01 +00:00
Oana Pop Rus
f0de283f03 Backed out 10 changesets (bug 1599043) for build bustages in nsGlobalWindowOuter.cpp on a CLOSED TREE
Backed out changeset 463b815557e4 (bug 1599043)
Backed out changeset 7c3f0a58cc6c (bug 1599043)
Backed out changeset 1eadd9f5b50e (bug 1599043)
Backed out changeset e4ea0d47136b (bug 1599043)
Backed out changeset 6b97581c33b6 (bug 1599043)
Backed out changeset a68bd2acf5d6 (bug 1599043)
Backed out changeset c8ed9c52508c (bug 1599043)
Backed out changeset aaf83f7806b4 (bug 1599043)
Backed out changeset 0ad30634e416 (bug 1599043)
Backed out changeset 68219c132efc (bug 1599043)
2019-12-12 17:14:54 +02:00
Tim Huang
fa5795c76b Bug 1599043 - Part 3: Stop propagation of the OnContentBlockingEvent in content processes. r=dimi,Ehsan
This patch moves the propatation of the onContentBlockingEvent in the
content processes. After this, the
nsGlobalWindowOuter::NotifyContentBlockingEvent will only update the
ContentBlockingLog.

Differential Revision: https://phabricator.services.mozilla.com/D55646
2019-12-11 15:00:39 +00:00