Till now an AudioCallbackDriver, on error state callback, creates a FallbackDriver, which attempts to start the existing AudioCallbackDriver. If the driver has already started this creates a cr
ash because restart is not allowed.
This patch continues using the FallbackDriver, on cubeb state error but the driver has been enhanced with an error state that will not attempt to restart the driver. The fallback driver will continue advancing the graph similar to a ThreadedDriver until a driver switch takes place.
Depends on D73102
Differential Revision: https://phabricator.services.mozilla.com/D73103
The MockCubeb has been reformated to save the latest MockCubebStream. Then a flag is exposed that if true the audio callback will fire a cubeb state change callback with error state and will abort. On top of that, a new unit test has been implemented that triggers the error callback. This results in a crash that is being fixed in the following patch.
Differential Revision: https://phabricator.services.mozilla.com/D73102
We need to disconnect the stream filter on redirect and allow the extension
to create a new filter. However, we also must always retain the channel
provided to us in onStartRequest, otherwise onStop fails. The request passed
to onStartRequest is always the right channel.
Differential Revision: https://phabricator.services.mozilla.com/D53187
There are `conditions` in tree that are callables but which don't have a `__name__` attribute; for example, `functools.partial` instances don't have a `__name__` since they're effectively anonymous functions. If you get to this branch and one of your `conditions` are that kind of object then you'll get a confusing error message instead of the understandable one we're trying to produce here, so account for that possibility.
Differential Revision: https://phabricator.services.mozilla.com/D72957
Depends on D71035
When F12 is disabled, if the user presses this key we show a notification hanging below the Firefox Hamburger menu.
This anchor was chosen because this is where the users can normally find the Web Developer menu.
Note that they could also open DevTools via another keyboard shortcut, even if it's not mentioned in the message.
Pressing on F12 again hides the message. The message will be displayed again if the user presses F12 again (ie, F12 is a toggle and the message is not just a one shot)
{F2136447}
Differential Revision: https://phabricator.services.mozilla.com/D71036
In this changeset, we add a preference that will simply disable F12 when it is set.
UI and tests are in followup patches
Differential Revision: https://phabricator.services.mozilla.com/D71035
This commit also moves `ext_id` into each `StorageOp` variant, instead
of passing it as an argument to `StorageTask`, to make it easier to
follow what each storage operation does.
Differential Revision: https://phabricator.services.mozilla.com/D73093
When remote-debugging a device, it might happen that the device clock
is not exactly at the same time as the client clock. In such case, we
may end up in cases where the result of a command as an older timestamp,
which means we could have in the console output a result that was displayed
before the command message that triggered it.
In order to fix this, we add a `startTime` property on the evaluateJSAsync
response, that we can then check on the client. If the server time is
older than the client time, then we remove the existing command message
and add a new one, with the server timestamp.
We could have waited the result of the command before displaying the
command message (so we don't have to add a message, and then remove it
when the timestamps don't match), but the UI wouldn't feel snappy, and
even worse in case of long execution times (e.g. a top-level await fetch command).
Differential Revision: https://phabricator.services.mozilla.com/D72705
CLOSED TREE
Backed out changeset 05d9a649538f (bug 1626410)
Backed out changeset e5f8075c881a (bug 1633514)
Backed out changeset 266b32a268d5 (bug 1633514)
There are many limitations currently, but this prototype should successfully
render most basic AVIF images. Known limitations:
- No support for any derived image items (crop, rotate, etc.)
- No support for alpha planes
- The primary image item must be an av01 (no grid support)
- HDR images aren't tone-mapped
Differential Revision: https://phabricator.services.mozilla.com/D68498