We consider snapshots where there is a referrer common to any interaction of the context url because we think that users expect this behaviour.
Differential Revision: https://phabricator.services.mozilla.com/D137856
I plan to remove this in favour of a richer set of data in the future, but until
I do, let's make sure we're tracking something to help guide development.
Differential Revision: https://phabricator.services.mozilla.com/D138626
This should overcome the speed gap between Xcode clang and ours.
We use the profile for the linux build because gathering a profile on actual
macs would be too resource-intensive, and the result with the linux profile
is good enough.
Differential Revision: https://phabricator.services.mozilla.com/D138512
The new task builds a stage 2 compiler and uses it to generate the
profile as stage 3, and the profile is used to feed the now separate
stage 4 clang build. This will allow us to use this same profile to
build mac clangs with PGO.
Differential Revision: https://phabricator.services.mozilla.com/D138511
Dropped video frames can have a pretty direct impact on a users
experience watching video, so it would be valuable to have this data
available on release.
Differential Revision: https://phabricator.services.mozilla.com/D138704
We don't need to clone and force OAs for partitioned principal if the
sharedWorker is using a null principal. It's because creating storage
for a null principal will fail anyway and try to clone and force OAs for
a null principal will also fail.
We should only do this for content principals.
Differential Revision: https://phabricator.services.mozilla.com/D138550
The old technique was slightly misleading. It was counting the audio already
sent to the device, in the decoded audio duration. But in fact, there's nothing
that can be done about this, the audio is going to be played regardless of what
happens. If the audio latency is high enough, this would return a number that's
high, but not a lot of audio would be sitting in Firefox's buffer, ready to
service the audio callbacks.
It's best to only consider the decoded audio (processed + unprocessed) here,
since the goal of this is to determine whether more audio needs to be decoded.
It also saves a `cubeb_stream_get_position` IPC call if using AudioIPC (soon to
be all platforms).
Differential Revision: https://phabricator.services.mozilla.com/D138318
The fix here is the EnsureAtMost call, but we can simplify a bit of the
related code by replacing the four conditionals with an
EnsureAtLeast call too, and using Deflate() rather than the manual
calculations.
This is sort of a wall paper over bug 1754323, but should be safe and
prevents ridiculously big safe areas.
Differential Revision: https://phabricator.services.mozilla.com/D138453
Other places in BrowserChild explicitly just handle null docshell.
(The only special case is when we have just created WebBrowser object in Init())
Differential Revision: https://phabricator.services.mozilla.com/D138657
This addresses test perma-failures on our linux infrastructure
caused by switching some existing tests to do checks with webp files.
The perma-failures happen because the infra machines can't find an OS default
app to open webp files, and the pre-patch code forcibly moves the
selected item in the 'what do you want to do with this file' dialog
from 'open in Firefox' to 'Save'.
But we don't actually need to do that - this code was written when only the
'Open' and 'Save' option were available. Now that 'open in Firefox' is selected,
that option can stay selected (though we should still move the selection of
the 'Open' dropdown, ie 'openHandler' in the code, away from the 'OS default'
item, hence why we're leaving that code as-is).
Depends on D138321
Differential Revision: https://phabricator.services.mozilla.com/D138641