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

89394 Коммитов

Автор SHA1 Сообщение Дата
Andrew McCreight 0162ffca4b Bug 1604609 - Don't send large window actor messages. r=jdai
IPC crashes if you try to send large messages. The message manager
already drops messages that are too big (and used to collect telemetry
for which messages were being dropped).

I think that some message manager messages have been ported over to JS
window actors and started crashing on beta, so let's just give the
same behavior for JS window actors as we do for the message manager.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 21:17:11 +00:00
Kris Maglione e414254fc9 Bug 1588259: Part 2 - Prevent URI loads in partially-initialized BrowsingContexts. r=smaug
When we open a new window from a content process, we create a nested event
loop to wait for it to be initialized by the parent. The problem with this is
that the OpenWindow code which calls the window provider expects the window to
be in-process and uninitialized, so that it can load its own initial URI into
it, and correctly fulfil the spec-codified contract of window.open(). If
another caller initiates a load in the new window during the nested event
loop, those invariants are broken, and any manner of undefined behavior can
occur.

This patch adds a new flag to the BrowsingContext, marking it as uninitialized
until the end of the nested event loop, and blocking any attempts to load a
new URI into it in the meantime.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 19:53:24 +00:00
Kris Maglione 29c31af3ee Bug 1588259: Part 1 - Suspend windows when spinning event loop for window.open. r=smaug
This doesn't solve all problems with potential reentrancy during window.open
nested event loops, but it does improve the situation somewhat. Since any
window in the same BrowsingContextGroup can target any window in the same
group, we need to suspend all windows in the group, not just the root of the
new window's parent. We also need to make sure we suspend all in-process
windows, even if we have out-of-process frames somewhere in the parent chain.

This patch takes care of suspending timeouts and input event handling in all
of these cases. It doesn't block all potential paths for running code in the
suspended windows, though, so the next patch explicitly prevents the
problematic reentrancy.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 19:53:14 +00:00
Dan Minor 2e8f58dd24 Bug 1605150 - Disable test_mediarecorder_pause_resume_video.html on os x; r=jib
This is fallout from landing Bug 1586370, we have Bug 1605134 already on file
as a followup, so we'll disable the test for now and fix as part of that bug.

Depends on D57829

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

--HG--
extra : moz-landing-system : lando
2019-12-19 19:08:27 +00:00
Thinker Li 238a08c7d3 Bug 1604001 - Add the missing process type of the fork server for tests. r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D57218

--HG--
extra : moz-landing-system : lando
2019-12-19 15:50:03 +00:00
Dan Minor 3b58acdc9c Bug 1605150 - Further relax the timing requirements of test_mediarecorder_pause_resume_video.html; r=jib! CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com//D57829

--HG--
extra : rebase_source : eb479cf60a57b8ecd99787a903ecb297d3dca986
extra : amend_source : 4314572d78c21928c3de2adad3c34ee4eab2fe58
2019-12-19 19:32:34 +02:00
Jonathan Kingston f4f8e6b1d9 Bug 1605123 - Fix CSP keyword invalidation assertion crash. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D57803

--HG--
extra : moz-landing-system : lando
2019-12-19 15:19:04 +00:00
Tyler ea8b8dab8a Bug 1601475 - Remove ImageContentLoaded event and ImageDocumentLoaded message handling code across the tree r=Gijs,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D56051

--HG--
extra : moz-landing-system : lando
2019-12-18 21:46:51 +00:00
Andrew Halberstadt 10e66445cb Bug 1604360 - Fix duplicate keys in the DEFAULT section of some manifests r=padenot,mak
Differential Revision: https://phabricator.services.mozilla.com/D57405

--HG--
extra : moz-landing-system : lando
2019-12-18 12:53:59 +00:00
Andreas Farre 794b0068c3 Bug 1561715 - Part 3: Remove SchedulerGroup::IsBackground. r=smaug
Depends on D56745

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

--HG--
extra : moz-landing-system : lando
2019-12-12 15:20:52 +00:00
Andreas Pehrson acc3011748 Bug 1605041 - Fix static-analysis warning from bug 1586370. r=padenot
Depends on D57696

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

--HG--
extra : moz-landing-system : lando
2019-12-19 13:48:09 +00:00
Andreas Pehrson b5a333aa74 Bug 1604941 - Don't leave AudioContextOperation::Resume hanging. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D57696

--HG--
extra : moz-landing-system : lando
2019-12-19 13:17:32 +00:00
Andreas Pehrson fe6925d358 Bug 1604941 - Add crashtest. r=padenot
Depends on D56086

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

--HG--
extra : moz-landing-system : lando
2019-12-19 13:17:44 +00:00
Mirko Brodesser 9c280bf166 Bug 1600267: part 7) Call `ComparePoints` instead of `ComparePoints_Deprecated` in RangeUtils. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D55301

--HG--
extra : moz-landing-system : lando
2019-12-19 13:28:50 +00:00
Mirko Brodesser 436419e7ff Bug 1600267: part 6) Call `ComparePoints` instead of `ComparePoints_Deprecated` in ContentIterator. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D55300

--HG--
extra : moz-landing-system : lando
2019-12-19 13:27:50 +00:00
Mirko Brodesser 575a1d78d3 Bug 1600267: part 3) Call `ComparePoints` instead of `ComparePoints_Deprecated` in `Abstractrange::SetStartAndEndInternal`. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D55297

--HG--
extra : moz-landing-system : lando
2019-12-19 13:27:28 +00:00
Mirko Brodesser a5942da74e Bug 1600267: part 2) Add `Maybe<int32_t> nsContentUtils::ComparePoints`. r=smaug
Enforces callers to handle the case when the points are incomparable.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 13:27:23 +00:00
Mirko Brodesser b8bb35cc69 Bug 1600267: part 1) Rename `nsContentUtils::ComparePoints` to `ComparePoints_Deprecated`. r=smaug
In a follow-up commit a new `ComparePoints` method with cleaner
arguments and return value will be added.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 13:27:08 +00:00
David Teller a5df8d6fa3 Bug 1602712 - First implementation of GetNewOrUsedBrowserAsync;r=rhunt
Depends on D56961

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

--HG--
extra : moz-landing-system : lando
2019-12-19 10:57:13 +00:00
David Teller 43a338a859 Bug 1602712 - Split the parts of GetNewOrUsedBrowser that can be shared betwen sync and async;r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D56961

--HG--
extra : moz-landing-system : lando
2019-12-19 10:57:13 +00:00
Jean-Yves Avenard b1be794e1b Bug 1598497 - P1. move canceled attribute to nsIChannel. r=mayhemer
There is no functional change with this commit. The default implementation for GetCanceled() is still to check if the status code is a failure.

However, it can be argued that as you had to call Cancel() on the nsIChannel, having to check the nsIHttpChannelInternal interface to determine if you had been canceled in the past was rather a non obvious path.

It makes more sense to check the nsIChannel interface to determine if it's been canceled already and this allows for finer granularity if needed in the future.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 21:13:26 +00:00
Simon Giesecke 3f73c885cf Bug 1600283 - Removed uses of already_AddRefed. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55521

--HG--
extra : moz-landing-system : lando
2019-12-19 09:57:52 +00:00
Simon Giesecke 77ea686b98 Bug 1600283 - Replaced use of nsAutoPtr by UniquePtr. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55520

--HG--
extra : moz-landing-system : lando
2019-12-19 09:57:49 +00:00
Simon Giesecke 75afa9713e Bug 1600283 - Replaced use of nsAutoPtr by UniquePtr. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55519

--HG--
extra : moz-landing-system : lando
2019-12-19 09:57:47 +00:00
Simon Giesecke 409356b0e5 Bug 1600283 - Replaced use of nsAutoPtr by UniquePtr. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55518

--HG--
extra : moz-landing-system : lando
2019-12-19 09:57:45 +00:00
Simon Giesecke 02c3d4082d Bug 1600283 - Replaced use of nsAutoPtr by UniquePtr. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55517

--HG--
extra : moz-landing-system : lando
2019-12-19 09:57:42 +00:00
Simon Giesecke 9f35b34d2d Bug 1600283 - Removed unused include directives. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55516

--HG--
extra : moz-landing-system : lando
2019-12-19 09:57:40 +00:00
Simon Giesecke d6cc618323 Bug 1600283 - Replaced use of nsAutoPtr by UniquePtr. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55515

--HG--
extra : moz-landing-system : lando
2019-12-19 09:56:45 +00:00
Simon Giesecke 615338bdc3 Bug 1600283 - Replaced use of nsAutoPtr by UniquePtr. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55514

--HG--
extra : moz-landing-system : lando
2019-12-19 09:56:38 +00:00
Simon Giesecke aaa6ac5fc3 Bug 1600283 - Use std::move instead of forget. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55513

--HG--
extra : moz-landing-system : lando
2019-12-19 09:56:25 +00:00
Simon Giesecke 5c0528fd2c Bug 1600283 - Remove uses of plain pointers. r=dom-workers-and-storage-reviewers,ttung
Differential Revision: https://phabricator.services.mozilla.com/D55512

--HG--
extra : moz-landing-system : lando
2019-12-19 09:56:12 +00:00
Simon Giesecke c1de5bf10d Bug 1600283 - Remove uses of plain pointers. r=dom-workers-and-storage-reviewers,ttung
Differential Revision: https://phabricator.services.mozilla.com/D55511

--HG--
extra : moz-landing-system : lando
2019-12-19 09:56:05 +00:00
Simon Giesecke 4c8dfa2936 Bug 1600283 - Use std::move instead of forget/swap. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55510

--HG--
extra : moz-landing-system : lando
2019-12-19 09:55:52 +00:00
Simon Giesecke 6cc0dbac01 Bug 1600283 - Remove uses of plain pointers. r=dom-workers-and-storage-reviewers,ttung
Differential Revision: https://phabricator.services.mozilla.com/D55509

--HG--
extra : moz-landing-system : lando
2019-12-19 09:55:44 +00:00
Simon Giesecke 1c8c666532 Bug 1600283 - Remove uses of plain pointers. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55508

--HG--
extra : moz-landing-system : lando
2019-12-19 09:55:31 +00:00
Simon Giesecke 633e8c6f57 Bug 1600283 - Remove uses of plain pointers. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55507

--HG--
extra : moz-landing-system : lando
2019-12-19 09:25:48 +00:00
Simon Giesecke 4a157a8e0f Bug 1600283 - Remove uses of plain pointers. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55506

--HG--
extra : moz-landing-system : lando
2019-12-19 09:25:40 +00:00
Simon Giesecke e6a6bdf97a Bug 1600283 - Remove uses of plain pointers. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55505

--HG--
extra : moz-landing-system : lando
2019-12-19 09:25:28 +00:00
Simon Giesecke c78712e0c4 Bug 1600283 - Remove uses of already_AddRefed. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55504

--HG--
extra : moz-landing-system : lando
2019-12-19 09:25:20 +00:00
Simon Giesecke abd5a268de Bug 1600283 - Remove uses of already_AddRefed. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55502

--HG--
extra : moz-landing-system : lando
2019-12-19 09:25:08 +00:00
Simon Giesecke 7ecbd53423 Bug 1600283 - Remove uses of plain pointers and already_AddRefed. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55501

--HG--
extra : moz-landing-system : lando
2019-12-19 09:24:58 +00:00
Simon Giesecke 0255c289b4 Bug 1600283 - Remove uses of already_AddRefed. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55500

--HG--
extra : moz-landing-system : lando
2019-12-19 09:24:47 +00:00
Simon Giesecke 6e46506514 Bug 1600283 - Removed uses of plain pointers. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55499

--HG--
extra : moz-landing-system : lando
2019-12-19 09:24:35 +00:00
Simon Giesecke 474fd96815 Bug 1600283 - Remove uses of already_AddRefed. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55498

--HG--
extra : moz-landing-system : lando
2019-12-19 09:24:22 +00:00
Simon Giesecke edd58849e9 Bug 1600283 - Remove uses of already_AddRefed. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55497

--HG--
extra : moz-landing-system : lando
2019-12-19 09:24:15 +00:00
Simon Giesecke 9e544b61ff Bug 1600283 - Remove uses of already_AddRefed. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55496

--HG--
extra : moz-landing-system : lando
2019-12-19 09:24:02 +00:00
Simon Giesecke 29cca94cd4 Bug 1600283 - Remove uses of already_AddRefed. r=dom-workers-and-storage-reviewers,ytausky
Differential Revision: https://phabricator.services.mozilla.com/D55495

--HG--
extra : moz-landing-system : lando
2019-12-19 09:23:55 +00:00
Simon Giesecke f048b16e15 Bug 1600283 - Remove uses of already_AddRefed. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D55494

--HG--
extra : moz-landing-system : lando
2019-12-19 09:23:47 +00:00
Simon Giesecke 94bf974e83 Bug 1603767 - Ensure that NoteActorDestroyed is not called multiple times. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D57301

--HG--
extra : moz-landing-system : lando
2019-12-19 09:55:05 +00:00
Hiroyuki Ikezoe 3e3b2d6ac9 Bug 1596317 - Use EnumerateBrowsers to notify the theme change into all remote documents. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D57262

--HG--
extra : moz-landing-system : lando
2019-12-19 07:58:57 +00:00
Hiroyuki Ikezoe 04b4206ae2 Bug 1596317 - Use CallState for SubDocEnumFunc. r=smaug
`true` -> `CallState::Continue`
`false` -> `CallState::Stop`

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

--HG--
extra : moz-landing-system : lando
2019-12-19 07:58:45 +00:00
Hiroyuki Ikezoe 0452b0e146 Bug 1596317 - Use CallState for nsContentUtils::CallOnAllRemoteChildren. r=smaug
`true` -> `CallState::Stop`
`false` -> `CallState::Continue`

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

--HG--
extra : moz-landing-system : lando
2019-12-19 07:58:27 +00:00
Hiroyuki Ikezoe 14e41fda7b Bug 1596317 - Split out CallState from nsGlobalWindowInner. r=smaug
We do want to use it for nsContentUtils::CallOnAllRemoteChildren and
SubDocEnumFunc since `boolean` is quite confusing whether we still need to
enumerate further children or not, actually
nsContentUtils::CallOnAllRemoteChildren stops in case of `true`, whereas
SubDocEnumFunc stops on `false`

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

--HG--
extra : moz-landing-system : lando
2019-12-19 07:58:09 +00:00
Hiroyuki Ikezoe aec08b91cc Bug 1596317 - Change the function pointer argument of nsContentUtils::CallOnAllRemoteChildren to std::function. r=smaug
We are going to introduce a new function in Document in this commit series,
which enumerates all child documents regardless of whether it's in the same
process, in content processes or in out-of-process iframes. The function takes
std::functions, but I don't have any good ideas to convert lambda functions with
capturing variables to function pointer.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 07:57:57 +00:00
Hiroyuki Ikezoe 11f2716492 Bug 1596317 - Implement SetPrefersReducedMotionOverrideForTest backend for GTK. r=emilio
On GTK changing gtk-enable-animation in a process doesn't affect in different
processes for some reasons.  So we take the same approach as what we did for
OSX[1] that is when SetPrefersReducedMotionOverrideForTest is called we set the
given value as a cache in the parent process and send a notification to system
as if the value changed thus the notification kicks PBroser.ThemeChanged to
update the cache in the content process, thus we can use the cache value on
querying the corresponding value in the content process.

[1] https://hg.mozilla.org/mozilla-central/rev/67a5acf7363d

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

--HG--
extra : moz-landing-system : lando
2019-12-19 09:04:58 +00:00
Alex Henrie 41c36c80d5 Bug 1604399 - Remove dead assignment from Sgpd::Parse. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D57422

--HG--
extra : moz-landing-system : lando
2019-12-19 06:14:28 +00:00
Bogdan Tara a96ffb25c5 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 6837a57ea8 Bug 1596317 - Use EnumerateBrowsers to notify the theme change into all remote documents. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D57262

--HG--
extra : moz-landing-system : lando
2019-12-19 04:16:59 +00:00
Hiroyuki Ikezoe 9e4bf031ae Bug 1596317 - Use CallState for SubDocEnumFunc. r=smaug
`true` -> `CallState::Continue`
`false` -> `CallState::Stop`

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

--HG--
extra : moz-landing-system : lando
2019-12-19 04:16:10 +00:00
Hiroyuki Ikezoe 634fee0f48 Bug 1596317 - Use CallState for nsContentUtils::CallOnAllRemoteChildren. r=smaug
`true` -> `CallState::Stop`
`false` -> `CallState::Continue`

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

--HG--
extra : moz-landing-system : lando
2019-12-19 03:36:35 +00:00
Hiroyuki Ikezoe 04d8b367bf Bug 1596317 - Split out CallState from nsGlobalWindowInner. r=smaug
We do want to use it for nsContentUtils::CallOnAllRemoteChildren and
SubDocEnumFunc since `boolean` is quite confusing whether we still need to
enumerate further children or not, actually
nsContentUtils::CallOnAllRemoteChildren stops in case of `true`, whereas
SubDocEnumFunc stops on `false`

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

--HG--
extra : moz-landing-system : lando
2019-12-19 03:36:17 +00:00
Hiroyuki Ikezoe 402bdca99d Bug 1596317 - Change the function pointer argument of nsContentUtils::CallOnAllRemoteChildren to std::function. r=smaug
We are going to introduce a new function in Document in this commit series,
which enumerates all child documents regardless of whether it's in the same
process, in content processes or in out-of-process iframes. The function takes
std::functions, but I don't have any good ideas to convert lambda functions with
capturing variables to function pointer.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 03:35:59 +00:00
Hiroyuki Ikezoe 3b2739a1da Bug 1596317 - Implement SetPrefersReducedMotionOverrideForTest backend for GTK. r=emilio
On GTK changing gtk-enable-animation in a process doesn't affect in different
processes for some reasons.  So we take the same approach as what we did for
OSX[1] that is when SetPrefersReducedMotionOverrideForTest is called we set the
given value as a cache in the parent process and send a notification to system
as if the value changed thus the notification kicks PBroser.ThemeChanged to
update the cache in the content process, thus we can use the cache value on
querying the corresponding value in the content process.

[1] https://hg.mozilla.org/mozilla-central/rev/67a5acf7363d

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

--HG--
extra : moz-landing-system : lando
2019-12-19 04:15:44 +00:00
Ehsan Akhgari 1ca91dd7ab Bug 1603969 - Part 1: Remove the concept of granted origins from the anti-tracking backend; r=baku
Granted origins cause a third-party tracker browsing context to not get
full first-party storage access after successfully calling the storage
access API or a heuristic granting ephemeral access.

For example, after https://tracker.example calls the storage access API
successfully in the third-party context, they embed
https://other-tracker.example, and that load fails because of ETP
restrictions.  Here what happens is that https://other-tracker.example
is mistakenly considered the granted origin, and because such a
permission doesn't exist, access is denied.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 02:56:52 +00:00
Gurzau Raul bed8b9f116 Backed out 4 changesets (bug 1603969) for failing at /browser_startup_mainthreadio.js on a CLOSED TREE.
Backed out changeset c4d79087eef1 (bug 1603969)
Backed out changeset 2c0198f3506c (bug 1603969)
Backed out changeset c5ad252c525b (bug 1603969)
Backed out changeset a334451b95eb (bug 1603969)
2019-12-19 02:08:09 +02:00
Timothy Nikkel 36ab8e6657 Bug 1602258. Use GetAvailableScrollingDirectionsForUserInputEvents in WheelHandlingUtils::CanScrollOn. r=botond
We also need to adjust the scroll range we use. We do this by adding GetScrollRangeForUserInputEvents which just uses the range that GetAvailableScrollingDirectionsForUserInputEvents computed.

This should give two improvements:
1) CanScrollOn will not report that the user can scroll in an overflow hidden direction.
2) CanScrollOn will report that the user can scroll in an overflow hidden direction if the document is pinch zoomed in so that the user can scroll around the layout viewport.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 23:08:24 +00:00
Andreas Pehrson 00656a6afa Bug 1542321 - Re-init a failed audio driver at increasing intervals. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56086

--HG--
extra : moz-landing-system : lando
2019-12-18 22:53:46 +00:00
Andreas Pehrson 8063cbbcae Bug 1586370 - Relax the timing requrements of test_mediarecorder_pause_resume_video.html. r=jib
Unfortunate, but this is an existing intermittent that is blocking bug 1586370
from landing.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:53:42 +00:00
Andreas Pehrson 08bd51f92c Bug 1586370 - Signal to AudioInputProcessing when an audio driver starts so it can reset state. r=padenot
Since we now run a fallback driver while an AudioCallbackDriver starts, this has
exposed a path where the double-append-during-iteration assertion fails.

It seems to happen at least when there's an audio->audio driver switch, and a
fallback driver was running in between.

The state for this assertion assumes it's reset when the AudioCallbackDriver
that's feeding it starts, but forgot to account for driver switches and
fallbacks, which could still cause silence to be pulled for the track.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:53:37 +00:00
Andreas Pehrson aab32113c2 Bug 1586370 - Update GraphDriver lifetime docs. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D57036

--HG--
extra : moz-landing-system : lando
2019-12-18 22:53:35 +00:00
Andreas Pehrson 8ec178bc75 Bug 1586370 - Run a fallback driver while an audio driver starts. r=padenot
This allows the graph to run in case starting the audio driver takes a long
time. We could also do this only for audio->audio driver switches as there is
not much point to keep the graph iterating if we are starting a new graph, or
switching to or from audio. That would however mean more paths, and implied,
harder-to-catch bugs.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:53:33 +00:00
Andreas Pehrson f556569fa0 Bug 1586370 - Re-init an AudioCallbackDriver with a fallback driver if it previously failed to start. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56084

--HG--
extra : moz-landing-system : lando
2019-12-18 22:53:28 +00:00
Andreas Pehrson d192bc08fa Bug 1586370 - Fall back to a SystemClockDriver if AudioCallbackDriver fails to start or hits an error. r=padenot
Note that this will only switch to the fallback driver once, and never switch
back. This will improve in future patches.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:52:33 +00:00
Andreas Pehrson a4fbb9b878 Bug 1586370 - Pass IterationEnd up to the graph rather than back-querying the driver. r=padenot
This makes it simpler to maintain state in the GraphDriver in more complex
cases, such as when an AudioCallbackDriver is backed by a fallback driver.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:52:24 +00:00
Andreas Pehrson 712efff333 Bug 1586370 - Remove MediaTrackGraph dependency from AudioCallbackDriver gtest. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D57552

--HG--
extra : moz-landing-system : lando
2019-12-18 22:52:07 +00:00
Andreas Pehrson 638c69d019 Bug 1586370 - Make GraphDriver iterate the Graph through an interface instead of directly. r=padenot
This lets us iterate more things than MediaTrackGraphImpl, e.g., audio drivers
(from the fallback driver) and unit test classes.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:51:57 +00:00
Andreas Pehrson 7502376eec Bug 1586370 - Rename GraphDriver::OnGraphThread to InIteration. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56081

--HG--
extra : moz-landing-system : lando
2019-12-18 22:51:45 +00:00
Andreas Pehrson 7e49593412 Bug 1586370 - Tighten some MTG threading asserts. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56079

--HG--
extra : moz-landing-system : lando
2019-12-18 22:51:37 +00:00
Andreas Pehrson a8f9785f19 Bug 1586370 - Let MTG handle driver switching through IterationResult. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56078

--HG--
extra : moz-landing-system : lando
2019-12-18 22:51:25 +00:00
Andreas Pehrson 43f3c6a153 Bug 1586370 - Let IterationResult handle SignalMainThreadCleanup. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56077

--HG--
extra : moz-landing-system : lando
2019-12-18 22:51:12 +00:00
Andreas Pehrson a9ee750781 Bug 1586370 - Return a flexible object from OneIteration. r=padenot
This will let us get rid of such GraphDriver dependencies on MediaTrackGraphImpl
as SignalMainThreadCleanup and SetCurrentDriver.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:51:05 +00:00
Andreas Pehrson 1adcbfee14 Bug 1586370 - Use MozPromise for AudioContextOperations and NotifyWhenGraphStarted. r=padenot
This removes a level of indirection where the graph had to call back into
AudioContext. It also removes a dependency on the graph from GraphDriver, where
it can now just resolve a MozPromiseHolder instead.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:50:52 +00:00
Andreas Pehrson 43d5cf8ee3 Bug 1586370 - Give GraphDriver its own time conversion methods. r=padenot
This also removes the ones in MTGImpl that are no longer used.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:50:45 +00:00
Andreas Pehrson b04df5db08 Bug 1586370 - Move rate conversion functions to MediaSegment.h. r=padenot
This is where TrackTicks is defined, which is what they convert to and from.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:50:32 +00:00
Andreas Pehrson c5f908273c Bug 1586370 - Give AudioCallbackDriver its own device ids. r=padenot
One less dependency on MTG from the driver.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:50:25 +00:00
Andreas Pehrson 69e8987ed0 Bug 1586370 - Don't query the graph for AudioCallbackDriver's sample rate. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56071

--HG--
extra : moz-landing-system : lando
2019-12-18 22:50:12 +00:00
Andreas Pehrson 179e64799a Bug 1586370 - Move AudioMixer from MTG to AudioCallbackDriver. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56070

--HG--
extra : moz-landing-system : lando
2019-12-18 22:50:00 +00:00
Andreas Pehrson 71d41e5393 Bug 1586370 - Move EnsureNextIteration logic into ThreadedDriver . r=padenot
This removes some driver-graph interdependencies.

It also changes the logic of EnsureNextIteration() so that it no longer blindly
wakes the driver up, should it be sleeping. Instead it waits until the driver's
next iteration would have occurred anyway, as that seems more expected, and
closer to how an AudioClockDriver works.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:49:52 +00:00
Andreas Pehrson ada6698458 Bug 1586370 - Move SwapMessageQueues-on-first-iteration to MTGImpl. r=padenot
This let's us remove GraphDriver's dependency on the graph's message queues.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:49:43 +00:00
Andreas Pehrson 592f4e69ae Bug 1586370 - Remove GraphDriver dependency on GraphImpl()->StateComputedTime(). r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56067

--HG--
extra : moz-landing-system : lando
2019-12-18 22:49:30 +00:00
Andreas Pehrson 3028322cba Bug 1586370 - Ensure there's another iteration when the front message queue becomes populated. r=padenot
I found this while running local tests. In particular
`./mach test dom/media/test/test_mediarecorder_record_addtracked_stream.html --headless --repeat 1`.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:49:23 +00:00
Andreas Pehrson 0b19596b81 Bug 1586370 - Remove unused GraphDriver::EnsureNextIteration. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56065

--HG--
extra : moz-landing-system : lando
2019-12-18 22:49:10 +00:00
Andreas Pehrson 409caa46dc Bug 1586370 - Move WaitForNextIteration to ThreadedDriver. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56063

--HG--
extra : moz-landing-system : lando
2019-12-18 22:49:03 +00:00
Andreas Pehrson fbee05c898 Bug 1586370 - Make SystemClockDriver::mIsFallback const. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56062

--HG--
extra : moz-landing-system : lando
2019-12-18 22:48:50 +00:00
Andreas Pehrson 488732a3d2 Bug 1586370 - Let FallbackToSystemClockDriver take its own monitor. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56061

--HG--
extra : moz-landing-system : lando
2019-12-18 22:48:38 +00:00
Andreas Pehrson 6573446830 Bug 1586370 - Clarify mixer callback calls. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D56060

--HG--
extra : moz-landing-system : lando
2019-12-18 22:48:30 +00:00
Alastor Wu dac39bbeb9 Bug 1601144 - use 'MediaControlKeysEvent' to replace 'MediaControlActions'. r=chunmin
They are all used to control media, so we could unify them to one type.

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

--HG--
extra : moz-landing-system : lando
2019-12-18 22:37:39 +00:00
Thomas Wisniewski 1e12d53224 Bug 1553265 - add a document.addCertException function to about:certerror pages and use it there; also treat GeckoView error pages as CallerIsTrusted(Net|Cert)Error; r=snorp,johannh,baku
Add a document.addCertException function to about:certerror pages, and use it on the desktop certerror page.

Also, as the CallerIsTrusted* functions expect URLs like about:certerror, but GeckoView error pages are data URLs, and so need to be handled differently for these special error-page methods to be exposed on their documents.

Example usage of document.addCertException:
  document.addCertException(
    true|false /* true == temporary, false == permanent */
  ).then(
    () => {
      location.reload();
    },
    err => {
      console.error(err);
    }
  );

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

--HG--
extra : moz-landing-system : lando
2019-12-18 21:55:32 +00:00
Ehsan Akhgari 5d2fded7b8 Bug 1601786 - Remove the "allow on any site" option from the storage access API prompt; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D56246

--HG--
extra : moz-landing-system : lando
2019-12-18 21:31:35 +00:00
Mats Palmgren baaafd0dfa Bug 1604772 - Remove the eSVGGeometry IsFrameOfType bit. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D57622

--HG--
extra : moz-landing-system : lando
2019-12-18 16:06:29 +00:00