gecko-dev/dom/ipc
alwu 4634c817c4 Bug 1625615 - part0 : create and set the flag suspendMediaWhenInactive on docShell. r=baku,farre
Implemecurnt a flag `suspendMediaWhenInactive` on the docShell that indicates media in that shell should be suspended when the shell is inactive. Currently, only GeckoView is using this flag.

---

The reason of implementing this flag is because in bug1577890 we remove the old way to suspend/resume the media, and I thought setting docshell to inactive is enough to suspend the media because we already have a mechanism which would suspend/resume media when document becomes inactive/active [1].

However, the active state of document is actually different from what I thought it was. Setting docshell to inactive won't change the document's active state, because that indicates if the document is the current active document for the docshell [2] (docshell can have multiple documents), instead of indicating if the docshell is active or not.

Therefore, we have to add another flag to indicate if the docshell wants to suspend its media when it's inactive, in order to use current mechanism to suspend/resume media.

[1] https://searchfox.org/mozilla-central/rev/4d2a9d5dc8f0e65807ee66e2b04c64596c643b7a/dom/html/HTMLMediaElement.cpp#6453
[2] https://searchfox.org/mozilla-central/rev/4d2a9d5dc8f0e65807ee66e2b04c64596c643b7a/dom/base/Document.h#2627-2633

Differential Revision: https://phabricator.services.mozilla.com/D69669

--HG--
extra : moz-landing-system : lando
2020-04-15 18:13:29 +00:00
..
fuzztest
tests Backed out 2 changesets (bug 1621726) for web platform test failures CLOSED TREE 2020-04-06 22:03:02 +03:00
BrowserBridgeChild.cpp Bug 1440212 part 1. Remove the always-true aIsTrusted argument of FireFrameLoadEvent. r=nika 2020-03-11 22:29:53 +00:00
BrowserBridgeChild.h Bug 1440212 part 1. Remove the always-true aIsTrusted argument of FireFrameLoadEvent. r=nika 2020-03-11 22:29:53 +00:00
BrowserBridgeHost.cpp Bug 1550800 - Call BrowserParent::UpdateDimensions() in BrowserBridgeParent::RecvUpdateDimensions. r=nika,hsivonen 2020-02-13 22:30:56 +00:00
BrowserBridgeHost.h Bug 1588791 - Cleanup threading of OwnerShowInfo. r=mattwoodrow 2020-01-13 11:30:36 +00:00
BrowserBridgeParent.cpp Bug 1620594 - Part 7: Remove TabGroup and SystemGroup. r=nika,bas 2020-04-07 15:17:47 +00:00
BrowserBridgeParent.h Bug 1550800 - Call BrowserParent::UpdateDimensions() in BrowserBridgeParent::RecvUpdateDimensions. r=nika,hsivonen 2020-02-13 22:30:56 +00:00
BrowserChild.cpp Bug 1625615 - part0 : create and set the flag suspendMediaWhenInactive on docShell. r=baku,farre 2020-04-15 18:13:29 +00:00
BrowserChild.h Bug 1625615 - part0 : create and set the flag suspendMediaWhenInactive on docShell. r=baku,farre 2020-04-15 18:13:29 +00:00
BrowserHost.cpp Bug 1625615 - part0 : create and set the flag suspendMediaWhenInactive on docShell. r=baku,farre 2020-04-15 18:13:29 +00:00
BrowserHost.h Bug 1588791 - Cleanup threading of OwnerShowInfo. r=mattwoodrow 2020-01-13 11:30:36 +00:00
BrowserParent.cpp Bug 1625615 - part0 : create and set the flag suspendMediaWhenInactive on docShell. r=baku,farre 2020-04-15 18:13:29 +00:00
BrowserParent.h Bug 1625615 - part0 : create and set the flag suspendMediaWhenInactive on docShell. r=baku,farre 2020-04-15 18:13:29 +00:00
ClonedErrorHolder.cpp Bug 1611415 - Prefer using std::move over forget. r=froydnj 2020-02-13 14:38:48 +00:00
ClonedErrorHolder.h Bug 1558520, rework remote controller to use JSWindowActor instead of having the browser have a controller, r=smaug 2020-03-12 16:47:57 +00:00
CoalescedInputData.h
CoalescedMouseData.cpp Bug 1563139 - Remove StaticPrefs.h. r=glandium 2019-07-26 01:10:23 +00:00
CoalescedMouseData.h
CoalescedWheelData.cpp
CoalescedWheelData.h
ColorPickerParent.cpp Bug 1585156 - Remove useless inclusions of nsIDOMWindow.h and nsIDOMWindowUtils.h r=smaug 2019-09-30 22:06:47 +00:00
ColorPickerParent.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/ipc. r=smaug 2020-03-06 09:11:40 +00:00
components.conf
ContentChild.cpp Bug 1363541 - Modernize the PermissionManager - part 4 - mozilla namespace, r=timhuang 2020-04-11 13:42:12 +00:00
ContentChild.h Bug 1597159 - Defer creating DocumentLoadListener's stream filter until after we process switch. r=kmag 2020-04-09 07:03:49 +00:00
ContentParent.cpp Bug 1594529 - Create LoadInfo for subdocuments directly in parent process with DocumentChannel. r=mattwoodrow,nika 2020-04-15 18:53:06 +00:00
ContentParent.h Backed out 2 changesets (bug 1626573) for perma bc failures in browser/base/content/test/contextMenu/browser_contextmenu_loadblobinnewtab.js CLOSED TREE 2020-04-15 15:08:08 +03:00
ContentProcess.cpp Bug 1602635 - [macOS] Remove security.sandbox.content.mac.earlyinit and the old sandbox startup code paths r=spohl 2020-03-17 18:29:03 +00:00
ContentProcess.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/ipc. r=smaug 2020-03-06 09:11:40 +00:00
ContentProcessManager.cpp Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan 2019-12-06 09:24:56 +00:00
ContentProcessManager.h Bug 1613985 - Use MOZ_COUNTED_DEFAULT_CTOR_*/MOZ_COUNTED_DTOR_* macros. r=froydnj 2020-02-20 11:40:14 +00:00
CPOWManagerGetter.h
CSPMessageUtils.cpp Bug 1627859 - Convert nsIContentSecurityPolicy* IPDL serialization to use CSPInfo. r=ckerschb 2020-04-10 22:13:58 +00:00
CSPMessageUtils.h
DocShellMessageUtils.cpp Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan 2019-12-06 09:24:56 +00:00
DocShellMessageUtils.h Bug 1588791 - Make fission iframes honor and deal with the scrolling attribute. r=mattwoodrow 2020-01-13 11:30:44 +00:00
DOMTypes.ipdlh Bug 1626404: Part 2b - Serialize source BC with LoadState. r=nika CLOSED TREE 2020-04-04 02:42:42 +00:00
EffectsInfo.h
FilePickerParent.cpp Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/ipc. r=smaug 2020-03-06 09:11:40 +00:00
FilePickerParent.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/ipc. r=smaug 2020-03-06 09:11:40 +00:00
IdType.h
jar.mn Bug 1595908, replace .xul test files in dom/ to .xhtml r=smaug 2019-11-27 15:39:16 +00:00
JSWindowActor.cpp Backed out 2 changesets (bug 1580176) for causing hazard bustages CLOSED TREE 2020-03-06 21:31:48 +02:00
JSWindowActor.h Bug 1558520, rework remote controller to use JSWindowActor instead of having the browser have a controller, r=smaug 2020-03-12 16:47:57 +00:00
JSWindowActorChild.cpp Bug 1616991 - Rename WindowGlobalChild::WindowGlobal getter to reflect nullability, r=kmag 2020-03-23 23:03:50 +00:00
JSWindowActorChild.h Backed out changeset 0b8ffd5fed51 (bug 1580447) for causing build bustages. 2020-03-19 14:53:26 +02:00
JSWindowActorParent.cpp Bug 1580447 - Expose Content{Parent, Child} to JS;r=nika 2020-03-20 09:11:32 +00:00
JSWindowActorParent.h Backed out changeset 0b8ffd5fed51 (bug 1580447) for causing build bustages. 2020-03-19 14:53:26 +02:00
JSWindowActorService.cpp Bug 1557118, add support for filtering actor creation based on the messagemanagergroup attribute set on browser elements, r=farre 2020-04-01 12:59:19 +00:00
JSWindowActorService.h Bug 1557118, add support for filtering actor creation based on the messagemanagergroup attribute set on browser elements, r=farre 2020-04-01 12:59:19 +00:00
ManifestMessagesChild.jsm Bug 1625384 - Remove window.onappinstalled event, as it was never used or shipped r=baku 2020-03-27 08:28:09 +00:00
MaybeDiscarded.h Backed out 6 changesets (bug 1626404) for frequent timeouts on test_postMessage_onOther.html CLOSED TREE 2020-04-09 11:07:40 +03:00
MemMapSnapshot.cpp Bug 1479960 - Convert MemMapSnapshot to use frozen shared memory. r=kmag 2019-08-14 22:48:40 +00:00
MemMapSnapshot.h Bug 1479960 - Convert MemMapSnapshot to use frozen shared memory. r=kmag 2019-08-14 22:48:40 +00:00
MemoryReportRequest.cpp Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/ipc. r=smaug 2020-03-06 09:11:40 +00:00
MemoryReportRequest.h
MemoryReportTypes.ipdlh
MMPrinter.cpp Bug 1626774 - Took out redundant return statement at the end of MMPrinter::PrintImpl() function. r=tjr 2020-04-11 07:53:57 +00:00
MMPrinter.h
moz.build Bug 1363541 - Modernize the PermissionManager - part 4 - mozilla namespace, r=timhuang 2020-04-11 13:42:12 +00:00
nsIContentChild.idl Bug 1580447 - Expose Content{Parent, Child} to JS;r=nika 2020-03-20 09:11:32 +00:00
nsIContentParent.idl Bug 1580447 - Expose Content{Parent, Child} to JS;r=nika 2020-03-20 09:11:32 +00:00
nsIHangReport.idl
nsIRemoteWebProgress.idl
nsIRemoteWebProgressRequest.idl Bug 1559657: Pass load time in RemoteWebProgress. r=Ehsan,barret 2019-07-11 04:00:41 +00:00
nsQueryActor.h Bug 1558520, rework remote controller to use JSWindowActor instead of having the browser have a controller, r=smaug 2020-03-12 16:47:57 +00:00
PBrowser.ipdl Bug 1625615 - part0 : create and set the flag suspendMediaWhenInactive on docShell. r=baku,farre 2020-04-15 18:13:29 +00:00
PBrowserBridge.ipdl Bug 1440212 part 1. Remove the always-true aIsTrusted argument of FireFrameLoadEvent. r=nika 2020-03-11 22:29:53 +00:00
PBrowserOrId.ipdlh
PColorPicker.ipdl
PContent.ipdl Bug 1597159 - Defer creating DocumentLoadListener's stream filter until after we process switch. r=kmag 2020-04-09 07:03:49 +00:00
PContentPermission.ipdlh
PContentPermissionRequest.ipdl
PCycleCollectWithLogs.ipdl
PermissionMessageUtils.cpp
PermissionMessageUtils.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/ipc. r=smaug 2020-03-06 09:11:40 +00:00
PFilePicker.ipdl Bug 1553603 - Support "capture" attribute in Gecko and expose in GV. r=geckoview-reviewers,smaug,snorp,agi 2019-07-30 18:13:05 +00:00
PLoginReputation.ipdl
PPluginWidget.ipdl Bug 1432856 - Extended focus methods in Window.webidl, Client.webidl and Element.webidl to pass CallerType. r=smaug 2020-01-16 14:38:40 +00:00
PProcessHangMonitor.ipdl Bug 1582042 - Remove useless threading of aForceRepaint around various IPC messages. r=mconley 2019-09-26 22:11:17 +00:00
PreallocatedProcessManager.cpp Bug 1538200 - Kill the preallocated process when we're low on memory r=mconley 2019-10-31 15:55:40 +00:00
PreallocatedProcessManager.h
PrefsTypes.ipdlh
ProcessHangMonitor.cpp Bug 1609815 - Remove Web Replay C++ implementation. r=jgilbert,jandem,gbrown 2020-02-27 17:39:15 +00:00
ProcessHangMonitor.h Bug 1582042 - Remove useless threading of aForceRepaint around various IPC messages. r=mconley 2019-09-26 22:11:17 +00:00
ProcessHangMonitorIPC.h
ProcessPriorityManager.cpp Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/ipc. r=smaug 2020-03-06 09:11:40 +00:00
ProcessPriorityManager.h
PropertyBagUtils.cpp Bug 911444 part 2. Allow sending an nsIPrincipal in a variant over IPC. r=nika 2020-02-27 14:54:53 +00:00
PropertyBagUtils.h Bug 1596665 - P1. Add IPDL serializer for nsHasPropertyBag/nsIVariant. r=mattwoodrow 2019-11-26 01:24:12 +00:00
PTabContext.ipdlh Bug 1539497, navigator.maxTouchPoints returns 0 in child process, r=ehsan 2019-07-19 01:45:16 +03:00
PURLClassifier.ipdl
PURLClassifierInfo.ipdlh
PURLClassifierLocal.ipdl
PWindowGlobal.ipdl Bug 1594529 - Create LoadInfo for subdocuments directly in parent process with DocumentChannel. r=mattwoodrow,nika 2020-04-15 18:53:06 +00:00
ReferrerInfoUtils.cpp Bug 1611415 - Prefer using std::move over forget. r=froydnj 2020-02-13 14:38:48 +00:00
ReferrerInfoUtils.h
RefMessageBodyService.cpp Bug 1617628 - Hide nsBaseHashtable Put overloads in nsRefPtrHashtable subclass. r=froydnj 2020-02-25 17:03:36 +00:00
RefMessageBodyService.h Bug 1610020 - BroadcastChannel + wasm - part 5 - RefMessageBody for BroadcastChannels, r=smaug 2020-01-24 08:00:08 +00:00
remote-test.js Bug 1561435 - Format dom/, a=automatic-formatting 2019-07-05 10:44:55 +02:00
RemoteBrowser.cpp Bug 1562642 - Add missing MPL2 headers r=mhoye 2019-07-05 17:05:57 +00:00
RemoteBrowser.h Bug 1588791 - Cleanup threading of OwnerShowInfo. r=mattwoodrow 2020-01-13 11:30:36 +00:00
RemoteWebProgress.cpp
RemoteWebProgress.h
RemoteWebProgressRequest.cpp Bug 1577040 - Part 7: Get rid of nsIClassifiedChanel::IsTrackingResource(), r=Ehsan 2020-02-20 07:30:30 +00:00
RemoteWebProgressRequest.h Bug 1559657: Pass load time in RemoteWebProgress. r=Ehsan,barret 2019-07-11 04:00:41 +00:00
ServiceWorkerConfiguration.ipdlh
SharedMap.cpp Bug 1550108 - Split out Input/OutputBuffer into their own file r=froydnj 2019-10-04 20:44:41 +00:00
SharedMap.h
SharedMapChangeEvent.h
SharedMessageBody.cpp Bug 1611855 - Worklet must be part of the same parent's agentCluster - part 8 - usage of IsSharedMemoryAllowed, r=smaug 2020-02-06 13:51:07 +00:00
SharedMessageBody.h Bug 1609990 - AgentCluster comparison in MessagePort and BroadcastChannel - part 2 - MessageDataType, r=smaug 2020-01-24 16:19:59 +00:00
SharedStringMap.cpp Bug 1479960 - Give SharedStringMap a magic number so that all zeroes isn't a valid instance. r=kmag 2019-08-14 22:48:38 +00:00
SharedStringMap.h Bug 1479960 - Give SharedStringMap a magic number so that all zeroes isn't a valid instance. r=kmag 2019-08-14 22:48:38 +00:00
StringTable.h
StructuredCloneData.cpp Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/ipc. r=smaug 2020-03-06 09:11:40 +00:00
StructuredCloneData.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/ipc. r=smaug 2020-03-06 09:11:40 +00:00
TabContext.cpp Bug 1612483 - Remove mozilla::dom::TabContext::IsMozBrowser(). r=bzbarsky 2020-02-05 16:27:49 +00:00
TabContext.h Bug 1612483 - Remove mozilla::dom::TabContext::IsMozBrowser(). r=bzbarsky 2020-02-05 16:27:49 +00:00
TabMessageUtils.cpp
TabMessageUtils.h Bug 1564195 - Group the results of APZInputBridge::ReceiveInputEvent() into a struct. r=tnikkel 2019-09-19 02:45:21 +00:00
test.xhtml Bug 1595908, replace .xul test files in dom/ to .xhtml r=smaug 2019-11-27 15:39:16 +00:00
URLClassifierChild.h Bug 1615155 - Don't generate default Recv__delete__ if there are args. r=nika 2020-02-18 20:46:21 +00:00
URLClassifierParent.cpp Bug 1580416 - P1. Use a different fragment method when the URI is a pairwiseWhitelistedURI. r=Ehsan 2019-09-27 13:22:18 +00:00
URLClassifierParent.h Bug 1477756 - Initial out-of-process WebGL implementation. r=mccr8,handyman 2020-01-08 22:19:14 +00:00
UserActivationIPCUtils.h Bug 1578355 - Part 2: Introduce UserActivation::State; r=smaug 2019-09-20 11:10:13 +00:00
WindowGlobalActor.cpp Bug 1620322 - Part 1: Refactor the code for content blocking allow list out of AntiTrackingCommon.cpp; r=baku 2020-03-06 16:36:01 +00:00
WindowGlobalActor.h Backed out 2 changesets (bug 1580176) for causing hazard bustages CLOSED TREE 2020-03-06 21:31:48 +02:00
WindowGlobalChild.cpp Bug 1594529 - Create LoadInfo for subdocuments directly in parent process with DocumentChannel. r=mattwoodrow,nika 2020-04-15 18:53:06 +00:00
WindowGlobalChild.h Bug 1594529 - Create LoadInfo for subdocuments directly in parent process with DocumentChannel. r=mattwoodrow,nika 2020-04-15 18:53:06 +00:00
WindowGlobalParent.cpp Bug 1594529 - Create LoadInfo for subdocuments directly in parent process with DocumentChannel. r=mattwoodrow,nika 2020-04-15 18:53:06 +00:00
WindowGlobalParent.h Bug 1594529 - Create LoadInfo for subdocuments directly in parent process with DocumentChannel. r=mattwoodrow,nika 2020-04-15 18:53:06 +00:00