Commit Graph

2989 Commits

Author SHA1 Message Date
Dan Glastonbury
0e3c1b91bf Bug 1446233 - P2: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: EZXfIxBRyG4
2018-03-22 15:33:25 +10:00
Xidorn Quan
1881ec7533 Bug 1449089 part 3 - Remove pref layout.css.scope-pseudo.enabled. r=emilio
It was never effective in Stylo anyway.

MozReview-Commit-ID: EF7NnS6uxOO
2018-03-28 09:41:04 +11:00
Nicholas Nethercote
f6f00681e8 Bug 1448220 - Convert all network predictor VarCache prefs to the new StaticPrefList form. r=hurley
MozReview-Commit-ID: JiPbv84btDc
2018-03-16 13:26:04 +11:00
Margareta Eliza Balazs
8419d911e7 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-03-28 01:00:31 +03:00
Jeff Muizelaar
ce6a6c616b Bug 1388842. Add blob invalidation. r=mstange
MozReview-Commit-ID: 5xwqlULUbZe
2018-03-27 17:31:04 -04:00
Tom Ritter
25bea2b0d3 Bug 1448869 Set Timer Precision to 100 us (with Jitter) r=baku
MozReview-Commit-ID: HV1rG4Kzg9k
2018-03-26 11:41:59 -05:00
Nicholas Nethercote
c1b91b0084 Bug 1436655 - Introduce a mechanism for VarCache prefs to be defined entirely in the binary. r=glandium
Currently VarCache prefs are setup in two parts:

- The vanilla pref part, installed via a data file such as all.js, or via an
  API call.

- The VarCache variable part, setup by an Add*VarCache() call.

Both parts are needed for the pref to actually operate as a proper VarCache
pref. (There are various prefs for which we do one but not the other unless a
certain condition is met.)

This patch introduces a new way of doing things. There is a new file,
modules/libpref/init/StaticPrefList.h, which defines prefs like this:

> VARCACHE_PREF(
>   "layout.accessiblecaret.width",
>   layout_accessiblecaret_width,
>   float, 34.0
> )

This replaces both the existing parts.

The preprocessor is used to generate multiple things from this single
definition:

- A global variable (the VarCache itself).

- A getter for that global variable.

- A call to an init function that unconditionally installs the pref in the
  prefs hash table at startup.

C++ files can include the new StaticPrefs.h file to access the getter.

Rust code cannot use the getter, but can access the global variable directly
via structs.rs. This is similar to how things currently work for Rust code.

Non-VarCache prefs can also be declared in StaticPrefList.h, using PREF instead
of the VARCACHE_PREF.

The new approach has the following advantages.

+ It eliminates the duplication (in all.js and the Add*VarCache() call) of the
  pref name and default value, preventing potential mismatches. (This is a real
  problem in practice!)

+ There is now a single initialization point for these VarCache prefs.
  + This avoids need to find a place to insert the Add*VarCache() calls, which
    are currently spread all over the place.
  + It also eliminates the common pattern whereby these calls are wrapped in a
    execute-once block protected by a static boolean (see bug 1346224).
  + It's no longer possible to have a VarCache pref for which only one of the
    pieces has been setup.

+ It encapsulates the VarCache global variable, so there is no need to declare
  it separately.

+ VarCache reads are done via a getter (e.g. StaticPrefs::foo_bar_baz())
  instead of a raw global variable read.
  + This makes it clearer that you're reading a pref value, and easier to
    search for uses.
  + This prevents accidental writes to the global variable.
  + This prevents accidental mistyping of the pref name.
  + This provides a single chokepoint in the code for such accesses, which make
    adding checking and instrumentation feasible.

+ It subsumes MediaPrefs, and will allow that class to be removed. (gfxPrefs is
  a harder lift, unfortunately.)

+ Once all VarCache prefs are migrated to the new approach, the VarCache
  mechanism will be better encapsulated, with fewer details publicly visible.

+ (Future work) This will allow the pref names to be stored statically, saving
  memory in every process.

The main downside of the new approach is that all of these prefs are in a
single header that is included in quite a few places, so any changes to this
header will cause a fair amount of recompilation.

Another minor downside is that all VarCache prefs are defined and visible from
start-up. For test-only prefs like network.predictor.doing-tests, having them
show in about:config isn't particularly useful.

The patch also moves three network VarCache prefs to the new mechanism as a
basic demonstration. (And note the inconsistencies in the multiple initial
values that were provided for
network.auth.subresource-img-cross-origin-http-auth-allow!) There will be
numerous follow-up bugs to convert the remaining VarCache prefs.

MozReview-Commit-ID: 9ABNpOR16uW
* * *
[mq]: fixup

MozReview-Commit-ID: 6ToT9dQjIAq
2018-03-26 09:39:40 +11:00
Nicholas Nethercote
c09f5bf3e9 Bug 1436655 - Tweak the comment at the top of init/all.js. r=glandium
- The first two SYNTAX HINTS are wrong, and citing the syntax is more useful
  than specifying a single example of what isn't allowed.

- The sentence about #ifdefs is wrong. (#ifdefs appear all throughout, and
  prefs are only specified once.)

- I chose a better example file.

MozReview-Commit-ID: JyYFyutqrFD
2018-03-15 14:59:29 +11:00
Andrea Marchesini
2913ab1b8e Bug 1447210 - Upper-case log levels for Console.createInstance(), r=bgrins 2018-03-24 08:21:01 +01:00
Boris Zbarsky
c674308753 Bug 1448048. Restrict the window.Components shim to non-nightly-only to see whether sites actually use it. r=mccr8
MozReview-Commit-ID: 6W1nEyKGlER
2018-03-23 12:53:48 -04:00
Emilio Cobos Álvarez
038aa82277 Bug 1448415: Hide getPropertyCSSValue on nightly. r=bz
MozReview-Commit-ID: ItqKUMZEpoX
2018-03-24 01:00:43 +01:00
Gurzau Raul
7b521d5cc6 Backed out changeset 94a8e9c4c345 (bug 1448048) for Robocop failures on Android on a CLOSED TREE 2018-03-23 23:29:02 +02:00
Boris Zbarsky
cb33feffe7 Bug 1448048. Restrict the window.Components shim to non-nightly-only to see whether sites actually use it. r=mccr8
MozReview-Commit-ID: 6W1nEyKGlER
2018-03-23 12:53:48 -04:00
Cosmin Sabou
0b76756f00 Merge mozilla-central to inbound. a=merge on a CLOSED TREE 2018-03-23 15:32:33 +02:00
Cosmin Sabou
4ee211ec21 Backed out 3 changesets (bug 1446233) for permafailing on dom/media/tests/mochitest/test_peerConnection_replaceTrack.html. a=backout
Backed out changeset 9b72102a99b3 (bug 1446233)
Backed out changeset 6f3488ff7c60 (bug 1446233)
Backed out changeset 20301e359a4e (bug 1446233)
2018-03-23 15:18:23 +02:00
Jonathan Kew
d809e28c5f Bug 1447163 - Enable support for OpenType variation fonts. r=dbaron 2018-03-23 10:35:28 +00:00
Dan Glastonbury
5797ab8ab9 Bug 1446233 - P3: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: 7TVfYE9DEwp
2018-03-22 15:33:25 +10:00
shindli
a0e893e1db Backed out 3 changesets (bug 1446233) for Wr failures in /html/semantics/embedded-content/media-elements/track/track-element/track-webvtt-two-cue-layout-after-first-end.html on a CLOSED TREE
Backed out changeset ed217fb39a92 (bug 1446233)
Backed out changeset f5bec009a111 (bug 1446233)
Backed out changeset a71dd6219f8a (bug 1446233)
2018-03-23 04:11:01 +02:00
Dan Glastonbury
1b8fde6307 Bug 1446233 - P3: Add prefs to control audioipc client thread pool. r=kinetik
MozReview-Commit-ID: I4BL7Ad2xtI
2018-03-22 15:33:25 +10:00
Mathieu Leplatre
7a06a75010 Bug 1397230 - Generalize blocklist clients to remote settings clients r=mgoodwin
MozReview-Commit-ID: 9VAsTFCuZUf
2018-03-13 16:23:57 +01:00
Emilio Cobos Álvarez
1d4859a89a Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt on a CLOSED TREE
MozReview-Commit-ID: JPopq0LudD
2018-03-22 20:06:24 +01:00
Emilio Cobos Álvarez
97286b35c8 Back out changeset b683bb3f22a1 (Bug 1447483) for not landing with all the files. r=me on a CLOSED TREE
This reverts commit 1808914126bb9f9e4a82d2c3d7ac961885fe7d62.

MozReview-Commit-ID: 5skESBseEvo
2018-03-22 20:05:22 +01:00
Emilio Cobos Álvarez
1f5d8de5cc Bug 1447483: Merge nsStyleContext and ServoStyleContext, rename to ComputedStyle. r=jwatt
MozReview-Commit-ID: JPopq0LudD
2018-03-22 19:48:42 +01:00
arthur.iakab
0911dedf1a Merge mozilla-central to inbound 2018-03-21 22:27:21 +02:00
Jan Odvarko
749d1d6d1f Bug 1223726 - Customize response body interception; r=ochameau
* Introduce pref for custom response body limit
* Introduce pref for saving request/response bodies

MozReview-Commit-ID: 7DrAU1did1a
2018-03-12 08:10:39 +01:00
Ryan Hunt
b419c79ff5 Remove DisplayItemLayer and corresponding layers.advanced prefs. (bug 1439960, r=mstange)
MozReview-Commit-ID: FAWTC1Llu31
2018-02-21 09:29:49 -06:00
Emilio Cobos Álvarez
076354eb25 Bug 1447611: Cleanup prefs that do nothing now. r=jwatt
Still more followup cleanup to come.

MozReview-Commit-ID: 83j7DTVb0Ti
2018-03-21 19:13:56 +01:00
Emilio Cobos Álvarez
1980d9800b Bug 1447611: Remove --enable-stylo and --enable-stylo-build-bindgen. r=froydnj
Will remove the prefs and stuff in a followup.

MozReview-Commit-ID: HVyfbHOEQYI
2018-03-21 19:13:26 +01:00
Csoregi Natalia
96a3c6af7f Backed out 4 changesets (bug 1447611) for mass failures due to --enable-stylo removal. CLOSED TREE
Backed out changeset c6193142bbcf (bug 1447611)
Backed out changeset 01ada1c5a95f (bug 1447611)
Backed out changeset 86c9fed44da2 (bug 1447611)
Backed out changeset bb84ac6e1468 (bug 1447611)
2018-03-21 19:01:07 +02:00
Emilio Cobos Álvarez
653c8a2aaf Bug 1447611: Cleanup prefs that do nothing now. r=jwatt
Still more followup cleanup to come.

MozReview-Commit-ID: 83j7DTVb0Ti
2018-03-21 17:25:00 +01:00
Emilio Cobos Álvarez
365f932cec Bug 1447611: Remove --enable-stylo and --enable-stylo-build-bindgen. r=froydnj
Will remove the prefs and stuff in a followup.

MozReview-Commit-ID: HVyfbHOEQYI
2018-03-21 17:24:41 +01:00
Andreea Pavel
624f73578a Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-03-20 00:42:18 +02:00
Andreea Pavel
77cede8498 Merge mozilla-inbound to mozilla-central. a=merge 2018-03-20 00:39:56 +02:00
Honza Bambas
ee0f064cc6 Bug 1444975 - Switch to HTTP throttling v2 algorithm. r=valentin 2018-03-12 11:23:00 -04:00
Honza Bambas
026a9abc88 Bug 1430659 - Network requests in "blocked" state for long time (1+ minute) when ipv6 hosts are no longer available. r=valentin 2018-03-16 09:06:00 -04:00
Tom Ritter
b2d0fa83d4 Bug 1422245 Disable @-moz-document in content pages r=emilio
Previously we had disabled them in content pages on Nightly and Early Beta,
now we're ready to let this ride the trains in 61.

We're going to land this ahead of Bug 1446470 which is specifically about
url-prefix().

MozReview-Commit-ID: AGDHt1snyjU
2018-03-18 12:48:18 -05:00
Robert Longson
f8f17794e7 Bug 1443314 - remove the svg.path-caching.enabled pref r=jwatt 2018-03-18 14:05:28 +00:00
Kartikaya Gupta
14e98f29b2 Bug 1188955 - Turn the MAX_TAP_TIME into a preffable value. r=botond
MozReview-Commit-ID: HCiCd7vxTnF
2018-03-19 16:58:33 -04:00
Emilio Cobos Álvarez
f8bf6f9577 Bug 1446470: Add another pref to control the url-prefix hack. r=xidorn,smaug
MozReview-Commit-ID: D4qL0oO69Uh
2018-03-19 13:20:40 +01:00
Masayuki Nakano
173649ac67 Bug 1446401 - Start to dispatch "keydown" event and "keyup" event even during in composition in Nightly and early Beta r=smaug
For confirming to UI Events spec, we should dispatch "keydown" event and
"keyup" event even during in composition.

This patch makes only Nightly and early Beta start to dispatch those events
during a composition.

MozReview-Commit-ID: 8md7NtSdurJ
2018-02-28 22:19:09 +09:00
Brian Birtles
5730792840 Bug 1420320 - Drop dom.animations-api.pending-member.enabled pref; r=bz,hiro
This pref was introduced in case we encountered compatibility issues from
changing the return value of Animation.playState (bug 1412765). Now that the
change to Animation.playState has shipped to release channel without any known
problems we should drop this pref.

MozReview-Commit-ID: CwMWRRtIf6u
2018-03-16 12:49:55 +09:00
Jonathan Kingston
b82910e120 Bug 1445951 - Treat object subrequests as mixed content. r=ckerschb
MozReview-Commit-ID: F7HgoAaVW7C
2018-03-15 14:20:40 +00:00
shindli
1056e3decf Merge inbound to mozilla-central. a=merge 2018-03-15 12:15:17 +02:00
Kris Maglione
3de3eddddb Bug 1445551: Part 4 - Remove compartment-per-addon. r=mccr8
The compartment-per-addon code was added so that we could segregate at least
some of the code from system-privileged add-ons into tagged compartments, even
when it ran in browser windows. That allowed us to apply certain special
behavior to them, such as enabling e10s shims, and to track some performance
characteristics.

The only remaining chrome-privileged add-ons now are system add-ons controlled
by us, and the shim system and per-compartment performance metrics are gone,
it no longer serves a purpose.

MozReview-Commit-ID: Ap186bWAaqP
2018-03-13 19:43:30 -07:00
Kris Maglione
b4d543ffb2 Bug 1445551: Part 2 - Remove multiprocessCompatible flag. r=aswan
We no longer support legacy extensions with e10s shims, and the only remaining
uses that matter are in-tree test harnesses, which have been fixed. This flag
no longer serves a purpose.

MozReview-Commit-ID: EdCNqF4MttN
2018-03-13 19:02:42 -07:00
Andreea Pavel
4fcb7883ae Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2018-03-15 00:11:42 +02:00
Daniel Holbert
0078ecfcd1 Backed out changeset 3187e7424f01 (bug 1444139) because it still regresses google docs on some configurations. 2018-03-14 14:06:08 -07:00
Masayuki Nakano
a3b6f2081e Bug 1444572 - IMContextWrapper should dispatch fake eKeyDown event during composition if active IM is uim r=m_kato
uim is an old IM which uses key snooper to listen to key events rather than
via filter key event API which should be called by applications.  It's still
used by Debian 9.x, so, we still need to support this.

Unfortunately, we cannot detect if uim actually uses key snooper because it's
switch by build option of uim.  Currently, Debian builds uim as using key
snooper.  So, we should assume uim uses key snooper always.  On the other
hand, somebody *might* use uim built as not using key snooper, so, let's
decide if uim uses key snooper with new pref,
"intl.ime.hack.uim.using_key_snooper", but its default should be true.

Note that ibus and Fcitx also have the mode to use key snooper (perhaps for
backward compatibility with uim).  However, it's not enabled in default
settings and even if it's enabled, Firefox is in whitelist in the default
settings of them for stop using key snooper.  Therefore, we don't need to
support key snooper mode for them unless we'll get some requests to
support their key snooping mode.

MozReview-Commit-ID: 6fTsfKrHzvo
2018-03-12 15:41:39 +09:00
arthur.iakab
66a7d3c3a7 Merge inbound to mozilla-central. a=merge 2018-03-14 12:00:13 +02:00
Kearwood Gilbert
6b55caf97c Bug 1436791 - Implement gfxVRExternal,r=rbarker
- gfxVRExternal Enables other processes to present
  real or simulated VR hardware to Firefox.
- This functionality is disabled by default, under
  dom.vr.external.enabled.
- VRDisplayInfo, VRControllerInfo, and associated
  structs have been restructured to ensure internal
  state is not exposed via shmem interface.
- Some refactoring to convert structs to
  POD types, enabling them to be located
  in shmem and be memcpy'd.
- Work needed before unpreffing marked
  with "TODO" comments.
MozReview-Commit-ID: FbsusbxuoQ8
2018-03-13 17:09:54 -07:00