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

13384 Коммитов

Автор SHA1 Сообщение Дата
Cristian Tuns 1ea913ec8d Backed out 2 changesets (bug 1644102, bug 1752392) for causing mochitest failures in test_parseStyleSheetImport.html CLOSED TREE
Backed out changeset b5c0bdafaf5e (bug 1644102)
Backed out changeset 092814d96f1d (bug 1752392)
2022-04-28 05:37:52 -04:00
Butkovits Atila 94e2a597f6 Backed out changeset 0599b2a0913a (bug 1691122) for causing failures at test_peerConnection_basicAudioNATRelayTLS.html. CLOSED TREE 2022-04-28 03:58:05 +03:00
Emilio Cobos Álvarez b297e19bb0 Bug 1644102 - Turn on constructable stylesheets by default. r=edgar,preferences-reviewers,mstriemer
All known issues have patches. Let's try this after these land.

Differential Revision: https://phabricator.services.mozilla.com/D144570
2022-04-27 23:50:48 +00:00
John Schanck ea5479a8d7 Bug 1691122 - Remove subject common name fallback support in CertVerifier. r=keeler,necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D143808
2022-04-27 20:57:31 +00:00
Jeff Muizelaar 3b0f25b5de Bug 1766311. Disable hardware encoders on non-Android. r=jolin
Chrome has had a variety of issues with hardware encoders:
https://github.com/W3C/webrtc-extensions/issues/98#issuecomment-1054005251

We'll disable hardware encoders for now so that we can get consistent
behaviour everywhere. Once we've updated to a modern libwebrtc we
can reenable them.

This also makes it so that we can get resolution scaling on H264 without having
to cherrypick patches from upstream libwebrtc.

Differential Revision: https://phabricator.services.mozilla.com/D144773
2022-04-27 19:19:50 +00:00
Kagami Sascha Rosylight 73f6c1e217 Bug 1619574 - Remove HTMLCanvasElement::MozGetAsFile r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D144815
2022-04-27 16:13:14 +00:00
Marian-Vasile Laza 1224a405da Backed out changeset 8a572b71790d (bug 1762919) for causing media failures on test_video_stats_resistfingerprinting.html. CLOSED TREE 2022-04-27 18:22:11 +03:00
Kershaw Chang 0fbc94d5e4 Bug 1727995 - Disable websocket over h2, r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D126322
2022-04-27 15:11:51 +00:00
Jeff Muizelaar 7aeb663d4a Bug 1762919 - Make dropped frame statistics more realistic. r=timhuang
This increases the minimum resolution to 1080 and dropped the ratio to
1% from 5%. This should give a better video playback experience for
people using resist fingerprinting and better matches the values that
clients without that pref give.

Differential Revision: https://phabricator.services.mozilla.com/D142842
2022-04-27 14:20:51 +00:00
Emilio Cobos Álvarez 72d2420c2b Bug 1766395 - Remove dom.forms.datetime-local prefs. r=edgar
We shipped this a while ago.

Differential Revision: https://phabricator.services.mozilla.com/D144800
2022-04-27 14:10:27 +00:00
Tom Ritter c956bb1a40 Bug 1752332: Suppress Hazard warnings due to hash table function pointers r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D144437
2022-04-27 12:57:40 +00:00
Tom Ritter e81b9b75d3 Bug 1752332: Update the preferences documentation r=KrisWright
Depends on D141422

Differential Revision: https://phabricator.services.mozilla.com/D141423
2022-04-27 12:57:39 +00:00
Tom Ritter 0e86156db0 Bug 1752332: Sanitize preferences in the shared memory region r=KrisWright
Before we would stick all prefs into an immutable shared memory
region and clear our HashMap.

Now we will stick all non-sanitized prefs into the immutable
shared memory region, save the sanitized prefs in a list
temporarily, clear the hashmap, and then repopulate the hashmap
with the sanitized prefs.

As a bit of underlying complexity, to do this we must do some
tricks with the Pref Name Arena which is a chunk of memory
dedicated to storing pref names. That goes away (and we want to
wipe it to save space) - so we just need to move the sanitized
pref names to a new arena.

Depends on D141421

Differential Revision: https://phabricator.services.mozilla.com/D141422
2022-04-27 12:57:39 +00:00
Tom Ritter f0eebfe778 Bug 1752332: Optimize the crash checks in Check*Value functions r=KrisWright
We busted browser_preferences_usage.js by looking up a
preference too many times.

The reason we are now exceeding the pref-reading limit for
this pref is that inside ShouldSanitizePreference all of
our calls to Preferences::Something(pref_name) are causing
pref lookups.  _Most_ of the time when we are in
ShouldSanitizePreference, we got there from a place that has
the actual pref object; so change the function to take in a
Pref object.

Unfortunately, there is a place we do need to look it up
by name, and that's in Static Pref getters, so we need to
keep that function around (and expose it in Preferences.h)

To minimize code duplication (i.e. not having the exact same
code for ShouldSanitizePreference(Pref) and
ShouldSanitizePreference(PrefWrapper) we do some templating
tricks because even though they expose the same API, they are
not in a class hierarchy where we could just make one function
for a base class.

Depends on D141420

Differential Revision: https://phabricator.services.mozilla.com/D141421
2022-04-27 12:57:39 +00:00
Tom Ritter 41f8e427e9 Bug 1752332: Remove the shouldSanitizeFunction member r=KrisWright
In the following patch we are going to change the signature of
ShouldSanitizePreference to take a Pref object.  Pref is only
known to the Preferences compilation unit; so to keep this member
(whose signature will change) we would need to expose the Pref
class. However it will only be a forward declaration, one could
not construct a Pref object in e.g. the gtest.

It is simpler to just remove the member entirely and call
ShouldSanitizePreference unconditionally - the member was only
used for the gtest, and while the gtest will be less robust
because of this change, it will still do some testing.

Depends on D141419

Differential Revision: https://phabricator.services.mozilla.com/D141420
2022-04-27 12:57:38 +00:00
Tom Ritter 2288ff8472 Bug 1752332: Add preferences that control whether we send user data and/or crash r=KrisWright
Depends on D141418

Differential Revision: https://phabricator.services.mozilla.com/D141419
2022-04-27 12:57:38 +00:00
Tom Ritter 4e42effc79 Bug 1752332: Crash if a pref is accessed that shouldn't be r=KrisWright
Depends on D141417

Differential Revision: https://phabricator.services.mozilla.com/D141418
2022-04-27 12:57:37 +00:00
Tom Ritter 617ae2d037 Bug 1752332: Improve the blocklisting behavior r=KrisWright
For all subprocesses, if a preference is in the blocklist,
sanitize it.  (This preserves the IPC optimization behavior,
kind of.  We now generate IPC traffic when we didn't before,
but we omit the value. Values were previously capped at 4 KiB
now they're 0 bytes.)

For Web Content processes, we sanitize a preference if it is
in the blocklist, or if does not have a Default value (i.e.
it is dynamically named). There is an exception list for
dynamically named preferences we know we need though.

In subprocesses, we know if a preference was sanitized
by checking its Sanitized bit.

Depends on D141416

Differential Revision: https://phabricator.services.mozilla.com/D141417
2022-04-27 12:57:37 +00:00
Tom Ritter cf5cc35a2d Bug 1752332: Make SerializePreferences correctly sanitize preferences r=KrisWright,necko-reviewers,dragana
To do the correct thing in Preferences::SerializePreferences
(which is used during subprocess startup) we need to know if
the destination process is a web content process or not.
We add parameters to
SharedPreferenceSerializer::SerializeToSharedMemory that let
us figure that out.

In Preferences::SerializePreferences we fix the call to
aShouldSanitizeFn to pass the correct destination.

Depends on D141415

Differential Revision: https://phabricator.services.mozilla.com/D141416
2022-04-27 12:57:37 +00:00
Tom Ritter 8fd70bf701 Bug 1752332: Remove some prefs from the blocklist r=KrisWright
Depends on D141413

Differential Revision: https://phabricator.services.mozilla.com/D141414
2022-04-27 12:57:36 +00:00
Tom Ritter ea3a8f9f97 Bug 1752332: Correctly populate the sanitized bit for PreferenceUpdate r=KrisWright
PreferenceUpdate is the IPC message notifying a child process
that a preference has been updated. To correctly decide whether
or not a value should be sanitized in it, we need to know
what type of destination process it is; we add parameters to
Preferences::GetPreference indicating that.

Inside of ToDomPref we call ShouldSanitizePreference to
correctly populate the sanitized bit.

Depends on D141412

Differential Revision: https://phabricator.services.mozilla.com/D141413
2022-04-27 12:57:36 +00:00
Tom Ritter ce8ed8e849 Bug 1752332: Rename ShouldSyncPreference to ShouldSanitizePreference r=KrisWright
This simplifies the number of negations needed,
and makes things easy to understand. I think
anyway; I know that without renaming it I made
several annoying-to-diagnose negation errors...

Depends on D141411

Differential Revision: https://phabricator.services.mozilla.com/D141412
2022-04-27 12:57:35 +00:00
Tom Ritter dae964f1a8 Bug 1752332: Tell ShouldSyncPreference if the destination is a web content process r=KrisWright
A couple places where it might be a web content process
still pass 'false' - this will be corrected in a later
patch.

Depends on D141410

Differential Revision: https://phabricator.services.mozilla.com/D141411
2022-04-27 12:57:35 +00:00
Tom Ritter 32adae1779 Bug 1752332: Move ShouldSyncPreferences to Preferences module r=KrisWright
Depends on D141409

Differential Revision: https://phabricator.services.mozilla.com/D141410
2022-04-27 12:57:34 +00:00
Tom Ritter 1e49cf60d8 Bug 1752332: Add a sanitized property to prefs r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D141408
2022-04-27 12:57:34 +00:00
Molnar Sandor 68045e3d85 Backed out changeset 071aa43a0419 (bug 1703654) for causing build bustages in SharedSurfaceDMABUF. CLOSED TREE 2022-04-26 20:14:48 +03:00
Kelsey Gilbert 9f7815a9e2 Bug 1703654 - Prototype display-p3 for WebGL canvas. r=lsalzman,emilio
Enable (direct) external surface compositing for MacIOSurfaces.
Works on Mac.

Differential Revision: https://phabricator.services.mozilla.com/D144073
2022-04-26 16:54:17 +00:00
Dmitrij Feller 68e4da881d Bug 1766409 - Fix ESLint rule warnings for no-unused-vars in modules/libpref/unit/test_changeType.js. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D144706
2022-04-26 15:30:31 +00:00
Sebastian Hengst ecc5b0d6bc Backed out changeset 75e58c0ca309 (bug 1727995) for causing http2-websocket.sub.h2.* failures. CLOSED TREE 2022-04-26 15:11:55 +02:00
Kershaw Chang d2ac979432 Bug 1727995 - Disable websocket over h2, r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D126322
2022-04-26 08:09:15 +00:00
Andrew Osmond 40e355361a Bug 1766333 - Disable blob recordings for SVG images. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D144635
2022-04-25 22:09:59 +00:00
Bobby Holley 93a43d41f6 Bug 1765894 - Make WebMIDI early-beta-or-earlier. r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D144349
2022-04-25 15:40:27 +00:00
Butkovits Atila c891bf41e7 Backed out 17 changesets (bug 1752332) for causing crashes at JS::AutoAssertNoGC::AutoAssertNoGC(JSContext*). CLOSED TREE
Backed out changeset eaa4213b9e08 (bug 1752332)
Backed out changeset 2d794b61fbf7 (bug 1752332)
Backed out changeset 69cbec3e9a11 (bug 1752332)
Backed out changeset 022a68e8d603 (bug 1752332)
Backed out changeset 1ff8656b362d (bug 1752332)
Backed out changeset 46ea5b4f9ad3 (bug 1752332)
Backed out changeset e1dcb4c7cb88 (bug 1752332)
Backed out changeset f9d6bc72406f (bug 1752332)
Backed out changeset dd02b8ef0219 (bug 1752332)
Backed out changeset 3e60b77153a3 (bug 1752332)
Backed out changeset ce93b08837d2 (bug 1752332)
Backed out changeset d165042105ea (bug 1752332)
Backed out changeset 22b910308ecd (bug 1752332)
Backed out changeset d2e748ccd01c (bug 1752332)
Backed out changeset a89203990075 (bug 1752332)
Backed out changeset b580c2a3bac0 (bug 1752332)
Backed out changeset a2d5880b528f (bug 1752332)
2022-04-25 17:55:17 +03:00
Tom Ritter 7a53777411 Bug 1752332: Suppress Hazard warnings due to hash table function pointers r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D144437
2022-04-25 13:54:05 +00:00
Tom Ritter 136cc98e2f Bug 1752332: Update the preferences documentation r=KrisWright
Depends on D141422

Differential Revision: https://phabricator.services.mozilla.com/D141423
2022-04-25 13:54:04 +00:00
Tom Ritter 9a95903aa5 Bug 1752332: Sanitize preferences in the shared memory region r=KrisWright
Before we would stick all prefs into an immutable shared memory
region and clear our HashMap.

Now we will stick all non-sanitized prefs into the immutable
shared memory region, save the sanitized prefs in a list
temporarily, clear the hashmap, and then repopulate the hashmap
with the sanitized prefs.

As a bit of underlying complexity, to do this we must do some
tricks with the Pref Name Arena which is a chunk of memory
dedicated to storing pref names. That goes away (and we want to
wipe it to save space) - so we just need to move the sanitized
pref names to a new arena.

Depends on D141421

Differential Revision: https://phabricator.services.mozilla.com/D141422
2022-04-25 13:54:04 +00:00
Tom Ritter 1cacb9fc02 Bug 1752332: Optimize the crash checks in Check*Value functions r=KrisWright
We busted browser_preferences_usage.js by looking up a
preference too many times.

The reason we are now exceeding the pref-reading limit for
this pref is that inside ShouldSanitizePreference all of
our calls to Preferences::Something(pref_name) are causing
pref lookups.  _Most_ of the time when we are in
ShouldSanitizePreference, we got there from a place that has
the actual pref object; so change the function to take in a
Pref object.

Unfortunately, there is a place we do need to look it up
by name, and that's in Static Pref getters, so we need to
keep that function around (and expose it in Preferences.h)

To minimize code duplication (i.e. not having the exact same
code for ShouldSanitizePreference(Pref) and
ShouldSanitizePreference(PrefWrapper) we do some templating
tricks because even though they expose the same API, they are
not in a class hierarchy where we could just make one function
for a base class.

Depends on D141420

Differential Revision: https://phabricator.services.mozilla.com/D141421
2022-04-25 13:54:04 +00:00
Tom Ritter dbac0fccf2 Bug 1752332: Remove the shouldSanitizeFunction member r=KrisWright
In the following patch we are going to change the signature of
ShouldSanitizePreference to take a Pref object.  Pref is only
known to the Preferences compilation unit; so to keep this member
(whose signature will change) we would need to expose the Pref
class. However it will only be a forward declaration, one could
not construct a Pref object in e.g. the gtest.

It is simpler to just remove the member entirely and call
ShouldSanitizePreference unconditionally - the member was only
used for the gtest, and while the gtest will be less robust
because of this change, it will still do some testing.

Depends on D141419

Differential Revision: https://phabricator.services.mozilla.com/D141420
2022-04-25 13:54:03 +00:00
Tom Ritter 297cd05828 Bug 1752332: Add preferences that control whether we send user data and/or crash r=KrisWright
Depends on D141418

Differential Revision: https://phabricator.services.mozilla.com/D141419
2022-04-25 13:54:03 +00:00
Tom Ritter 0251e1437c Bug 1752332: Crash if a pref is accessed that shouldn't be r=KrisWright
Depends on D141417

Differential Revision: https://phabricator.services.mozilla.com/D141418
2022-04-25 13:54:03 +00:00
Tom Ritter 904aadd877 Bug 1752332: Improve the blocklisting behavior r=KrisWright
For all subprocesses, if a preference is in the blocklist,
sanitize it.  (This preserves the IPC optimization behavior,
kind of.  We now generate IPC traffic when we didn't before,
but we omit the value. Values were previously capped at 4 KiB
now they're 0 bytes.)

For Web Content processes, we sanitize a preference if it is
in the blocklist, or if does not have a Default value (i.e.
it is dynamically named). There is an exception list for
dynamically named preferences we know we need though.

In subprocesses, we know if a preference was sanitized
by checking its Sanitized bit.

Depends on D141416

Differential Revision: https://phabricator.services.mozilla.com/D141417
2022-04-25 13:54:02 +00:00
Tom Ritter 90b65f0b6f Bug 1752332: Make SerializePreferences correctly sanitize preferences r=KrisWright,necko-reviewers,dragana
To do the correct thing in Preferences::SerializePreferences
(which is used during subprocess startup) we need to know if
the destination process is a web content process or not.
We add parameters to
SharedPreferenceSerializer::SerializeToSharedMemory that let
us figure that out.

In Preferences::SerializePreferences we fix the call to
aShouldSanitizeFn to pass the correct destination.

Depends on D141415

Differential Revision: https://phabricator.services.mozilla.com/D141416
2022-04-25 13:54:02 +00:00
Tom Ritter eda46349a8 Bug 1752332: Remove some prefs from the blocklist r=KrisWright
Depends on D141413

Differential Revision: https://phabricator.services.mozilla.com/D141414
2022-04-25 13:54:01 +00:00
Tom Ritter f9201a6b3f Bug 1752332: Correctly populate the sanitized bit for PreferenceUpdate r=KrisWright
PreferenceUpdate is the IPC message notifying a child process
that a preference has been updated. To correctly decide whether
or not a value should be sanitized in it, we need to know
what type of destination process it is; we add parameters to
Preferences::GetPreference indicating that.

Inside of ToDomPref we call ShouldSanitizePreference to
correctly populate the sanitized bit.

Depends on D141412

Differential Revision: https://phabricator.services.mozilla.com/D141413
2022-04-25 13:54:01 +00:00
Tom Ritter e7d695f54c Bug 1752332: Rename ShouldSyncPreference to ShouldSanitizePreference r=KrisWright
This simplifies the number of negations needed,
and makes things easy to understand. I think
anyway; I know that without renaming it I made
several annoying-to-diagnose negation errors...

Depends on D141411

Differential Revision: https://phabricator.services.mozilla.com/D141412
2022-04-25 13:54:00 +00:00
Tom Ritter ef6d930532 Bug 1752332: Tell ShouldSyncPreference if the destination is a web content process r=KrisWright
A couple places where it might be a web content process
still pass 'false' - this will be corrected in a later
patch.

Depends on D141410

Differential Revision: https://phabricator.services.mozilla.com/D141411
2022-04-25 13:54:00 +00:00
Tom Ritter 4ef13ee7f8 Bug 1752332: Move ShouldSyncPreferences to Preferences module r=KrisWright
Depends on D141409

Differential Revision: https://phabricator.services.mozilla.com/D141410
2022-04-25 13:53:59 +00:00
Tom Ritter ef57c7df72 Bug 1752332: Add a sanitized property to prefs r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D141408
2022-04-25 13:53:59 +00:00
Tom Schuster eed1aead2d Bug 1745005 - Add showPicker() to <input> elements. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D142754
2022-04-22 18:43:48 +00:00
Bob Owen 1254b324f7 Bug 1766033: Change win32k lockdown default to @IS_EARLY_BETA_OR_EARLIER@ to allow for staged rollout. r=gcp
Differential Revision: https://phabricator.services.mozilla.com/D144456
2022-04-22 17:56:50 +00:00
Sean Feng 5042a856cf Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug
Spec: https://wicg.github.io/scheduling-apis/

Differential Revision: https://phabricator.services.mozilla.com/D133494
2022-04-21 18:47:52 +00:00
Cosmin Sabou 512562821f Backed out 16 changesets (bug 1752332) for causing unrooted hazard failures. CLOSED TREE
Backed out changeset 1e57c99c133b (bug 1752332)
Backed out changeset 090719a92e33 (bug 1752332)
Backed out changeset c9c556d2f676 (bug 1752332)
Backed out changeset 1ca918455158 (bug 1752332)
Backed out changeset 1e3858df144d (bug 1752332)
Backed out changeset 33fb4d7c0f3c (bug 1752332)
Backed out changeset 6320b4b3d12d (bug 1752332)
Backed out changeset 322bbf59820a (bug 1752332)
Backed out changeset fe8f3e1c43b0 (bug 1752332)
Backed out changeset e5d5d24b0f3b (bug 1752332)
Backed out changeset f48f4c1b0784 (bug 1752332)
Backed out changeset 61b6a151b215 (bug 1752332)
Backed out changeset 0e70bf8ca3e4 (bug 1752332)
Backed out changeset 2dadbfd0b1d7 (bug 1752332)
Backed out changeset ce9e1254e82f (bug 1752332)
Backed out changeset 3ce1d0529b34 (bug 1752332)
2022-04-21 21:33:03 +03:00
Tom Ritter 604bc7997d Bug 1752332: Update the preferences documentation r=KrisWright
Depends on D141422

Differential Revision: https://phabricator.services.mozilla.com/D141423
2022-04-21 13:22:52 +00:00
Tom Ritter 100942db27 Bug 1752332: Sanitize preferences in the shared memory region r=KrisWright
Before we would stick all prefs into an immutable shared memory
region and clear our HashMap.

Now we will stick all non-sanitized prefs into the immutable
shared memory region, save the sanitized prefs in a list
temporarily, clear the hashmap, and then repopulate the hashmap
with the sanitized prefs.

As a bit of underlying complexity, to do this we must do some
tricks with the Pref Name Arena which is a chunk of memory
dedicated to storing pref names. That goes away (and we want to
wipe it to save space) - so we just need to move the sanitized
pref names to a new arena.

Depends on D141421

Differential Revision: https://phabricator.services.mozilla.com/D141422
2022-04-21 13:22:52 +00:00
Tom Ritter 9d7b183ca4 Bug 1752332: Optimize the crash checks in Check*Value functions r=KrisWright
We busted browser_preferences_usage.js by looking up a
preference too many times.

The reason we are now exceeding the pref-reading limit for
this pref is that inside ShouldSanitizePreference all of
our calls to Preferences::Something(pref_name) are causing
pref lookups.  _Most_ of the time when we are in
ShouldSanitizePreference, we got there from a place that has
the actual pref object; so change the function to take in a
Pref object.

Unfortunately, there is a place we do need to look it up
by name, and that's in Static Pref getters, so we need to
keep that function around (and expose it in Preferences.h)

To minimize code duplication (i.e. not having the exact same
code for ShouldSanitizePreference(Pref) and
ShouldSanitizePreference(PrefWrapper) we do some templating
tricks because even though they expose the same API, they are
not in a class hierarchy where we could just make one function
for a base class.

Depends on D141420

Differential Revision: https://phabricator.services.mozilla.com/D141421
2022-04-21 13:22:51 +00:00
Tom Ritter 735f58c46f Bug 1752332: Remove the shouldSanitizeFunction member r=KrisWright
In the following patch we are going to change the signature of
ShouldSanitizePreference to take a Pref object.  Pref is only
known to the Preferences compilation unit; so to keep this member
(whose signature will change) we would need to expose the Pref
class. However it will only be a forward declaration, one could
not construct a Pref object in e.g. the gtest.

It is simpler to just remove the member entirely and call
ShouldSanitizePreference unconditionally - the member was only
used for the gtest, and while the gtest will be less robust
because of this change, it will still do some testing.

Depends on D141419

Differential Revision: https://phabricator.services.mozilla.com/D141420
2022-04-21 13:22:51 +00:00
Tom Ritter 1b7e20d742 Bug 1752332: Add preferences that control whether we send user data and/or crash r=KrisWright
Depends on D141418

Differential Revision: https://phabricator.services.mozilla.com/D141419
2022-04-21 13:22:50 +00:00
Tom Ritter fc925aadf4 Bug 1752332: Crash if a pref is accessed that shouldn't be r=KrisWright
Depends on D141417

Differential Revision: https://phabricator.services.mozilla.com/D141418
2022-04-21 13:22:50 +00:00
Tom Ritter 0d296a2db4 Bug 1752332: Improve the blocklisting behavior r=KrisWright
For all subprocesses, if a preference is in the blocklist,
sanitize it.  (This preserves the IPC optimization behavior,
kind of.  We now generate IPC traffic when we didn't before,
but we omit the value. Values were previously capped at 4 KiB
now they're 0 bytes.)

For Web Content processes, we sanitize a preference if it is
in the blocklist, or if does not have a Default value (i.e.
it is dynamically named). There is an exception list for
dynamically named preferences we know we need though.

In subprocesses, we know if a preference was sanitized
by checking its Sanitized bit.

Depends on D141416

Differential Revision: https://phabricator.services.mozilla.com/D141417
2022-04-21 13:22:50 +00:00
Tom Ritter 75768c0672 Bug 1752332: Make SerializePreferences correctly sanitize preferences r=KrisWright,necko-reviewers,dragana
To do the correct thing in Preferences::SerializePreferences
(which is used during subprocess startup) we need to know if
the destination process is a web content process or not.
We add parameters to
SharedPreferenceSerializer::SerializeToSharedMemory that let
us figure that out.

In Preferences::SerializePreferences we fix the call to
aShouldSanitizeFn to pass the correct destination.

Depends on D141415

Differential Revision: https://phabricator.services.mozilla.com/D141416
2022-04-21 13:22:49 +00:00
Tom Ritter e53ed9ed19 Bug 1752332: Remove some prefs from the blocklist r=KrisWright
Depends on D141413

Differential Revision: https://phabricator.services.mozilla.com/D141414
2022-04-21 13:22:49 +00:00
Tom Ritter 97452fcc53 Bug 1752332: Correctly populate the sanitized bit for PreferenceUpdate r=KrisWright
PreferenceUpdate is the IPC message notifying a child process
that a preference has been updated. To correctly decide whether
or not a value should be sanitized in it, we need to know
what type of destination process it is; we add parameters to
Preferences::GetPreference indicating that.

Inside of ToDomPref we call ShouldSanitizePreference to
correctly populate the sanitized bit.

Depends on D141412

Differential Revision: https://phabricator.services.mozilla.com/D141413
2022-04-21 13:22:48 +00:00
Tom Ritter 9546954a23 Bug 1752332: Rename ShouldSyncPreference to ShouldSanitizePreference r=KrisWright
This simplifies the number of negations needed,
and makes things easy to understand. I think
anyway; I know that without renaming it I made
several annoying-to-diagnose negation errors...

Depends on D141411

Differential Revision: https://phabricator.services.mozilla.com/D141412
2022-04-21 13:22:48 +00:00
Tom Ritter e05da6fb4c Bug 1752332: Tell ShouldSyncPreference if the destination is a web content process r=KrisWright
A couple places where it might be a web content process
still pass 'false' - this will be corrected in a later
patch.

Depends on D141410

Differential Revision: https://phabricator.services.mozilla.com/D141411
2022-04-21 13:22:47 +00:00
Tom Ritter b662df4c61 Bug 1752332: Move ShouldSyncPreferences to Preferences module r=KrisWright
Depends on D141409

Differential Revision: https://phabricator.services.mozilla.com/D141410
2022-04-21 13:22:47 +00:00
Tom Ritter bb04bf6564 Bug 1752332: Add a sanitized property to prefs r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D141408
2022-04-21 13:22:46 +00:00
Yury Delendik 7353e17494 Bug 1708743 - Enable AVX support by default in release. r=lth
Differential Revision: https://phabricator.services.mozilla.com/D144215
2022-04-21 12:43:20 +00:00
Cristian Tuns 467d2abfd0 Backed out 16 changesets (bug 1752332) for causing gtest failures CLOSED TREE
Backed out changeset 2523f5463789 (bug 1752332)
Backed out changeset 8d2932869cbd (bug 1752332)
Backed out changeset 7d159898e81d (bug 1752332)
Backed out changeset 5b9bbe252fec (bug 1752332)
Backed out changeset aeb79413e987 (bug 1752332)
Backed out changeset c184c517de91 (bug 1752332)
Backed out changeset 1bc4f1780f37 (bug 1752332)
Backed out changeset 2b78f295d903 (bug 1752332)
Backed out changeset 21f015b60220 (bug 1752332)
Backed out changeset a74095dfe3da (bug 1752332)
Backed out changeset 4b04bf33486e (bug 1752332)
Backed out changeset 8566711743a8 (bug 1752332)
Backed out changeset eec507d87b2b (bug 1752332)
Backed out changeset ef50d2618c7f (bug 1752332)
Backed out changeset 1b4d316e7f20 (bug 1752332)
Backed out changeset e40a778cb93f (bug 1752332)
2022-04-20 17:23:11 -04:00
Tom Ritter f625f33753 Bug 1752332: Update the preferences documentation r=KrisWright
Depends on D141422

Differential Revision: https://phabricator.services.mozilla.com/D141423
2022-04-20 20:21:49 +00:00
Tom Ritter c781409d77 Bug 1752332: Sanitize preferences in the shared memory region r=KrisWright
Before we would stick all prefs into an immutable shared memory
region and clear our HashMap.

Now we will stick all non-sanitized prefs into the immutable
shared memory region, save the sanitized prefs in a list
temporarily, clear the hashmap, and then repopulate the hashmap
with the sanitized prefs.

As a bit of underlying complexity, to do this we must do some
tricks with the Pref Name Arena which is a chunk of memory
dedicated to storing pref names. That goes away (and we want to
wipe it to save space) - so we just need to move the sanitized
pref names to a new arena.

Depends on D141421

Differential Revision: https://phabricator.services.mozilla.com/D141422
2022-04-20 20:21:48 +00:00
Tom Ritter 2787efa727 Bug 1752332: Optimize the crash checks in Check*Value functions r=KrisWright
We busted browser_preferences_usage.js by looking up a
preference too many times.

The reason we are now exceeding the pref-reading limit for
this pref is that inside ShouldSanitizePreference all of
our calls to Preferences::Something(pref_name) are causing
pref lookups.  _Most_ of the time when we are in
ShouldSanitizePreference, we got there from a place that has
the actual pref object; so change the function to take in a
Pref object.

Unfortunately, there is a place we do need to look it up
by name, and that's in Static Pref getters, so we need to
keep that function around (and expose it in Preferences.h)

To minimize code duplication (i.e. not having the exact same
code for ShouldSanitizePreference(Pref) and
ShouldSanitizePreference(PrefWrapper) we do some templating
tricks because even though they expose the same API, they are
not in a class hierarchy where we could just make one function
for a base class.

Depends on D141420

Differential Revision: https://phabricator.services.mozilla.com/D141421
2022-04-20 20:21:48 +00:00
Tom Ritter 3313c98eaf Bug 1752332: Remove the shouldSanitizeFunction member r=KrisWright
In the following patch we are going to change the signature of
ShouldSanitizePreference to take a Pref object.  Pref is only
known to the Preferences compilation unit; so to keep this member
(whose signature will change) we would need to expose the Pref
class. However it will only be a forward declaration, one could
not construct a Pref object in e.g. the gtest.

It is simpler to just remove the member entirely and call
ShouldSanitizePreference unconditionally - the member was only
used for the gtest, and while the gtest will be less robust
because of this change, it will still do some testing.

Depends on D141419

Differential Revision: https://phabricator.services.mozilla.com/D141420
2022-04-20 20:21:47 +00:00
Tom Ritter 59092e70b4 Bug 1752332: Add preferences that control whether we send user data and/or crash r=KrisWright
Depends on D141418

Differential Revision: https://phabricator.services.mozilla.com/D141419
2022-04-20 20:21:47 +00:00
Tom Ritter 9b9b78005e Bug 1752332: Crash if a pref is accessed that shouldn't be r=KrisWright
Depends on D141417

Differential Revision: https://phabricator.services.mozilla.com/D141418
2022-04-20 20:21:47 +00:00
Tom Ritter 0268186690 Bug 1752332: Improve the blocklisting behavior r=KrisWright
For all subprocesses, if a preference is in the blocklist,
sanitize it.  (This preserves the IPC optimization behavior,
kind of.  We now generate IPC traffic when we didn't before,
but we omit the value. Values were previously capped at 4 KiB
now they're 0 bytes.)

For Web Content processes, we sanitize a preference if it is
in the blocklist, or if does not have a Default value (i.e.
it is dynamically named). There is an exception list for
dynamically named preferences we know we need though.

In subprocesses, we know if a preference was sanitized
by checking its Sanitized bit.

Depends on D141416

Differential Revision: https://phabricator.services.mozilla.com/D141417
2022-04-20 20:21:46 +00:00
Tom Ritter 43277d4358 Bug 1752332: Make SerializePreferences correctly sanitize preferences r=KrisWright,necko-reviewers,dragana
To do the correct thing in Preferences::SerializePreferences
(which is used during subprocess startup) we need to know if
the destination process is a web content process or not.
We add parameters to
SharedPreferenceSerializer::SerializeToSharedMemory that let
us figure that out.

In Preferences::SerializePreferences we fix the call to
aShouldSanitizeFn to pass the correct destination.

Depends on D141415

Differential Revision: https://phabricator.services.mozilla.com/D141416
2022-04-20 20:21:46 +00:00
Tom Ritter aa6e89410f Bug 1752332: Remove some prefs from the blocklist r=KrisWright
Depends on D141413

Differential Revision: https://phabricator.services.mozilla.com/D141414
2022-04-20 20:21:45 +00:00
Tom Ritter 1cc103189e Bug 1752332: Correctly populate the sanitized bit for PreferenceUpdate r=KrisWright
PreferenceUpdate is the IPC message notifying a child process
that a preference has been updated. To correctly decide whether
or not a value should be sanitized in it, we need to know
what type of destination process it is; we add parameters to
Preferences::GetPreference indicating that.

Inside of ToDomPref we call ShouldSanitizePreference to
correctly populate the sanitized bit.

Depends on D141412

Differential Revision: https://phabricator.services.mozilla.com/D141413
2022-04-20 20:21:44 +00:00
Tom Ritter e9bd1a1b96 Bug 1752332: Rename ShouldSyncPreference to ShouldSanitizePreference r=KrisWright
This simplifies the number of negations needed,
and makes things easy to understand. I think
anyway; I know that without renaming it I made
several annoying-to-diagnose negation errors...

Depends on D141411

Differential Revision: https://phabricator.services.mozilla.com/D141412
2022-04-20 20:21:44 +00:00
Tom Ritter a7e00d1b86 Bug 1752332: Tell ShouldSyncPreference if the destination is a web content process r=KrisWright
A couple places where it might be a web content process
still pass 'false' - this will be corrected in a later
patch.

Depends on D141410

Differential Revision: https://phabricator.services.mozilla.com/D141411
2022-04-20 20:21:44 +00:00
Tom Ritter a77e0fbeb2 Bug 1752332: Move ShouldSyncPreferences to Preferences module r=KrisWright
Depends on D141409

Differential Revision: https://phabricator.services.mozilla.com/D141410
2022-04-20 20:21:43 +00:00
Tom Ritter f0860a2493 Bug 1752332: Add a sanitized property to prefs r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D141408
2022-04-20 20:21:42 +00:00
Cristian Tuns 6e25a12cb7 Backed out 16 changesets (bug 1752332) for causing multiple failures on StaticPrefList_media.h
Backed out changeset ec6a5f016318 (bug 1752332)
Backed out changeset 10ac6886fa5e (bug 1752332)
Backed out changeset d37dec5c0d9e (bug 1752332)
Backed out changeset 258d19fe4e28 (bug 1752332)
Backed out changeset 52f6b46250a3 (bug 1752332)
Backed out changeset ab5c00d2fb02 (bug 1752332)
Backed out changeset d72dc14eeafd (bug 1752332)
Backed out changeset 061cdf612d0e (bug 1752332)
Backed out changeset 26707a82d896 (bug 1752332)
Backed out changeset 01ca344dedbf (bug 1752332)
Backed out changeset 22c6c04046b1 (bug 1752332)
Backed out changeset ce809df435e1 (bug 1752332)
Backed out changeset 185026a397b0 (bug 1752332)
Backed out changeset 9dfd530f26b8 (bug 1752332)
Backed out changeset deadcb975866 (bug 1752332)
Backed out changeset 4944ae34f15b (bug 1752332)
2022-04-20 13:10:55 -04:00
Tom Ritter 7c9b633202 Bug 1752332: Update the preferences documentation r=KrisWright
Depends on D141422

Differential Revision: https://phabricator.services.mozilla.com/D141423
2022-04-20 15:44:42 +00:00
Tom Ritter 5a394f247e Bug 1752332: Sanitize preferences in the shared memory region r=KrisWright
Before we would stick all prefs into an immutable shared memory
region and clear our HashMap.

Now we will stick all non-sanitized prefs into the immutable
shared memory region, save the sanitized prefs in a list
temporarily, clear the hashmap, and then repopulate the hashmap
with the sanitized prefs.

As a bit of underlying complexity, to do this we must do some
tricks with the Pref Name Arena which is a chunk of memory
dedicated to storing pref names. That goes away (and we want to
wipe it to save space) - so we just need to move the sanitized
pref names to a new arena.

Depends on D141421

Differential Revision: https://phabricator.services.mozilla.com/D141422
2022-04-20 15:44:41 +00:00
Tom Ritter 5a256881db Bug 1752332: Optimize the crash checks in Check*Value functions r=KrisWright
We busted browser_preferences_usage.js by looking up a
preference too many times.

The reason we are now exceeding the pref-reading limit for
this pref is that inside ShouldSanitizePreference all of
our calls to Preferences::Something(pref_name) are causing
pref lookups.  _Most_ of the time when we are in
ShouldSanitizePreference, we got there from a place that has
the actual pref object; so change the function to take in a
Pref object.

Unfortunately, there is a place we do need to look it up
by name, and that's in Static Pref getters, so we need to
keep that function around (and expose it in Preferences.h)

To minimize code duplication (i.e. not having the exact same
code for ShouldSanitizePreference(Pref) and
ShouldSanitizePreference(PrefWrapper) we do some templating
tricks because even though they expose the same API, they are
not in a class hierarchy where we could just make one function
for a base class.

Depends on D141420

Differential Revision: https://phabricator.services.mozilla.com/D141421
2022-04-20 15:44:41 +00:00
Tom Ritter ab308fb14f Bug 1752332: Remove the shouldSanitizeFunction member r=KrisWright
In the following patch we are going to change the signature of
ShouldSanitizePreference to take a Pref object.  Pref is only
known to the Preferences compilation unit; so to keep this member
(whose signature will change) we would need to expose the Pref
class. However it will only be a forward declaration, one could
not construct a Pref object in e.g. the gtest.

It is simpler to just remove the member entirely and call
ShouldSanitizePreference unconditionally - the member was only
used for the gtest, and while the gtest will be less robust
because of this change, it will still do some testing.

Depends on D141419

Differential Revision: https://phabricator.services.mozilla.com/D141420
2022-04-20 15:44:40 +00:00
Tom Ritter 03973fd595 Bug 1752332: Add preferences that control whether we send user data and/or crash r=KrisWright
Depends on D141418

Differential Revision: https://phabricator.services.mozilla.com/D141419
2022-04-20 15:44:40 +00:00
Tom Ritter fd215c5f5e Bug 1752332: Crash if a pref is accessed that shouldn't be r=KrisWright
Depends on D141417

Differential Revision: https://phabricator.services.mozilla.com/D141418
2022-04-20 15:44:40 +00:00
Tom Ritter 27e95235b4 Bug 1752332: Improve the blocklisting behavior r=KrisWright
For all subprocesses, if a preference is in the blocklist,
sanitize it.  (This preserves the IPC optimization behavior,
kind of.  We now generate IPC traffic when we didn't before,
but we omit the value. Values were previously capped at 4 KiB
now they're 0 bytes.)

For Web Content processes, we sanitize a preference if it is
in the blocklist, or if does not have a Default value (i.e.
it is dynamically named). There is an exception list for
dynamically named preferences we know we need though.

In subprocesses, we know if a preference was sanitized
by checking its Sanitized bit.

Depends on D141416

Differential Revision: https://phabricator.services.mozilla.com/D141417
2022-04-20 15:44:39 +00:00
Tom Ritter 696098706b Bug 1752332: Make SerializePreferences correctly sanitize preferences r=KrisWright,necko-reviewers,dragana
To do the correct thing in Preferences::SerializePreferences
(which is used during subprocess startup) we need to know if
the destination process is a web content process or not.
We add parameters to
SharedPreferenceSerializer::SerializeToSharedMemory that let
us figure that out.

In Preferences::SerializePreferences we fix the call to
aShouldSanitizeFn to pass the correct destination.

Depends on D141415

Differential Revision: https://phabricator.services.mozilla.com/D141416
2022-04-20 15:44:39 +00:00
Tom Ritter 088a040c54 Bug 1752332: Remove some prefs from the blocklist r=KrisWright
Depends on D141413

Differential Revision: https://phabricator.services.mozilla.com/D141414
2022-04-20 15:44:38 +00:00
Tom Ritter c674d31eba Bug 1752332: Correctly populate the sanitized bit for PreferenceUpdate r=KrisWright
PreferenceUpdate is the IPC message notifying a child process
that a preference has been updated. To correctly decide whether
or not a value should be sanitized in it, we need to know
what type of destination process it is; we add parameters to
Preferences::GetPreference indicating that.

Inside of ToDomPref we call ShouldSanitizePreference to
correctly populate the sanitized bit.

Depends on D141412

Differential Revision: https://phabricator.services.mozilla.com/D141413
2022-04-20 15:44:38 +00:00
Tom Ritter d9fb7a4c74 Bug 1752332: Rename ShouldSyncPreference to ShouldSanitizePreference r=KrisWright
This simplifies the number of negations needed,
and makes things easy to understand. I think
anyway; I know that without renaming it I made
several annoying-to-diagnose negation errors...

Depends on D141411

Differential Revision: https://phabricator.services.mozilla.com/D141412
2022-04-20 15:44:37 +00:00
Tom Ritter bc1d73db3c Bug 1752332: Tell ShouldSyncPreference if the destination is a web content process r=KrisWright
A couple places where it might be a web content process
still pass 'false' - this will be corrected in a later
patch.

Depends on D141410

Differential Revision: https://phabricator.services.mozilla.com/D141411
2022-04-20 15:44:37 +00:00
Tom Ritter 288e606baf Bug 1752332: Move ShouldSyncPreferences to Preferences module r=KrisWright
Depends on D141409

Differential Revision: https://phabricator.services.mozilla.com/D141410
2022-04-20 15:44:37 +00:00
Tom Ritter 30221b51c4 Bug 1752332: Add a sanitized property to prefs r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D141408
2022-04-20 15:44:36 +00:00
Paul Zuehlcke 6f039abdf3 Bug 1735746 - Add a pref and limit external protocol sandbox blocking to Nightly. r=ckerschb,farre
Depends on D141131

Differential Revision: https://phabricator.services.mozilla.com/D141132
2022-04-20 11:06:50 +00:00
Luca Greco 9a0eaa2c22 Bug 1765316 - Explicitly set 'extensions.manifestV3.enabled' and 'extensions.eventPages.enabled' to false at toolkit level. r=mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D144014
2022-04-19 19:53:21 +00:00
Marian-Vasile Laza 8615f36226 Backed out 7 changesets (bug 1734997) for causing bustages on WebTaskSchedulerMainThread.cpp. CLOSED TREE
Backed out changeset 7ab1e7cc8f6a (bug 1734997)
Backed out changeset 0846da0f5ab1 (bug 1734997)
Backed out changeset 3a138b8501ec (bug 1734997)
Backed out changeset 55c6e7862298 (bug 1734997)
Backed out changeset 724cccd1d595 (bug 1734997)
Backed out changeset 5e624d630397 (bug 1734997)
Backed out changeset 09469f7dd10e (bug 1734997)
2022-04-19 12:54:00 -07:00
Sean Feng ec21b3c0a4 Bug 1734997 - Prototype the Prioritized Task Scheduling API r=smaug
Spec: https://wicg.github.io/scheduling-apis/

Differential Revision: https://phabricator.services.mozilla.com/D133494
2022-04-19 19:08:44 +00:00
Jan Horak 705f8983d6 Bug 1759840 Add support for location portal; r=emilio
The Firefox in flatpak has no access to the wireless networks to determine
accurate geolocation. We have to use the location portal instead which
provides the current location based on the nearby wireless accesspoints
or other methods.

Differential Revision: https://phabricator.services.mozilla.com/D142329
2022-04-19 11:42:38 +00:00
Molnar Sandor 509c3805f9 Backed out changeset 1529955a0df7 (bug 1759840) for causing build bustage in geolocation/Geolocation CLOSED TREE 2022-04-19 12:41:47 +03:00
Jan Horak f674f55333 Bug 1759840 Add support for location portal; r=emilio
The Firefox in flatpak has no access to the wireless networks to determine
accurate geolocation. We have to use the location portal instead which
provides the current location based on the nearby wireless accesspoints
or other methods.

Differential Revision: https://phabricator.services.mozilla.com/D142329
2022-04-19 09:02:55 +00:00
David Parks fab26ea630 Bug 1759558: Enable widget.windows.hide_cursor_when_typing by default r=cmartin
Differential Revision: https://phabricator.services.mozilla.com/D143850
2022-04-18 20:00:59 +00:00
Chun-Min Chang 2c01e7fdbf Bug 1238038 - Allow opening multiple devices r=padenot
This patch allows website users to open multiple microphones in the same
MediaTrackGraph.

Depends on D138189

Differential Revision: https://phabricator.services.mozilla.com/D138726
2022-04-18 18:45:36 +00:00
Emilio Cobos Álvarez d73e5f9faf Bug 1765106 - Define move-to-rect pref in all gtk builds.
MANUAL PUSH: Tier2 bustage fix CLOSED TREE
2022-04-18 11:37:00 +02:00
Razvan Cojocaru ad4c559a95 Bug 1758158 - nsWindow's initialize_prefs should use static prefs instead. r=emilio
Put mozilla.widget.raise-on-setfocus, widget.transparent-windows
and widget.wayland.use-move-to-rect in StaticPrefList.yaml, then
get rid of gRaiseWindows, gTransparentWindows and gUseMoveToRect
from widget/gtk/nsWindow.cpp.

Differential Revision: https://phabricator.services.mozilla.com/D143885
2022-04-18 01:09:03 +00:00
Shane Hughes 7810a6da05 Bug 1747343 - Add pref to set default action for new mimetypes. r=Gijs,fluent-reviewers,preferences-reviewers
When downloading a file, we check for existing mime types and construct
a new one if it's unrecognized. Mime types have a flag,
alwaysAskBeforeHandling, that determines whether the unknown content
type dialog should be opened before handling the file. Before bug
1733492, the default value for that flag was simply true. Since the new
downloads flow is intended to avoid unnecessary steps, the default value
was changed to the inverted value of the new downloads panel
improvements pref. This patch adds a new pref that the mime info
constructor will read in configuring the flag's value. If the
improvements pref is not enabled, then the flag will be true, so the UCT
dialog will open. If the improvements pref is enabled, then it'll use
the value of the new pref. Also add a an interface for the pref to the
about:preferences UI, and automatically migrate a false value for
browser.download.improvements_to_download_panel to a true value for this
pref. I'm updating some tangentially related test files since they
happen to be touched slightly by this change. Strictly speaking they
would still work, but if the pref value was somehow changed from the
default they would fail.

Differential Revision: https://phabricator.services.mozilla.com/D143002
2022-04-15 18:13:11 +00:00
Emilio Cobos Álvarez 9d3a8715e7 Bug 1764339 - Turn dom.window.content.untrusted.enabled off on release. r=smaug,saschanaz
We did it for early-beta in bug 1632143, for nightly even earlier. No
regressions in two years, sounds like flipping is warranted.

Differential Revision: https://phabricator.services.mozilla.com/D143496
2022-04-13 14:53:46 +00:00
Emilio Cobos Álvarez 300700e7ac Bug 1764134 - Enable inert attribute by default on early-beta and earlier. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D143388
2022-04-13 09:25:44 +00:00
criss 1ce796a4ee Backed out changeset fa6795d107b1 (bug 1745005) for causing multiple failures. CLOSED TREE 2022-04-13 13:23:03 +03:00
Tom Schuster 43b158ae1a Bug 1745005 - Add showPicker() to <input> elements. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D142754
2022-04-13 07:35:57 +00:00
Bryce Seager van Dyk cba5151aea Bug 1760527 - Use content signature instead of cert pinning everywhere for GMP updates. r=Gijs
This sets up prefs so by default any release will use the content signature path
for GMP updates, rather than cert pinning. This intentionally leaves in place
the old cert pinning machinery so that we can still use if we need to
- Compare the new and old for things like debugging.
- Revert these changes in the case of regressions (either by shipping a patch or
  something like normandy).

This patch is also small to enable it to be uplifted easily.

Once we're sure this new path is good, a larger patch can follow up to remove
the cert pinning code + rework our tests.

Differential Revision: https://phabricator.services.mozilla.com/D141891
2022-04-13 06:59:57 +00:00
Butkovits Atila f90c8918d4 Backed out changeset 543a78ca4fa9 (bug 1747343) for causing mochitest failures at browser_bug676619.js. CLOSED TREE 2022-04-13 03:31:53 +03:00
Shane Hughes 9a0bc90754 Bug 1747343 - Add pref to set default action for new mimetypes. r=Gijs,fluent-reviewers,preferences-reviewers
When downloading a file, we check for existing mime types and construct
a new one if it's unrecognized. Mime types have a flag,
alwaysAskBeforeHandling, that determines whether the unknown content
type dialog should be opened before handling the file. Before bug
1733492, the default value for that flag was simply true. Since the new
downloads flow is intended to avoid unnecessary steps, the default value
was changed to the inverted value of the new downloads panel
improvements pref. This patch adds a new pref that the mime info
constructor will read in configuring the flag's value. If the
improvements pref is not enabled, then the flag will be true, so the UCT
dialog will open. If the improvements pref is enabled, then it'll use
the value of the new pref. Also add a an interface for the pref to the
about:preferences UI, and automatically migrate a false value for
browser.download.improvements_to_download_panel to a true value for this
pref. I'm updating some tangentially related test files since they
happen to be touched slightly by this change. Strictly speaking they
would still work, but if the pref value was somehow changed from the
default they would fail.

Differential Revision: https://phabricator.services.mozilla.com/D143002
2022-04-12 22:32:45 +00:00
Tim Huang 15012d29dc Bug 1761207 - Extend the expiration time of the storage access permission given by the redirect heuristic. r=anti-tracking-reviewers,bvandersloot
This patch extends the expiration time of the storage access permission
given by the redirect heuristic to 30 days. This matches to the
expiration time of the permission given by other heuristics.

Differential Revision: https://phabricator.services.mozilla.com/D142431
2022-04-12 19:34:36 +00:00
Kagami Sascha Rosylight a6fe0cdad4 Bug 1764099 - Enable TransformStream and ReadableStream.pipeThrough on Nightly r=mgaudet,emilio,smaug
Differential Revision: https://phabricator.services.mozilla.com/D143405
2022-04-12 14:05:46 +00:00
Emilio Cobos Álvarez 39d7652297 Bug 1656363 - Implement prefers-contrast: custom and let prefers-contrast ride the trains. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D143198
2022-04-12 09:07:18 +00:00
Henrik Skupin 7960d0832b Bug 1759998 - [remote] Only accept system-local loopback WebSocket connections for clients. r=webdriver-reviewers,jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D143396
2022-04-12 04:31:08 +00:00
Molnar Sandor 75a5ae5043 Backed out 2 changesets (bug 1686654) for causing mochitest and reftest failures. CLOSED TREE
Backed out changeset 9af11a2b5add (bug 1686654)
Backed out changeset 60d43ba90696 (bug 1686654)
2022-04-11 22:55:59 +03:00
Nicolas Silva 4e2f9e9b31 Bug 1686654 - Reenable active SVG images. r=gfx-reviewers,jrmuizel
Flipping this pref lets us use WebRender display items for a subset of SVG images and rectangles.

Differential Revision: https://phabricator.services.mozilla.com/D143130
2022-04-11 18:14:58 +00:00
Andrew Osmond 64d20603a3 Bug 1763801 - Enable OffscreenCanvas on zoom.us without subdomains. r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D143271
2022-04-08 13:21:03 +00:00
Makoto Kato 28844e8f80 Bug 1639087 - Add dragcaret event by accessible caret. r=TYLin,smaug
To support magnifying glass on GeckoView, I would like to add `dragcaret`
event and, clientX and clientX in CaretStateChangedEvent chrome event.

Actually, accessible caret fires `presscaret` and `releasecaret` when
accessbile caret is pressed or released. But when dragging this caret, no
chrome event is fired. Since magnifying glass listens to moving this caret,
I would like `dargcaret` for GeckoView.

Also, Users' dragging point is necessary to set better position of magnifying
glass windows. So I also want client point of dragging point on `presscaret`
and `dragcaret` event.

This event and properties are on layout.accessiblecaret.magnifier.enabled=true,
So this can be only for GeckoView.

Differential Revision: https://phabricator.services.mozilla.com/D137965
2022-04-08 05:11:48 +00:00
Andrew Osmond ac4171c757 Bug 1763643 - Turn on SVG image blob recordings. r=gfx-reviewers,lsalzman
This should reduce our memory footprint by no longer requiring us to
fully rasterize SVG images when used as an image map. It should also
move the cost of rasterization off the main thread during display list
building to worker threads during scene building.

Differential Revision: https://phabricator.services.mozilla.com/D143190
2022-04-07 16:19:00 +00:00
sotaro c24f60bb9d Bug 1763280 - Enable avoid copying hardware decoded video on intel GPU on Window on nightly r=jrmuizel,gfx-reviewers
Blocked intel drivers are from chromium's "disable_dxgi_zero_copy_video" in gpu_driver_bug_list.json

Differential Revision: https://phabricator.services.mozilla.com/D143017
2022-04-07 14:38:17 +00:00
Alexandre Lissy 57f891080f Bug 1755316 - Perform audio decoding on PUtilityAudioDecoder r=alwu,nika,jld,bobowen,haik
Differential Revision: https://phabricator.services.mozilla.com/D139593
2022-04-07 10:04:51 +00:00
Bryce Seager van Dyk d38ad284ad Bug 1732416 - Change media.decoder-doctor.wmf-disabled-is-failure to atomic bool. r=alwu
This pref should be a RelaxedAtomicBool to avoid races.

Differential Revision: https://phabricator.services.mozilla.com/D143088
2022-04-06 21:49:41 +00:00
irwp f7009a7249 Bug 1762909 - Remove dead Adobe Flash hang code in BrowserGlue r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D143073
2022-04-06 20:13:08 +00:00
Niklas Baumgardner 36fa44eb8d Bug 1757219 - Add small, medium, and large font sizes for PiP subtitles. r=mhowell
Differential Revision: https://phabricator.services.mozilla.com/D142245
2022-04-06 14:33:54 +00:00
Kagami Sascha Rosylight ef908df177 Bug 1755147 - Disable `dom.webidl.crosscontext_hasinstance.enabled` on EARLY_BETA_OR_EARLIER r=peterv,edgar
Differential Revision: https://phabricator.services.mozilla.com/D138676
2022-04-06 13:08:11 +00:00
Emilio Cobos Álvarez 0fdc6328bd Bug 1762428 - Print via parent on Android. r=agi,whimboo,webdriver-reviewers
This proxies the printing operation via the parent like we do everywhere
else.

Otherwise we try to create anonymous files in the child process which is
forbidden.

Differential Revision: https://phabricator.services.mozilla.com/D142971
2022-04-06 11:58:52 +00:00
Timothy Nikkel a70b5ad77a Bug 1757928. Make the swipe events sent by SwipeTracker have the same scale. r=hiro
Bug 1753146 doubled the success threshold for Windows only, but browser/base/content/browser-gestureSupport.js at https://searchfox.org/mozilla-central/rev/26a1b0fce12e6dd495a954c542bb1e7bd6e0d548/browser/base/content/browser-gestureSupport.js#739 multiplies the values present in swipe events by 4 to determine opacity; so it it assuming the value 0.25 is the success threshold.

This patch first reverts bug 1753146 and then fixes it in a different way, so that the success threshold still has the same value and hence we don't need to modify browser-gestureSupport.js (so that all the code depending on this is in one one). We double the kWholePagePixelSize on Windows (and turn it into a pref) so that we don't regress bug 1753146. This is equivalent because the numeric value computed in SwipeTracker::ComputeSwipeSuccess will be the same, since the values mGestureAmount and mCurrentVelocity all have a division by kWholePagePixelSize when they are computed in SwipeTracker::ProcessEvent. There is one difference though: the velocity twitch tolerance comparison in SwipeTracker::ComputeSwipeSuccess will be slightly different. I think that's okay though.

Differential Revision: https://phabricator.services.mozilla.com/D140185
2022-04-06 09:51:17 +00:00
Byron Campen 2840754ec9 Bug 1763207: Enable webrtc socket process by default on release. r=mjf
Differential Revision: https://phabricator.services.mozilla.com/D142988
2022-04-05 21:43:10 +00:00
Jeff Muizelaar a4c8bf3727 Bug 1762966 - Add a pref to force the number of dropped frames to 0. r=alwu
I want to use this to help debug resolution changes caused by frame
drops.

Differential Revision: https://phabricator.services.mozilla.com/D142870
2022-04-05 21:02:53 +00:00
Zaggy1024 83ecc37711 Bug 1760804 - Use MFT CLSIDs for decoder instantiation instead of MFTEnumEx, as it caused a performance regression in process startup. r=alwu
WMFDecoderModule will now cache supported stream types upon decoder process startup. Only one task will be dispatched to the MTA thread where all support will be determined at once.

MFTDecoder now will call all functions necessary to fully free memory on its WMF objects.

Preference media.wmf.vp9.enabled can now be changed without restarting.

Differential Revision: https://phabricator.services.mozilla.com/D142002
2022-04-05 17:03:01 +00:00
Jan Rio Krause 057785b6d5 Bug 1519200 - Remove `NS_ERROR_FILE_TARGET_DOES_NOT_EXIST` in favor of `NS_ERROR_FILE_NOT_FOUND`. r=xpcom-reviewers,nika,dom-storage-reviewers,jstutte
Differential Revision: https://phabricator.services.mozilla.com/D77575
2022-04-05 15:17:03 +00:00
Butkovits Atila 393fc50e58 Backed out 4 changesets (bug 1735746) for causing failures at browser_protocol_custom_sandbox.js. CLOSED TREE
Backed out changeset 703dfd92c775 (bug 1735746)
Backed out changeset 3b06ed08d93b (bug 1735746)
Backed out changeset 9968278b9efe (bug 1735746)
Backed out changeset 49f2e283115d (bug 1735746)
2022-04-05 16:04:29 +03:00
Paul Zuehlcke dd7683cee3 Bug 1735746 - Add a pref and limit external protocol sandbox blocking to Nightly. r=ckerschb,farre
Depends on D141131

Differential Revision: https://phabricator.services.mozilla.com/D141132
2022-04-05 11:31:54 +00:00
Frederik Braun 30ca834b74 Bug 1752475 - Change nsICookie/CookieStruct to implicitly flip SameSite in getter func r=dveditz,dragana,freddyb
Given that we only support samesite lax/strict/none in our storage schema,
it's useful to introduce a default value, as required by the spec.
However, that would it hard to distinguish between none/lax when we switch
the default.
So, instead of doing that we use the peculiarities of our current schema
to our advantage: There's a "sameSite" attribute and a "rawSameSite"
attribute, where the latter is the literal value we received from the
server. With this patch, we'll interpret the "sameSite" attribute
based on the laxByDefault pref. This also has the advantage that various
front-end code (e.g., in DevTools) is always reading the "sameSite"
value of nsICookies.

Differential Revision: https://phabricator.services.mozilla.com/D137460
2022-04-05 08:20:25 +00:00
Lee Salzman 244b3a114a Bug 1762523 - Add performance profiling to DrawTargetWebgl. r=aosmond,gfx-reviewers
This adds OnEvent hooks to DrawTargetWebgl for various events so that
profile counters may be maintained each frame. These profile counters
try to determine if a software fallback happened or an uncacheable event
occurs that requires either uploading data to the GPU or reading back
from the GPU, events which can cause substantial slowdown if they happen
repeatedly even without an explicit fallback to software rasterization.

When it is determined a threshold has been reached (as controlled by
some prefs), RequiresRefresh() in PersistentBufferProvider is used to
signal that we should recreate the PersistentBufferProvider of a different
type and thus disable acceleration.

Differential Revision: https://phabricator.services.mozilla.com/D142646
2022-04-04 15:50:48 +00:00
Edgar Chen c82b0711e1 Bug 1760560 - Remove directory upload API; r=smaug
HTMLInputElement.getFilesAndDirectories is used for testing Directory API, so
still keep it but mark as chrome only.

Differential Revision: https://phabricator.services.mozilla.com/D142444
2022-04-04 09:54:34 +00:00
criss e78cd417a0 Backed out changeset a8db18c94b60 (bug 1760804) for causing regression 2022-04-03 01:51:42 +03:00
Zaggy1024 c32d1979b3 Bug 1760804 - Use MFT CLSIDs for decoder instantiation instead of MFTEnumEx, as it caused a performance regression in process startup. r=alwu
WMFDecoderModule will now cache supported stream types upon decoder process startup. Only one task will be dispatched to the MTA thread where all support will be determined at once.

MFTDecoder now will call all functions necessary to fully free memory on its WMF objects.

Preference media.wmf.vp9.enabled can now be changed without restarting.

Differential Revision: https://phabricator.services.mozilla.com/D142002
2022-04-02 03:39:20 +00:00
John Lin f7e32e7270 Bug 1741244 - p1: support software MFT video encoders. r=alwu,media-playback-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D135766
2022-04-02 01:20:24 +00:00
Tim Giles 33fa70370a Bug 1762649 - Fix credit card supported countries to use 'GB' code instead of 'UK'. r=sgalich
Differential Revision: https://phabricator.services.mozilla.com/D142724
2022-04-01 20:35:37 +00:00
Ryan Hunt a4ec0a0687 Bug 1762619 - wasm: Disable code caching. r=yury
Differential Revision: https://phabricator.services.mozilla.com/D142707
2022-04-01 19:35:34 +00:00
Emilio Cobos Álvarez b9e7c7653c Bug 1762088 - Implement parsing / serialization for container{,-type,-name} CSS properties. r=firefox-style-system-reviewers,layout-reviewers,boris
Two noteworthy details that may seem random otherwise:

 * Moving values around in nsStyleDisplay is needed so that the struct
   remains under the size limit that we have to avoid jumping allocator
   buckets.

 * All the test expectation churn is because tests depend on
   `container-type: size` parsing to run, and now they run. Tests for
   the relevant bits I implemented are passing, with the only exception
   of some `container-name-computed.html` failures which are
   https://github.com/w3c/csswg-drafts/issues/7181. Safari agrees with
   us there.

Other notes when looking at the spec and seeing how it matches the
implementation:

 * `container` syntax doesn't match spec, but matches tests and sanity:
   https://github.com/w3c/csswg-drafts/issues/7180

 * `container-type` syntax doesn't _quite_ match spec, but matches tests
   and I think it's a spec bug since the definition for the missing
   keyword is gone:
   https://github.com/w3c/csswg-drafts/issues/7179

Differential Revision: https://phabricator.services.mozilla.com/D142419
2022-03-31 22:56:20 +00:00
Cristian Tuns 55a349ee51 Backed out changeset 92e64531995a (bug 1761207) for causing mochitest failures on browser_contentBlockingTelemetry.js CLOSED TREE 2022-03-31 17:26:42 -04:00
Tim Huang 4db8589284 Bug 1761207 - Extend the expiration time of the storage access permission given by the redirect heuristic. r=anti-tracking-reviewers,bvandersloot
This patch extends the expiration time of the storage access permission
given by the redirect heuristic to 30 days. This matches to the
expiration time of the permission given by other heuristics.

Differential Revision: https://phabricator.services.mozilla.com/D142431
2022-03-31 20:05:23 +00:00
Jamie Nicol 6ff477fa62 Bug 1761972 - Allow GPU process to ride the trains on Android. r=agi
This was previously held back to nightly-only due to crashes not being
reported, but that has since been addressed by
https://github.com/mozilla-mobile/android-components/pull/11872

Differential Revision: https://phabricator.services.mozilla.com/D142334
2022-03-31 19:26:51 +00:00
Emilio Cobos Álvarez 881f8f938a Bug 1762109 - Make the XLink setup a bit saner. r=smaug
Make Link and SVGAElement agree on XLink handling, and make it more
explicit that SVGAElement needs to be a bit more special for SMIL.

Remove dead MathML XLink code.

Differential Revision: https://phabricator.services.mozilla.com/D142546
2022-03-31 14:33:57 +00:00
Tim Huang 21609aed82 Bug 1761826 - Enable disallowing relaxing referrer policies. r=anti-tracking-reviewers,bvandersloot
Differential Revision: https://phabricator.services.mozilla.com/D142433
2022-03-31 11:54:49 +00:00
Narcis Beleuzu 7d206f2561 Merge mozilla-central to autoland 2022-03-31 00:50:32 +03:00
Narcis Beleuzu 625c3d0c8a Merge autoland to mozilla-central. a=merge 2022-03-31 00:47:35 +03:00
Emilio Cobos Álvarez f4373cd7fb Bug 1761690 - Let overlay scrollbars on GTK ride the trains. r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D142173
2022-03-30 18:58:30 +00:00
Emilio Cobos Álvarez d30fa2e715 Bug 1761690 - Let Windows 11 overlay scrollbars ride the trains. r=mhowell
(Tweak the pref name to match the gtk name, using dash rather than underscore).

Differential Revision: https://phabricator.services.mozilla.com/D142174
2022-03-30 18:58:10 +00:00
Emilio Cobos Álvarez ea070a59f9 Bug 277178 - Move focus to a fragment identifier (#fragment) if it's focusable. r=smaug
Co-authored-by: Takeshi Kurosawa <taken.spc@gmail.com>

Differential Revision: https://phabricator.services.mozilla.com/D141824
2022-03-30 18:01:48 +00:00
Ryan VanderMeulen 9e6651225a Backed out changeset d7b31fe38fc7 (bug 1758540) for causing Fenix UI test issues. 2022-03-30 13:40:04 -04:00
Edgar Chen 047205f5cf Bug 1761978 - Get rid of pref dom.events.asyncClipboard; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D142338
2022-03-30 13:12:40 +00:00
stransky 215660defb Bug 1761942 [RDD] Limit maximal number of RDD process restarts r=alwu
Add media.rdd-process.max-crashes preference value to control how many times we restard RDD process before we throw decoding error message.

Differential Revision: https://phabricator.services.mozilla.com/D142326
2022-03-30 11:37:37 +00:00
Dana Keeler e2267a307d Bug 1735386 - adjust revocation checking for EV certificate intermediates to match Baseline Requirements r=jschanck
The Baseline Requirements no longer require an OCSP URI for EV certificate
intermediates. Since OneCRL covers intermediates anyways, OCSP checking for
intermediates can be skipped entirely.

Differential Revision: https://phabricator.services.mozilla.com/D142369
2022-03-30 01:35:26 +00:00
Csoregi Natalia 99b98ae493 Backed out changeset 0acc23548adf (bug 1752475) for causing multiple cookies failures. CLOSED TREE 2022-03-30 01:31:06 +03:00
Frederik Braun ea88fe841f Bug 1752475 - Change nsICookie/CookieStruct to implicitly flip SameSite in getter func r=dveditz,dragana
Given that we only support samesite lax/strict/none in our storage schema,
it's useful to introduce a default value, as required by the spec.
However, that would it hard to distinguish between none/lax when we switch
the default.
So, instead of doing that we use the peculiarities of our current schema
to our advantage: There's a "sameSite" attribute and a "rawSameSite"
attribute, where the latter is the literal value we received from the
server. With this patch, we'll interpret the "sameSite" attribute
based on the laxByDefault pref. This also has the advantage that various
front-end code (e.g., in DevTools) is always reading the "sameSite"
value of nsICookies.

Differential Revision: https://phabricator.services.mozilla.com/D137460
2022-03-29 20:16:36 +00:00
Eitan Isaacson 9ad7f135df Bug 1758540 - Pref on accessibility cache in Android. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D141638
2022-03-29 20:12:25 +00:00
Andreas Farre ad3237f8a4 Bug 1740226 - Enable monitoring login attempts to mark a site high-value. r=agi
Differential Revision: https://phabricator.services.mozilla.com/D140024
2022-03-29 14:38:24 +00:00
Paul Adenot 89f2f7638b Bug 1761339 - Fix define to change the audiosink depth on M1 Macs. r=alwu DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D141988
2022-03-29 11:40:01 +00:00
sotaro a85bae612a Bug 1760724 - Let video overlay ride the trains to release on intel GPU on Windows r=gfx-reviewers,lsalzman
pref gfx.webrender.dcomp-video-overlay-win-force-enabled was added to enable video overlay even when it is blocked.

Differential Revision: https://phabricator.services.mozilla.com/D141712
2022-03-29 02:47:18 +00:00
Butkovits Atila f60ac86be0 Backed out 2 changesets (bug 1728331) for causing failures at RTCPeerConnection-videoDetectorTest.html. CLOSED TREE
Backed out changeset b6649f0253c5 (bug 1728331)
Backed out changeset e9242af1224d (bug 1728331)
2022-03-29 00:04:47 +03:00
Nika Layzell 66b31a7ed2 Bug 1728331 - Part 1: Avoid cycling between processes when navigating within a tab, r=smaug
This patch replaces the previous process selection infrastructure with a
new setup implemented entirely in C++, which should more accurately
track the set of processes in use, and should encourage re-use of the
existing content process when navigating by not counting the current
tab.

This approach intentionally allows for process switching to another
process during navigation if there is uneven load between processes to
encourage balanced process use.

I think this may also fix some of the session restore issues with many
tabs using the same process, rather than being spread over 4, as we now
track a tab earlier in its lifecycle before the BrowserParent instance
is created.

Differential Revision: https://phabricator.services.mozilla.com/D126405
2022-03-28 16:18:04 +00:00
Julian Descottes 367c2737cd Bug 1609100 - Remove devtools.enabled preference r=devtools-reviewers,nchevobbe
Depends on D141468

All usage of this preference should now have been removed.
We don't plan to disable devtools completely, but only to disable the F12 shortcut.

Differential Revision: https://phabricator.services.mozilla.com/D141469
2022-03-28 11:12:08 +00:00
Tim Huang da2bf8f151 Bug 1734328 - Part 1: Add prefs to control whether we ignore the less restricted referrer policies for top navigations. r=ckerschb,annevk
The patch adds two prefs to control whether we ignore the less
restricted referrer policies for top navigation. For Web compatibility,
we still need to allow less restricted referrer policies for top
navigations. We will allow it in the standard mode and still disallow it
in the strict mode and private browsing window.

Differential Revision: https://phabricator.services.mozilla.com/D141866
2022-03-28 10:32:51 +00:00
Norisz Fay 66797d7700 Backed out 5 changesets (bug 1609100) for causing mochitest failures on browser_check_identity_state.js CLOSED TREE
Backed out changeset 521cbbae0914 (bug 1609100)
Backed out changeset e22daee724f0 (bug 1609100)
Backed out changeset e5c4afe5dd66 (bug 1609100)
Backed out changeset e6ae2c01908e (bug 1609100)
Backed out changeset 3e59351660ab (bug 1609100)
2022-03-28 13:11:58 +03:00
Julian Descottes 2166787b4e Bug 1609100 - Remove devtools.enabled preference r=devtools-reviewers,nchevobbe
Depends on D141468

All usage of this preference should now have been removed.
We don't plan to disable devtools completely, but only to disable the F12 shortcut.

Differential Revision: https://phabricator.services.mozilla.com/D141469
2022-03-28 08:57:37 +00:00
Andrew Osmond 117accba1a Bug 1760786 - Ensure we only use WebGL in the content process on Android for DOM workers. r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D141724
2022-03-25 23:50:24 +00:00
Emilio Cobos Álvarez 829400449f Bug 1760579 - layout.css.moz-locale-dir.content.enabled. r=dholbert
We successfully removed these from content in bug 1740230 (Firefox 96).

Differential Revision: https://phabricator.services.mozilla.com/D141727
2022-03-25 14:59:00 +00:00
Emilio Cobos Álvarez dd020d602a Bug 1760342 - Remove :-moz-lwtheme-{brighttext,darktext}. r=dao,Gijs
They are just convenience for :root[lwthemetextcolor="light"] (and dark,
respectively), but they generally shouldn't be used for dark mode
theming. In the past it was the only way to do it but now we have
prefers-color-scheme.

While at it, change lwthemetextcolor to be "lwtheme-brighttext" for
consistency with similar code we have for popups etc, and move it to
_setDarkModeAttributes.

While at it, remove layout.css.moz-lwtheme.content.enabled (which is
false always, we unshipped these from content successfully).

Differential Revision: https://phabricator.services.mozilla.com/D141593
2022-03-25 14:58:59 +00:00
Kershaw Chang f63cffee0e Bug 1755902 - P2: Support port-prefixed query for HTTPS RR, r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D141718
2022-03-25 12:15:03 +00:00
Emilio Cobos Álvarez 0010cb6fc4 Bug 1761356 - Remove devtools auto theme notification. r=jdescottes
I think it's fair to say that this is not a new feature anymore. This avoids
showing the notification every time a developer uses devtools on a local build
or so (with a clean profile).

Differential Revision: https://phabricator.services.mozilla.com/D142000
2022-03-25 03:38:08 +00:00
Ryan VanderMeulen 106476ec17 Backed out changeset f4f7fa5023f3 (bug 1758540) for causing Fenix topcrashes and breaking UI tests. 2022-03-24 14:45:43 -04:00
John Schanck fb069da104 Bug 1761109 - Make check-revocations mode the default CRLite mode. r=keeler
Differential Revision: https://phabricator.services.mozilla.com/D141895
2022-03-23 20:27:22 +00:00
Ryan Hunt 7f0395a3a1 Bug 1759217 - wasm: Let exception-handling ride the trains. r=lth
Differential Revision: https://phabricator.services.mozilla.com/D141700
2022-03-23 14:52:50 +00:00
Emilio Cobos Álvarez 985e75ca3c Bug 1760965 - Remove IntersectionObserver prefs that have been enabled by default for a long time. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D141830
2022-03-23 09:59:13 +00:00
Emilio Cobos Álvarez b75c39ad35 Bug 1760734 - Put overflow: -moz-hidden-unscrollable behind a pref on Nightly. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D141759
2022-03-23 08:41:51 +00:00
Hiroyuki Ikezoe 9f93403b9d Bug 1760918 - Disable partial pre-render animations on all channels. r=boris
The reason why we change the `OMTAdiv`'s width value is that with the original
200px width, the elment in question will be overflowed in our mochitest iframe.

Differential Revision: https://phabricator.services.mozilla.com/D141812
2022-03-23 03:38:49 +00:00
smolnar 456a4aba93 Backed out changeset 19b7a733941f (bug 1760918) for causing mochitest failures in test_transitions_per_property. CLOSED TREE 2022-03-23 04:51:25 +02:00
Hiroyuki Ikezoe 8a3b4e548f Bug 1760918 - Disable partial pre-render animations on all channels. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D141812
2022-03-23 00:33:28 +00:00
Matthew Gaudet 6450bc232b Bug 1759597 - Enable WritableStreams and pipeTo by default r=smaug
* TextEncoder stream tests now fail, rather than error
* WritableStreams are exosed on worker interfacess now; and broken-then is fixed too
* Fix interface semantics

Differential Revision: https://phabricator.services.mozilla.com/D141125
2022-03-22 20:33:04 +00:00
Andrew Osmond 78afd0ab38 Bug 1760663 - Add blocklist support for WebGPU. r=gfx-reviewers,nical
This patch just adds the plumbing to allow for baked in blocklist rules
or the downloadable blocklist to prevent certain configurations from
getting WebGPU. It does not add any rules.

It also changes us from allowing WebGPU only in nightly, including
tests, to not release and not beta. This allows try to run the WebGPU
tests as expected, since even try builds forked from mozilla-central are
not considered nightly builds by CI (or so it seems).

Differential Revision: https://phabricator.services.mozilla.com/D141682
2022-03-22 15:22:39 +00:00
Bob Owen fddcd3ad5d Bug 1759168: Enable win32k lockdown for content processes by default. r=gcp
Differential Revision: https://phabricator.services.mozilla.com/D141606
2022-03-21 19:12:48 +00:00
Eitan Isaacson 40f4e1faa4 Bug 1758540 - Pref on accessibility cache in Android. r=morgan
Differential Revision: https://phabricator.services.mozilla.com/D141638
2022-03-21 18:59:34 +00:00
Butkovits Atila c3cbd0c056 Backed out changeset 653e9dc63dd5 (bug 1759597) for causing wpt failures complaining about pipe. 2022-03-18 23:18:20 +02:00
Luca Greco 026eb6d7cf Bug 1754441 - Add prefs to control InstallTrigger/InstallTriggerImpl visibility. r=mixedpuppy,webidl,smaug
Differential Revision: https://phabricator.services.mozilla.com/D138452
2022-03-18 20:02:54 +00:00
Matthew Gaudet a2036d6aef Bug 1759597 - Enable WritableStreams and pipeTo by default r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D141125
2022-03-18 19:30:58 +00:00
Yury Delendik 6c4cf3e439 Bug 1759909 - Enable AVX support for Wasm SIMD by default in Nightly. r=lth
Differential Revision: https://phabricator.services.mozilla.com/D141265
2022-03-18 15:07:31 +00:00
sotaro 56ef111fbd Bug 1667303 - video scaling at VideoProcessor for overlay video if possible r=gfx-reviewers,jrmuizel
Video scaling by VideoProcessor is expected to reduce GPU usage.

Differential Revision: https://phabricator.services.mozilla.com/D91392
2022-03-18 14:46:05 +00:00
Nick Alexander 52e65cee71 Bug 1675829 - Allow disabling the cookie database in the profile with `network.cookie.noPersistentStorage`. r=baku
Firefox background tasks use a new temporary profile directory for
every invocation.  We would like to write as little data as possible
into the temporary profile directory in this mode.  This patch allows
to make the persistent cookie storage discard cookies just like
private cookie storage.

This approach simply uses that the base `CookieStorage` class is close
to sufficient already.  There may be a performance impact with more
virtual invocations, but none of these functions seem likely to be
hot.

Differential Revision: https://phabricator.services.mozilla.com/D139910
2022-03-18 04:20:02 +00:00
Zaggy1024 b2ffa025f0 Bug 1652945 - Added support for the Windows Media Foundation AV1 decoder for hardware decoding. r=alwu
The method of creating decoder MFTs was replaced with MFEnumEx queries in order to get an instance of the AV1 decoder.

Differential Revision: https://phabricator.services.mozilla.com/D138884
2022-03-17 20:39:51 +00:00
Emilio Cobos Álvarez 3d2bf29691 Bug 1750932 - Add color_scheme / content_color_scheme properties to theme API. r=robwu,dao
This allows themes to override our light / dark theme heuristics if they
choose to, so that we don't have to complicate the heuristics too much.

This is specially useful for themes with images, where the image might
be "light", but still have enough contrast with light text. A good
example is the theme mentioned in bug 1749837 comment 0.

The semantics are:

 * color_scheme: If set, overrides the general "toolbar theme" (so
   window and context menu appearance and so on), otherwise we fall back
   to heuristics.

 * content_color_scheme: If set, overrides the color scheme for the
   content area. Otherwise we fall back to color_scheme if present, or
   heuristics otherwise.

One thing that I didn't include was a sort of "system" option, which
might be useful to say "this theme is neutral, and works both for light
and dark themes". Let me know if you think that's a must-have, otherwise
I think it's probably worth deferring to a follow-up if it's needed at
all.

Differential Revision: https://phabricator.services.mozilla.com/D136354
2022-03-17 14:44:03 +00:00
Chris Peterson 80561e26dc Bug 1731523 - Part 2: Remove "Firefox 100" Nimbus experiment code. r=necko-reviewers,kershaw
This Nimbus experiment code was added in bug 1719070 to test if sending a "Firefox 100" UA string causes any major webcompat problems.

The moz.build change was added in bug 1724635 to fix a Thunderbird build break. MOZ_BUILD_APP_IS_BROWSER = true when building Firefox, false when building Thunderbird.

Differential Revision: https://phabricator.services.mozilla.com/D126408
2022-03-17 02:18:12 +00:00