This re-organise the various sections, re-sorting preferences by alphabetical order as originally intended (except for media).
Differential Revision: https://phabricator.services.mozilla.com/D31995
--HG--
extra : moz-landing-system : lando
Listing the preferences in either all.js or StaticPrefList.h would also make them appear in about:config which is something we don't want.
Additionally, rename some pref constants to improve code clarity as we can no longer rely on using the StaticPrefs accessor.
Differential Revision: https://phabricator.services.mozilla.com/D32416
--HG--
extra : moz-landing-system : lando
And set the underlying preference. StaticPrefs::Set becomes a convenience access to the original preference which is what gfxPrefs was actually doing.
Differential Revision: https://phabricator.services.mozilla.com/D31749
--HG--
extra : moz-landing-system : lando
Skip and Once prefs are only ever written on the main thread once. There's no need to make those prefs atomic.
Differential Revision: https://phabricator.services.mozilla.com/D31732
--HG--
extra : moz-landing-system : lando
Prefs aren't yet sorted as they should be, this will be done in bug 1552643
Differential Revision: https://phabricator.services.mozilla.com/D31731
--HG--
extra : moz-landing-system : lando
Fly-by fix, we make LoggingPrefs::sGfxLogLevel as it is written on the main thread but read on different threads.
Differential Revision: https://phabricator.services.mozilla.com/D31460
--HG--
extra : moz-landing-system : lando
gfxPrefs Live preferences are almost identical to StaticPrefs.
We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.
Differential Revision: https://phabricator.services.mozilla.com/D31256
--HG--
extra : moz-landing-system : lando
This is used by some gfx code and is required to convert gfxPrefs into StaticPrefs.
The setter only modifies the value of the StaticPref in the current process and doesn't propagate to others.
Differential Revision: https://phabricator.services.mozilla.com/D31254
--HG--
extra : moz-landing-system : lando
- Clarify some of the text.
- Make section headings accurate and consistent.
- Move sections that aren't in alphabetical order.
Differential Revision: https://phabricator.services.mozilla.com/D33129
--HG--
extra : moz-landing-system : lando
This makes our video controls bindings check on loadedmetadata events whether or not to display
the toggle.
Differential Revision: https://phabricator.services.mozilla.com/D32365
--HG--
extra : moz-landing-system : lando
This makes our video controls bindings check on loadedmetadata events whether or not to display
the toggle.
Differential Revision: https://phabricator.services.mozilla.com/D32365
--HG--
extra : moz-landing-system : lando
And set the underlying preference. StaticPrefs::Set becomes a convenience access to the original preference which is what gfxPrefs was actually doing.
Differential Revision: https://phabricator.services.mozilla.com/D31749
--HG--
extra : moz-landing-system : lando
Skip and Once prefs are only ever written on the main thread once. There's no need to make those prefs atomic.
Differential Revision: https://phabricator.services.mozilla.com/D31732
--HG--
extra : moz-landing-system : lando
Prefs aren't yet sorted as they should be, this will be done in bug 1552643
Differential Revision: https://phabricator.services.mozilla.com/D31731
--HG--
extra : moz-landing-system : lando
Fly-by fix, we make LoggingPrefs::sGfxLogLevel as it is written on the main thread but read on different threads.
Differential Revision: https://phabricator.services.mozilla.com/D31460
--HG--
extra : moz-landing-system : lando
gfxPrefs Live preferences are almost identical to StaticPrefs.
We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.
Differential Revision: https://phabricator.services.mozilla.com/D31256
--HG--
extra : moz-landing-system : lando
This is used by some gfx code and is required to convert gfxPrefs into StaticPrefs.
The setter only modifies the value of the StaticPref in the current process and doesn't propagate to others.
Differential Revision: https://phabricator.services.mozilla.com/D31254
--HG--
extra : moz-landing-system : lando
Bug 1533425 makes Gecko try to load from $ARCH/greprefs.js, etc on
Android. This patch teaches the packager to put certain preferences
into those architecture-specific locations for that code to find.
Differential Revision: https://phabricator.services.mozilla.com/D24984
--HG--
extra : moz-landing-system : lando
This will save us some time from figuring out what's the best thing to do in
bug 1552587, so that other patches I have in flight (mainly bug 1552708) can
land, since we cannot add a single byte to nsStyleDisplay right now otherwise.
The code removed here is well isolated and not that complicated, so it seems to
me that should be easy to bring back should we have an emergency (and I commit
to doing that while preserving the nsStyleDisplay size limit if we need to :)).
Differential Revision: https://phabricator.services.mozilla.com/D32026
--HG--
extra : moz-landing-system : lando
The standard category pref is gone.
When the default values change the standard category will change it's expectations to match.
Differential Revision: https://phabricator.services.mozilla.com/D31138
--HG--
extra : moz-landing-system : lando
Also remove extra plumbing from WebGLShaderValidator, moved directly
into WebGLShader.
Differential Revision: https://phabricator.services.mozilla.com/D31567
--HG--
extra : moz-landing-system : lando
Amend several test files for triggering eval() assertion through simpletest.js
Differential Revision: https://phabricator.services.mozilla.com/D30474
--HG--
extra : moz-landing-system : lando
Pref off frameloader rebuilding until regressions from bug 1542415 are fixed.
Differential Revision: https://phabricator.services.mozilla.com/D31326
--HG--
extra : moz-landing-system : lando
The goal of this patch is to reduce the number of memory reallocation during
|MakePrefixSet|[1].
Here is the number of nsTArray memory reallocation occur during |MakePrefixSet|
(test in my local platform):
googpub-phish-proto: 58k times
goog-malware-proto: 9k times
goog-unwanted-proto: 25k times
goog-badbinurl-proto: 6k times
This patch improves the performance by:
1. For tables whose prefixes are less than 128*1024(malware, unwanted,
badinurl).
Store prefixes directly without dividing allocation into smaller chunks.
Because the maximum size to store all the prefixes in a single array for
these tables will be less than 512k, we can avoid Bug 1046038.
This simplifies the internal prefixset data structure generation and total
memory usage is also saved:
goog-malware-proto : 437K -> 163k
goog-unwanted-proto : 658k -> 446k
goog-badbinurl-proto: 320k -> 110k
The single largest allocated continuous memory size is:
goog-malware-proto : 86k -> 163k
goog-unwanted-proto : 86k -> 446k
goog-badbinurl-proto: 77k -> 110k
A further improvement can be done for this part is for tables with fewer
prefixes, we can use an one-dimension delta array to reduce the size of a
single continuous memory allocation.
2. For tables with more prefixes:
According to experiment, when prefixes are more than 400k
the delta arrays have very high chance that are full, in the case of
phishing table, we can estimate the capacity accurately before
applying delta algorithm.
The shortcoming of this part is when prefixes are between 130k~400k,
the capacity estimation is not accurate.
[1] https://searchfox.org/mozilla-central/rev/b2015fdd464f598d645342614593d4ebda922d95/toolkit/components/url-classifier/nsUrlClassifierPrefixSet.cpp#99
Differential Revision: https://phabricator.services.mozilla.com/D30046
--HG--
extra : moz-landing-system : lando
Still having lots of issues with tests failing, but need to get this
landed for various reasons. Followup to pref on at Bug 1550571.
Differential Revision: https://phabricator.services.mozilla.com/D30563
The goal of this patch is to reduce the number of memory reallocation during
|MakePrefixSet|[1].
Here is the number of nsTArray memory reallocation occur during |MakePrefixSet|
(test in my local platform):
googpub-phish-proto: 58k times
goog-malware-proto: 9k times
goog-unwanted-proto: 25k times
goog-badbinurl-proto: 6k times
This patch improves the performance by:
1. For tables whose prefixes are less than 128*1024(malware, unwanted,
badinurl).
Store prefixes directly without dividing allocation into smaller chunks.
Because the maximum size to store all the prefixes in a single array for
these tables will be less than 512k, we can avoid Bug 1046038.
This simplifies the internal prefixset data structure generation and total
memory usage is also saved:
goog-malware-proto : 437K -> 163k
goog-unwanted-proto : 658k -> 446k
goog-badbinurl-proto: 320k -> 110k
The single largest allocated continuous memory size is:
goog-malware-proto : 86k -> 163k
goog-unwanted-proto : 86k -> 446k
goog-badbinurl-proto: 77k -> 110k
A further improvement can be done for this part is for tables with fewer
prefixes, we can use an one-dimension delta array to reduce the size of a
single continuous memory allocation.
2. For tables with more prefixes:
According to experiment, when prefixes are more than 400k
the delta arrays have very high chance that are full, in the case of
phishing table, we can estimate the capacity accurately before
applying delta algorithm.
The shortcoming of this part is when prefixes are between 130k~400k,
the capacity estimation is not accurate.
[1] https://searchfox.org/mozilla-central/rev/b2015fdd464f598d645342614593d4ebda922d95/toolkit/components/url-classifier/nsUrlClassifierPrefixSet.cpp#99
Differential Revision: https://phabricator.services.mozilla.com/D30046
--HG--
extra : moz-landing-system : lando
This affects a number of our existing reftests, so we'll need to update those
to not expect auto-hyphenation of a sentence-initial (capitalized) word.
(Hyphenation behavior is not sufficiently well-specified for this to be tested
at the WPT level, so we just use Gecko-specific reftests.)
Differential Revision: https://phabricator.services.mozilla.com/D30912
--HG--
extra : moz-landing-system : lando
SSLTokensCache is a simple memory only storage for resumption tokens which are get and set using API for external TLS session caches in NSS.
Differential Revision: https://phabricator.services.mozilla.com/D29465
--HG--
extra : moz-landing-system : lando
Amend several test files for triggering eval() assertion through simpletest.js
Differential Revision: https://phabricator.services.mozilla.com/D30474
--HG--
extra : moz-landing-system : lando
Flip pref in test_basic_form_autocomplete.html to allow eval() temporarily.
Differential Revision: https://phabricator.services.mozilla.com/D30016
--HG--
extra : moz-landing-system : lando
This is in preparation to disable (but not remove) support for these customizations
by default. We want to avoid scanning for these files on start-up, but also don't want
to make our users jump through a pref-flipping hoop to get their customizations back.
So we'll detect those files and flip the pref for this release. For the next release,
we'll not load those files unless the pref is flipped.
Differential Revision: https://phabricator.services.mozilla.com/D30414
--HG--
extra : moz-landing-system : lando
This patch contains a new jsm file which provides some helpers to be used for the
abuse report submission in the UI components related to abuse reporting,
and a new xpcshell test that unit test these helpers.
Differential Revision: https://phabricator.services.mozilla.com/D27938
--HG--
extra : moz-landing-system : lando
* Create new network.trr.resolvers pref which is a JSON array of objects with a name and url representing each resolver
* Add menulist to represent the resolver choices, and a "custom" option to use the network.trr.custom_uri as the trr.uri value
Differential Revision: https://phabricator.services.mozilla.com/D29393
--HG--
extra : moz-landing-system : lando
We don't have the staff to investigate the reported regressions from
disabling advanced layers. So to be conservative we are going to
re-enable it until we have time to properly remove the code.
Differential Revision: https://phabricator.services.mozilla.com/D29250
--HG--
extra : moz-landing-system : lando
This patch passes a message through the HangMonitor channel when navigating
through history to cancel content JS that could hang the chrome JS in the
content process responsible for history navigation. If the content JS is
actually canceled, this also disables the BF cache for the current page, since
it could end up in an inconsistent state due to the JS cancellation.
Differential Revision: https://phabricator.services.mozilla.com/D23089
--HG--
extra : moz-landing-system : lando
This won't reintroduce any of the regressions that were triggered by our
previous attempts to turn off -moz prefixed gradients, and lets us massively
simplify the gradient code, if it sticks.
Differential Revision: https://phabricator.services.mozilla.com/D29346
--HG--
extra : moz-landing-system : lando
For TV devices, it is useful to have mouse events automatically
interpreted as touch events. On other devices, such as more desktop-like
Android devices, we want to treat mouse events as mouse events. This patch
makes this behaviour controllable by a pref, but keeps the existing default
behaviour of treating mouse events as touch events.
Differential Revision: https://phabricator.services.mozilla.com/D29188
--HG--
extra : moz-landing-system : lando
For TV devices, it is useful to have mouse events automatically
interpreted as touch events. On other devices, such as more desktop-like
Android devices, we want to treat mouse events as mouse events. This patch
makes this behaviour controllable by a pref, but keeps the existing default
behaviour of treating mouse events as touch events.
Differential Revision: https://phabricator.services.mozilla.com/D29188
--HG--
extra : moz-landing-system : lando
Refactor several occurences of `setTimeout()` to avoid triggering the `eval()` assertion.
Differential Revision: https://phabricator.services.mozilla.com/D28851
--HG--
extra : moz-landing-system : lando
ContentVerifier has been dead code since bug 1355166 (which, incidentally, means
it has no tests). Its presence is preventing improvements to
ContentSignatureVerifier (see e.g. bug 1534600), so this patch removes it.
As a result, the nsILoadInfo attributes verifySignedContent and enforceSRI are
also unused, so this patch removes those as well.
Differential Revision: https://phabricator.services.mozilla.com/D28885
--HG--
extra : moz-landing-system : lando
This implements the first version of spec, so the webidl file doesn't
match the current spec and we will fix them in the follow-up bugs.
i.e.
1. The default observer box is content-box.
2. `ResizeObserverBoxOptions`, `ResizeObserverOptions`, and `ResizeObserverSize`
are not included in `ResizeObserver.webidl`.
3. `ResizeObserverEntry` doesn't have `borderBoxSize` and `contentBoxSize`
attributes.
Depends on D27615
Differential Revision: https://phabricator.services.mozilla.com/D27616
--HG--
extra : moz-landing-system : lando
FileCreatorHelper creates a FileBlobImpl on the main-thread and, because of
this, we end up executing I/O operations on that thread, slowing down other
components. With this patch, FileCreatorHelper logic is moved to PBackground.
That the 'type' getter is still called on the main-thread because FileBlobImpl
uses nsIMIMEService which is a non thread-safe component.
Differential Revision: https://phabricator.services.mozilla.com/D27641
--HG--
extra : moz-landing-system : lando
This is accomplished via prefs rather than using a reftest attribute because
it's easier to get the right persistence (that is, how long the fixed margins
stick around) this way. The downside is that someone reading the reftest page
needs to look at the test- or ref-specific prefs in reftest.list to get a full
picture of what the test is doing.
Differential Revision: https://phabricator.services.mozilla.com/D28728
--HG--
extra : moz-landing-system : lando
Remove `new Function` from parent_utils.js and refactor affected code.
Remove parent_utils.js from eval()-whitelist.
Differential Revision: https://phabricator.services.mozilla.com/D28062
--HG--
extra : moz-landing-system : lando
This implements the first version of spec, so the webidl file doesn't
match the current spec and we will fix them in the follow-up bugs.
i.e.
1. The default observer box is content-box.
2. `ResizeObserverBoxOptions`, `ResizeObserverOptions`, and `ResizeObserverSize`
are not included in `ResizeObserver.webidl`.
3. `ResizeObserverEntry` doesn't have `borderBoxSize` and `contentBoxSize`
attributes.
Depends on D27615
Differential Revision: https://phabricator.services.mozilla.com/D27616
--HG--
extra : moz-landing-system : lando
FileCreatorHelper creates a FileBlobImpl on the main-thread and, because of
this, we end up executing I/O operations on that thread, slowing down other
components. With this patch, FileCreatorHelper logic is moved to PBackground.
That the 'type' getter is still called on the main-thread because FileBlobImpl
uses nsIMIMEService which is a non thread-safe component.
Differential Revision: https://phabricator.services.mozilla.com/D27641
--HG--
extra : moz-landing-system : lando
This patch passes a message through the HangMonitor channel when navigating
through history to cancel content JS that could hang the chrome JS in the
content process responsible for history navigation. If the content JS is
actually canceled, this also disables the BF cache for the current page, since
it could end up in an inconsistent state due to the JS cancellation.
Differential Revision: https://phabricator.services.mozilla.com/D23089
--HG--
extra : moz-landing-system : lando
...instead of forwarding to the sheet like HTMLStyleElement does.
I've proposed this behavior in:
https://github.com/whatwg/html/issues/3840#issuecomment-480894419
I think this is one of the sane behaviors we can have, what Blink / WebKit do
makes no sense to me.
Alternative potentially-sane behavior is making the initial value of the
stylesheet's disabled bit the same as the content attribute, and both reflect
and forward the attribute from the setter.
That means that setAttribute does something different than setting `disabled`,
which means that you can get into all sorts of funny states when reloading the
sheet... So I rather not do that.
Differential Revision: https://phabricator.services.mozilla.com/D26573
--HG--
extra : moz-landing-system : lando
If needed for web-compat.
Also stop dispatching auxclicks if non-primary click has been preventDefaulted,
so that legacy new-tab prevention can work with the pref flip.
Differential Revision: https://phabricator.services.mozilla.com/D27364
--HG--
extra : moz-landing-system : lando
...instead of forwarding to the sheet like HTMLStyleElement does.
I've proposed this behavior in:
https://github.com/whatwg/html/issues/3840#issuecomment-480894419
I think this is one of the sane behaviors we can have, what Blink / WebKit do
makes no sense to me.
Alternative potentially-sane behavior is making the initial value of the
stylesheet's disabled bit the same as the content attribute, and both reflect
and forward the attribute from the setter.
That means that setAttribute does something different than setting `disabled`,
which means that you can get into all sorts of funny states when reloading the
sheet... So I rather not do that.
Differential Revision: https://phabricator.services.mozilla.com/D26573
--HG--
extra : moz-landing-system : lando