and use them in MediaTrack.
Having the public API on the MediaTrack ensures that the caller has a track
to keep the graph alive.
The only behavior change is that "MediaTrack::DispatchToMainThreadStableState
ControlMessage" is now traced even if in shutdown.
Strong MediaTrack references are now held for refcounted-inside-lambda
static analysis.
Differential Revision: https://phabricator.services.mozilla.com/D191062
When using the accent color in the titlebar we apply InactiveCaption
color, but then we also apply this opacity which causes the text to be
super dark.
Use color-mix() rather than opacity on the lwtheme case, so that it
works on Linux and macOS when themes are used too.
Adapt browser-custom-colors.css to do this for the system theme on
Windows and macOS so that there's no behavior change.
For high contrast and Linux, InactiveCaption should have us covered.
Depends on D190952
Differential Revision: https://phabricator.services.mozilla.com/D190953
A similar assertion will be added to new methods for other
ControlMessageInterface objects in a subsequent patch.
MediaTrackGraphImpl::OpenAudioInput() and
AudioListener::SendListenerEngineEvent() are two of a number of cases that
construct a ControlMessage with a null track.
Differential Revision: https://phabricator.services.mozilla.com/D191061
Having this in MediaTrackGraph.h will enable some templated ControlMessage
methods on MediaTrack without needing to put their definitions in
MediaTrackGraphImpl.h.
Reference-count logging is on the abstract class because that will be the base
of a templated class in a subsequent comment and the logging doesn't like the
same name on classes of different sizes.
Differential Revision: https://phabricator.services.mozilla.com/D191060
This patch uses the custom browsertime exposed start/stop command
for using the chrome Trace. Previously the logic in browsertime
was intended for profiling pageloads, and would end prematurely before
the benchmark was completed. A similar custom start/stop approach was
done previously for the gecko profiler, and now the same thing is needed
here.
Differential Revision: https://phabricator.services.mozilla.com/D188128
This matches the behavior of other browsers (in fact, I filed [1] about
it long time ago).
This avoids a bunch of overhead in some speedometer subtests. Makes me a
bit sad because I still think our approach is slightly more correct per
spec, but not worth the performance cost.
[1]: https://github.com/w3c/csswg-drafts/issues/2263
Differential Revision: https://phabricator.services.mozilla.com/D190705
We currently do not refresh the cached metadata in the add-ons
repository because the update timer isn't enabled on Android.
This patch calls the add-ons repository update logic to refresh
the cached metadata when an add-on is checked for updates. This
is similar to what we're doing when we perform a (full) background
update check on Desktop.
Differential Revision: https://phabricator.services.mozilla.com/D191081
CodecSpecificInfoVP9::end_of_picture is "only" deprecated, but never read by
libwebrtc.
The new base-class-based CodecSpecificInfo::end_of_picture is true by default,
so this is not a functional change. This patch aims to maintain the explicitness
of setting end_of_picture, and to silence the deprecation warning.
Differential Revision: https://phabricator.services.mozilla.com/D191058
This removes the pref to re-enable the legacy wizard, and all of the things that used
to read from it.
It also disables the ability to use the legacy wizard from about:welcome with the
aboutWelcomeBehavior feature.
It also removes the closeMigrationWizard utility from BrowserTestUtils, since that
effectively became a thin-wrapper around BrowserTestUtils.removeTab.
Finally, this patch also removes some documentation about the legacy migration wizard,
and tests that specifically check the legacy dialog behaviour.
Differential Revision: https://phabricator.services.mozilla.com/D190716
If called with no arguments it'll update all files (except try.yml and
mr-onpush-geckoview.yml). It can also be called with a set of filenames
as arguments and will update just those files.
For on-push and cron tasks, we look up the taskcluster index for the
latest corresponding decision task. For release promotion actions, we
query the public shipit API to find the latest matching task.
Differential Revision: https://phabricator.services.mozilla.com/D187137
When using the accent color in the titlebar we apply InactiveCaption
color, but then we also apply this opacity which causes the text to be
super dark.
Use color-mix() rather than opacity on the lwtheme case, so that it
works on Linux and macOS when themes are used too.
Adapt browser-custom-colors.css to do this for the system theme on
Windows and macOS so that there's no behavior change.
For high contrast and Linux, InactiveCaption should have us covered.
Depends on D190952
Differential Revision: https://phabricator.services.mozilla.com/D190953
This is more like what other browsers do, and makes more sense, it
actually blends the text-color with that opacity, which is what the
front-end uses.
Differential Revision: https://phabricator.services.mozilla.com/D190955
This tracks DeviceIds that have been sent DeviceLost in a hashmap that
is pruned when the Device is dropped. This reduces IPC traffic with the
expected use case of many calls returning after a device loss.
Differential Revision: https://phabricator.services.mozilla.com/D190962
This ensures that both internal and external triggers of "lose the
device" resolve the lost promise using the same code path.
Differential Revision: https://phabricator.services.mozilla.com/D190129
This creates a WebGPUParent::LoseDevice entry point, which informs the
WebGPUChild that the device has been lost. The child side is largely a
stub, as a later part will rationalize the handling of the device.lost
promise in the child.
This also expands ErrorBufferType with a DeviceLost value. The
LoseDevice function is triggered for any error where webgpu_bindings
HasErrorBufferType error_type returns ErrorBufferType::DeviceLost.
Differential Revision: https://phabricator.services.mozilla.com/D188388
This patch removes the duplicate definitions of requestAnimationFrame
and cancelAnimationFrame in DedicatedWorkerGlobalScope in favour of
using the AnimationFrameProvider mixin. We couldn't before when there
was a worker only pref limitation, but that was removed in another
patch.
This patch has no functional change.
Differential Revision: https://phabricator.services.mozilla.com/D191026