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

14122 Коммитов

Автор SHA1 Сообщение Дата
Brindusan Cristian 6a74eec204 Merge inbound to mozilla-central r=merge a=merge 2017-12-01 00:22:25 +02:00
Chung-Sheng Fu 63739feac3 Bug 1037335 - Add a pref to enable only within Nightly and Early Beta. r=ckerschb,smaug
MozReview-Commit-ID: Bi82dHm53qX

--HG--
extra : rebase_source : 61a7c517afb2759d672a1c486213a73ef505a324
extra : amend_source : 572a2c8613fe36ae1ebd613a361bb23acc019912
2017-11-29 16:55:00 +02:00
Alastor Wu e750ccbccf Bug 1415478 - part1 : turn on the pref on Nightly build. r=jwwang
MozReview-Commit-ID: AJva2ypm7BJ

--HG--
extra : rebase_source : 385bcf45aa417de1593adcc506a047caa5b14f35
2017-11-30 10:50:17 +08:00
Bogdan Tara d8635b15e4 Merge inbound to mozilla-central r=merge a=merge on a CLOSED TREE 2017-11-30 00:41:09 +02:00
Nicholas Nethercote 5b80c7cb65 Bug 1394578 - Pass pref locked status to content processes. r=glandium
This makes the IPC messages a little bigger, but that's unavoidable.

MozReview-Commit-ID: 1oPz2Yjjd9y

--HG--
extra : rebase_source : 0cff8cf5b25f66b73f6864ce50c1e5f575026ec3
2017-11-29 09:29:07 +11:00
Nicholas Nethercote e7207b6fd8 Bug 1394578 - Rewrite Preferences::SetPreference(). r=glandium
Preferences::SetPreference() is used when setting prefs in the content process
from dom::Pref values that are passed from the parent process. Currently we
use the high-level Set*InAnyProcess() methods to do this -- basically the same
code path as sets done via the API -- but this has several problems.

- It is subtly broken. If the content process already has a pref of type T with
  a default value and then we get a SetPreference() call that tries to change
  it to type U, it will erroneously fail. In practice this never(?) happens,
  but it shows that things aren't arranged very well.

- SetPreference() also looks up the hashtable twice to get the same pref if
  both a default value and a user value are present in the dom::Pref.

- This happens in content processes, while all other pref set operations occur
  in the parent process. This is the main reason we have the Set*InAnyProcess()
  functions.

In short, the setting of prefs via IPC is quite different to the setting of
prefs via other means -- because it happens in content processes, and it's more
of a clobber that can set both values at once -- and so should be handled
differently.

The solution is to make Preferences::SetPreference() use lower-level operations
to do the update. It now does the hash table lookup/add itself, and then calls
the new Pref::FromDomPref() method. That method then possibly calls the new
PrefValue::FromDomPrefValue() method for both kinds of value, and overwrites
them as necessary. SetValueFromDom() is no longer used and the patch removes it.

MozReview-Commit-ID: 2Rg8VMOc0Cl

--HG--
extra : rebase_source : 0eddc3a4b694a79af3e173aefa7758f8e2ae776b
2017-11-23 18:03:02 +11:00
Nicholas Nethercote 9ce6c0ebf9 Bug 1394578 - Introduce PrefType::None. r=glandium
And remove the type argument from PrefValue's constructor. This is needed
for the next patch.

MozReview-Commit-ID: Ls8hEU2uRQQ

--HG--
extra : rebase_source : 115828e219f6bbe04677ffc106068a662458481a
2017-11-23 16:35:38 +11:00
Nicholas Nethercote 2c1bcd3a21 Bug 1394578 - Move Pref::AssignPrefValueToDomPrefVAlue() to PrefValue::ToDomPrefValue(). r=glandium
It's a bit nicer that way.

MozReview-Commit-ID: HpVaxje7XIP

--HG--
extra : rebase_source : 23a9bf251225992652e33bce84135840c2566d86
2017-11-23 16:35:35 +11:00
Nicholas Nethercote dcfe881ca1 Bug 1394578 - Move more operations into PrefValue. r=glandium
The nice thing about this is that the memory management of the strings
(moz_xstrdup() and free()) is now entirely within PrefValue.

MozReview-Commit-ID: KJjnURpmgfE

--HG--
extra : rebase_source : 39c058cddf5ebf9e19f9151f40fd507f6909a289
2017-11-23 16:34:42 +11:00
Nicholas Nethercote 5208f7436b Bug 1394578 - Remove the kPref* enum. r=glandium
It's something of an obfuscation, and it forces together various bool values
that don't necessarily have to be together (and won't be together after future
refactorings).

The patch also reorders some function arguments for consistency: PrefType, then
PrefValueKind, then PrefValue.

MozReview-Commit-ID: KNY0Pxo0Nxf

--HG--
extra : rebase_source : d46d228c3b13549b2159757dcdaf9583cca828f7
2017-11-23 13:07:04 +11:00
Nicholas Nethercote 53ec464e06 Bug 1394578 - PrefHashEntry as Pref. r=glandium
Although it is a subclass of PLDHashEntryHdr, it's the main representation of a
pref, so the name should reflect that.

MozReview-Commit-ID: 5qJNQtjbFmH

--HG--
extra : rebase_source : f2bd77a57c4e2a48e24ead736f15856fbeb9f718
2017-11-23 10:52:08 +11:00
Nicholas Nethercote 15bd051c45 Bug 1394578 - Use gHashTable->EntryCount() to size aDomPrefs, not aCapacity(). r=glandium
As is done in pref_SavePrefs().

The confusion here is because a Vector can fill 100% of its capacity, but a
hash table cannot go past 75% of its capacity.

MozReview-Commit-ID: 5JMbmtrxMGN

--HG--
extra : rebase_source : 5ce1ce9dd0259588a0df924c2b45c39497b1ce71
2017-11-22 21:21:19 +11:00
Nicholas Nethercote a775a9afdb Bug 1394578 - Rename dom::PrefSetting as dom::Pref. r=glandium
It represents a pref, so `Pref` is a better name. Within Preferences.cpp the
patch uses domPref/aDomPref to distinguish it from PrefHashEntry values.

MozReview-Commit-ID: HXTl0GX4BtO

--HG--
extra : rebase_source : c1e0726c55e7577720f669f0ed2dbc38627d853e
2017-11-22 21:21:19 +11:00
Nicholas Nethercote 73b9138844 Bug 1394578 - Add PrefHashEntry::ValueMatches(). r=glandium
This factors out some common code from SetValue(), making it easier to read.
The patch also improves the comments in SetValue().

MozReview-Commit-ID: 60JnBlIS1q6

--HG--
extra : rebase_source : cc0e47eb556ab87549137777625856db12782702
2017-11-22 09:53:23 +11:00
Makoto Kato e92f83050d Bug 1419776 - Backed out bug 1419277 part 2 due to unclassified heap regression. r=jfkthame
MozReview-Commit-ID: 5ghveJGcpiH

--HG--
extra : rebase_source : e7d7b87db37e767a786e1b5b4a5d5c823aa9d825
2017-11-28 15:33:52 +09:00
Dorel Luca 79499f4044 Merge mozilla-central to autoland r=merge on a CLOSED TREE 2017-11-29 12:31:25 +02:00
Jean-Yves Avenard 424a8ff8a0 Bug 1417973 - Always use the AMD GPU decoder. r=mattwoodrow
High resolution, high framerate was disabled by default on old AMD cards on the provisio that it was bad. But this assumes that the CPU decoder could do it better.
This assumption appears fragile at best, as CPU with those old adapter are likely to be old and underpower to start with.

Chrome doesn't appear to restrict use of those cards to a given resolution.
So we disable this restriction, while making it user configurable.

MozReview-Commit-ID: HhADHNR0FdJ

--HG--
extra : rebase_source : ece39cd9b84c6e372d1002ee12e72523cee3d04d
2017-11-22 20:58:09 +01:00
Emilio Cobos Álvarez ec75854b21 Bug 1035091: Disable @-moz-document on author sheets on nightly and early beta. r=xidorn
MozReview-Commit-ID: AAUs1jJifjS

--HG--
extra : rebase_source : b3334ff237e66fd75ef87aa92c4c9a56fef2119f
2017-11-29 22:16:46 +01:00
Jonathan Kingston 6986c42dfa Bug 1190623 - Add a pref to consider object sub requests as active. r=tanvi, r=ckerschb
MozReview-Commit-ID: Br2F89IfWng
2017-11-11 01:15:06 +00:00
Dão Gottwald aff5b2a7f6 Bug 1352497 - Remove about:healthreport. r=gfritzsche,nechen
MozReview-Commit-ID: 4FQ5aL2XrU5

--HG--
extra : rebase_source : a8863472a82697b3e7668866a35f14b6f01fafe7
2017-11-28 11:38:15 +01:00
Johann Hofmann d28b4dd837 Bug 1374574 - Remove the FlyWeb service and DOM interfaces. r=bz,djvj
MozReview-Commit-ID: 4hp9pLbMh4R

--HG--
extra : rebase_source : 82f417640211ede4fd7aa290c1f2609b07f38025
2017-11-22 15:00:10 +01:00
Sebastian Hengst 706ac3aea0 Backed out 3 changesets (bug 1415478) for frequently asserting in own test test_autoplay_policy.html at MediaDecoderStateMachine.cpp:989. r=backout
Backed out changeset 6ba103fe1caf (bug 1415478)
Backed out changeset df6721a3584f (bug 1415478)
Backed out changeset 8a802839959b (bug 1415478)

--HG--
extra : rebase_source : be4296b1b36005195897de5544941b58895de661
2017-11-27 19:57:34 +02:00
bechen@mozilla.com d644e57ff9 Bug 1415805 - enable region preference and wpt tests webvtt/api/VTTRegion. r=rillian
MozReview-Commit-ID: 1aaQml7gKBU

--HG--
extra : rebase_source : 34b5c39af3cab32f070335fd3cf183c45db2282a
2017-11-22 16:10:06 +08:00
Alastor Wu 10ef8e706f Bug 1415478 - part1 : turn on the pref on Nightly build. r=jwwang
MozReview-Commit-ID: AJva2ypm7BJ

--HG--
extra : rebase_source : 00b7a831a685dee21a13a786e93e9a3a388f4be3
2017-11-27 19:18:45 +08:00
Chun-Min Chang 447c6c888f Bug 654787 - part1: Add pref for audio seamless looping; r=jwwang
MozReview-Commit-ID: 1md5AxHG8NA

--HG--
extra : rebase_source : c13002de65c523a508f01564cc2730aff4a36086
2017-11-08 13:43:08 +08:00
Cosmin Sabou 651cb90a8a Backed out changeset be86ccde4f4a (bug 1352497) for bc failures on Windows 7 debug with e10s at docshell/test/browser/browser_bug1309900_crossProcessHistoryNavigation.js r=backout a=backout 2017-11-26 01:36:44 +02:00
Noemi Erli 45a3df4e6b Merge inbound to mozilla-central r=merge a=merge 2017-11-23 08:05:49 +02:00
Florian Quèze c276dded0e Backed out changeset 1603e2488c32 as this patch for bug 1226616 didn't work 2017-11-25 00:01:07 +01:00
Ciure Andrei 327405164b Merge inbound to mozilla-central r=merge a=merge 2017-11-25 00:04:02 +02:00
dluca 85d0512151 Backed out 3 changesets (bug 1415478) for frequently asserting at dom/media/MediaDecoderStateMachine.cpp:1009 on a CLOSED TREE
Backed out changeset 447d895b350d (bug 1415478)
Backed out changeset d855c032c823 (bug 1415478)
Backed out changeset 6739012c4bdf (bug 1415478)
2017-11-24 18:50:53 +02:00
Botond Ballo 978ae3283a Bug 951793 - Style support for overscroll-behavior. r=heycam
MozReview-Commit-ID: IDAfBZy2D5p
2017-11-25 01:28:58 +01:00
Sebastian Hengst 6d4637aebb Backed out 15 changesets (bug 951793) because it landed before the necessary servo changes. r=backout requested by emilio on a CLOSED TREE
Backed out changeset ca8c86e229df (bug 951793)
Backed out changeset 6eef6403fa71 (bug 951793)
Backed out changeset a5e529f52fb1 (bug 951793)
Backed out changeset 054e837609d0 (bug 951793)
Backed out changeset 713a3c9617ce (bug 951793)
Backed out changeset 884913aa1668 (bug 951793)
Backed out changeset c3340b84e534 (bug 951793)
Backed out changeset 50fe3c6ac486 (bug 951793)
Backed out changeset be4e22e5c257 (bug 951793)
Backed out changeset 7055bd5dfc4e (bug 951793)
Backed out changeset fa6da1e723cf (bug 951793)
Backed out changeset 386f77004d89 (bug 951793)
Backed out changeset fa82cdc01408 (bug 951793)
Backed out changeset 867d8ea5355c (bug 951793)
Backed out changeset e61ac8e48971 (bug 951793)
2017-11-25 01:01:41 +02:00
sotaro dff4491cb4 Bug 1391159 - Handle WebRender ProgramBinary usage r=nical 2017-11-24 20:58:24 +09:00
arthur.iakab dfc104159a Merge inbound to central r=merge a=merge 2017-11-24 12:00:30 +02:00
Brian Birtles 9500d45c75 Bug 1412765 - Enable dom.animations-api.pending-member.enabled by default; r=hiro
MozReview-Commit-ID: G1Uyff3Wh32

--HG--
extra : rebase_source : 53a4ce42dfee03512dd0153f069aab27169580d4
2017-11-24 10:54:12 +09:00
Brian Birtles bad7dc839d Bug 1412765 - Add dom.animations-api.pending-member.enabled, defaulting to false; r=hiro
MozReview-Commit-ID: 7P34nAI7apB

--HG--
extra : rebase_source : 94cf46522b995c40b1649a4d8ce44cd868026869
2017-11-21 09:43:40 +09:00
Nicholas Nethercote 09d19b6c47 Bug 1419654 - Prevent possible pref default/user value type mismatches. r=glandium
Currently, you can create a pref that only has a user value, and then later
give it a default value with a different type. The entire pref is then recorded
as having this second type. This causes problems later when interpreting the
user value.

This patch makes SetValue() fail if it tries to set a default value whose type
differs from an existing user value. It also expands an existing test to cover
this case and some similar ones.

MozReview-Commit-ID: 89tvISQ7RNT

--HG--
extra : rebase_source : 6cf34da0ff24f5b90a88003445a4a7c88b1f3907
2017-11-21 16:00:23 +11:00
Mike Hommey 45a27d92d2 Bug 1420311 - Remove hack from test_stickyprefs.js. r=njn
Before bug 1367813, the code in test_stickyprefs.js, using
readUserPrefs, would end up changing the file under which the
preferences service would save user prefs, making xpcshell
possibly overwrite the test data files at the end of the test run.

A hack was put in place to avoid this, that is not required anymore.

--HG--
extra : rebase_source : 6a4b1442c0d1593322226ad162c421df4f9c7f87
2017-11-24 10:39:23 +09:00
Nika Layzell 93c45cb3ef Bug 1419144 - Part 2: Remove unused gThrottledIdlePeriodLength, r=farre
MozReview-Commit-ID: GGMJC6HuCLa
2017-11-23 13:11:14 -05:00
Botond Ballo 3ff3395934 Bug 951793 - Style support for overscroll-behavior. r=heycam
MozReview-Commit-ID: IDAfBZy2D5p

--HG--
extra : rebase_source : d70820f9612174ffc8f17f1a2646dc65f46667df
2017-11-22 19:01:11 -05:00
Dão Gottwald bfd060da04 Bug 1352497 - Remove about:healthreport. r=gfritzsche,nechen
MozReview-Commit-ID: 8aPg9oDFIlu

--HG--
extra : rebase_source : 6e9836a6d66b464df1228f7ed84e9b37bad8809c
2017-11-22 13:51:08 +01:00
arthur.iakab 61b76d3643 Merge mozilla central to autoland r=merge a=merge on a CLOSED TREE 2017-11-24 12:05:22 +02:00
Alastor Wu d5341011c9 Bug 1415478 - part1 : turn on the pref on Nightly build. r=jwwang
MozReview-Commit-ID: AJva2ypm7BJ

--HG--
extra : rebase_source : 5bfd8d46aa8b928bd7b6a6e12c31f0c7e2c4ebee
2017-11-24 11:12:23 +08:00
Gabriele Svelto 6250b4ad47 Bug 1402519 - Remove MOZ_CRASHREPORTER directives from modules/libpref; r=njn
MozReview-Commit-ID: 3Jr4Cfe9Bn1

--HG--
extra : rebase_source : 5d151212da86676adf195921423e5826a818891e
2017-09-29 16:27:44 +02:00
Ryan Hunt af4d628887 Enable OMTP on OSX (bug 1422392, r=nical)
MozReview-Commit-ID: 4EImR8UsFv2

--HG--
extra : rebase_source : df8afaa61a39f298194c836c346ddba245efc696
2017-11-21 19:13:08 -05:00
Nicolas Silva ab49f34451 Bug 1420123 - Expose more WebRender debug flags to prefs. r=kvark 2017-11-23 16:01:48 +01:00
Cosmin Sabou a5d613086a Merge mozilla-inbound to mozilla-central r=merge a=merge 2017-11-23 11:42:46 +02:00
Phil Ringnalda f12ca11346 Backed out 3 changesets (bug 1407423) for Android permaorange in test_vrDisplay_getFrameData.html
Backed out changeset b9dbe5af9a06 (bug 1407423)
Backed out changeset 16d247b8091d (bug 1407423)
Backed out changeset 2b625d265761 (bug 1407423)

MozReview-Commit-ID: 6clRbH1Hodr
2017-11-22 18:15:10 -08:00
Florian Quèze 723d70b38a Bug 1226616 - The presence of the general.config.filename preference should be reported on telemetry. r=njn, data-review=francois 2017-11-23 00:59:38 +01:00
Nicholas Nethercote dccbe1fff8 Bug 1419648 - Remove and inline PREF_RegisterCallback(). r=glandium
This requires adding an aPriority argument (defaulting to false) to
Preferences::RegisterCallback(). And RegisterVarCacheCallback() is no longer
necessary.

MozReview-Commit-ID: BMDk3HuaQVV

--HG--
extra : rebase_source : 17a61cfd9a82f24854162fc993223691041ea46d
2017-11-21 12:57:53 +11:00
Nicholas Nethercote 1ea97b46f1 Bug 1419648 - Inline and remove PREF_UnregisterCallback(). r=glandium
MozReview-Commit-ID: GLUdbRjxDLR

--HG--
extra : rebase_source : df713f8f242618f8624640bf94bebcc996362b1f
2017-11-21 12:57:53 +11:00
Nicholas Nethercote b4b208fe70 Bug 1419648 - Remove and inline PREF_{LockPref,UnlockPref,PrefIsLocked}(). r=glandium
MozReview-Commit-ID: 7HatftTQwHr

--HG--
extra : rebase_source : 686cec1ece58dafb2227819db308c17f6d30cacd
2017-11-16 09:05:43 +11:00
Nicholas Nethercote 1bd63d481b Bug 1419648 - Inline and remove PREF_HasUserPref(). r=glandium
MozReview-Commit-ID: Dz2IgjrfEjQ

--HG--
extra : rebase_source : f0cc02751263b1a04f49b06115e407ab96dc8e69
2017-11-15 17:01:15 +11:00
Nicholas Nethercote 439ed6b332 Bug 1419648 - Inline and remove PREF_ClearUserPref(). r=glandium
MozReview-Commit-ID: EBb9hxtIwPz

--HG--
extra : rebase_source : b7944677bf72e7e891551e81775659dd46b59fab
2017-11-15 17:01:15 +11:00
Nicholas Nethercote d03b40ebee Bug 1419648 - Inline and remove PREF_ClearAllUserPrefs(). r=glandium
MozReview-Commit-ID: Eud92V7qFS4

--HG--
extra : rebase_source : 9075832b2d0077a73e2268190e0a4a75aa89022c
2017-11-15 17:01:14 +11:00
shindli a0b20fcb81 Merge mozilla-central to mozilla-autoland. r=merge a=merge CLOSED TREE 2017-11-22 23:42:02 +02:00
shindli fb855aa7ba Backed out 16 changesets (bug 1402519) for conflicts during merge r=backout on a CLOSED TREE
Backed out changeset 07fcf163241a (bug 1402519)
Backed out changeset c6d2ad45d8e2 (bug 1402519)
Backed out changeset 8a3caca61294 (bug 1402519)
Backed out changeset 01425eae2c48 (bug 1402519)
Backed out changeset cf298d3815de (bug 1402519)
Backed out changeset e1964f4389cd (bug 1402519)
Backed out changeset f405337f3569 (bug 1402519)
Backed out changeset a76356fd3359 (bug 1402519)
Backed out changeset d3bb350d1c34 (bug 1402519)
Backed out changeset 9d3bfd9f932c (bug 1402519)
Backed out changeset e3dd6e5b073f (bug 1402519)
Backed out changeset e801b0c00134 (bug 1402519)
Backed out changeset 8a4139fa5dca (bug 1402519)
Backed out changeset 8d01c14ac1ca (bug 1402519)
Backed out changeset 24e0dcd01898 (bug 1402519)
Backed out changeset f8fdf450613f (bug 1402519)
2017-11-23 00:11:44 +02:00
Kearwood "Kip" Gilbert 7e7cb086d3 Bug 1407423 - Ensure that any time we have loaded the Oculus runtime libary, we are polling ShouldQuit,r=daoshengmu
- Ensure ovr_GetSessionStatus is polled even when a VR presentation
  is not active.
- When we fail to initialize an Oculus Session or detect VR hardware,
  immediately unload the Oculus Library as we can't poll for ShouldQuit
  without a valid Oculus session.
- When we poll ovr_GetSessionStatus, we are now updating the mounted state
  in VRDisplayInfo::mIsMounted.
- Added prefs to control enumeration throttling and timeout to release
  VR hardware when inactive.
- Some refactoring to make frame loop more understandable and less
  brittle.
- When throttling enumeration, we ensure that all other VR apis
  also throttle enumeration so that they don't pick up the same device
  during throttling.
- Some long functions in VRManager have been broken up and
  had their inner-workings documented in more detail.

MozReview-Commit-ID: CEYwwQ9mYd0

--HG--
extra : rebase_source : b82cd9f200e6311528d4bed469d1b8044e9fc7f2
extra : amend_source : e74f56f5ec95641fd478deb71d6c7ba5d2cba7b1
2017-10-10 14:42:37 -07:00
Gabriele Svelto b32bdfa37b Bug 1402519 - Remove MOZ_CRASHREPORTER directives from modules/libpref; r=njn
MozReview-Commit-ID: 3Jr4Cfe9Bn1

--HG--
extra : rebase_source : 9584291478e44f988ace712e9fab0e97489c4693
2017-09-29 16:27:44 +02:00
Andrea Marchesini 1fd1731f81 Bug 1419382 - Moving ownership of nsIInputStream when using netUtil functions - part 3 - NS_NewInputStreamPump, r=smaug 2017-11-22 11:18:57 +01:00
Ciure Andrei c7cf019289 Merge mozilla-central to mozilla-inbound. r=merge a=merge CLOSED TREE 2017-11-22 12:20:25 +02:00
Nicholas Nethercote 0d3f601004 Bug 1418847 - Move variable declarations within Parser::Parse(). r=glandium
MozReview-Commit-ID: FdgXKBKH4nr

--HG--
extra : rebase_source : 3433eb75f562c4d40aa32a2f617ffcbaebc9a1a7
2017-11-21 12:57:36 +11:00
Nicholas Nethercote 40c44bbf9d Bug 1418847 - Hardcode the value reader and error reporter in Parser. r=glandium
In practice we always use the same functions for these purposes.

MozReview-Commit-ID: 4Be9pRhUeff

--HG--
extra : rebase_source : 3dfafd9479371d3a47ec263a66942ddbfbefdb46
2017-11-19 20:28:53 +11:00
Nicholas Nethercote eaa4ad1134 Bug 1418847 - Move some constants into class Parser. r=glandium
MozReview-Commit-ID: 1eZiyrUWjFp

--HG--
extra : rebase_source : feea72ef3cae05616d5368bcc0170ec17736422c
2017-11-19 20:10:39 +11:00
Nicholas Nethercote 71c4d64d05 Bug 1418847 - Refactor the Parser's state enum. r=glandium
MozReview-Commit-ID: 7csnknAAEtH

--HG--
extra : rebase_source : 639fb5f148a119af93c99b5fe921bd9629f03520
2017-11-19 20:10:10 +11:00
Nicholas Nethercote 8098ada3c9 Bug 1418847 - Morph struct PrefParserState into class Parser. r=glandium
This patch makes it a proper class, and moves existing functions into it.

MozReview-Commit-ID: 5pbT3ljq44R

--HG--
extra : rebase_source : ac7ba98f9d39b3cd6f71498a5e108cb6757034e0
2017-11-19 20:10:07 +11:00
Nicholas Nethercote 30ee72e5bb Bug 1418846 - Give CallbackNode a constructor and destructor. r=glandium
And use new/delete for them. And make mDomain a unique pointer so it doesn't
need explicit deallocation.

MozReview-Commit-ID: E1jLccXaSwT

--HG--
extra : rebase_source : 5a64135d5471297ab98f8ec4557f66dac8b7eff9
2017-11-19 14:55:40 +11:00
Nicholas Nethercote 6207a59f90 Bug 1418846 - Remove PrefType::Invalid. r=glandium
Maybe<PrefType> is a better way of representing "no type".

MozReview-Commit-ID: Fnha5RxbNg4

--HG--
extra : rebase_source : 8e8322b0443305ab71acd6d98ea2607f626c5bce
2017-11-19 14:42:20 +11:00
Nicholas Nethercote 7e91e21a8a Bug 1418846 - Privatize GetRootLength(). r=glandium
MozReview-Commit-ID: JzZ2ot83YwJ

--HG--
extra : rebase_source : bd782baec39823fb6352110124cf851c184ad201
2017-11-18 20:36:56 +11:00
Nicholas Nethercote b3a73b9721 Bug 1418846 - Rename ENSURE_MAIN_PROCESS as ENSURE_PARENT_PROCESS. r=glandium
So it matches XRE_IsParentProcess().

MozReview-Commit-ID: E5ARalJhttX

--HG--
extra : rebase_source : 8ff91a9f511c27837a4e6d5e79ce097e55e884d8
2017-11-18 20:32:20 +11:00
Nicholas Nethercote 3e0ae997ab Bug 1418846 - Give PrefHashEntry a destructor. r=glandium
MozReview-Commit-ID: 84IJ25ItUuY

--HG--
extra : rebase_source : 4fcecb3fc1ebdfc5efdda27e8adf6c8dc1776a55
2017-11-18 20:29:03 +11:00
Nicholas Nethercote d65e40e1b8 Bug 1418846 - Remove PrefHashEntry::mIsSticky's getter and setter. r=glandium
This field isn't accessed outside PrefHashEntry.

MozReview-Commit-ID: IvwQe5UtjjJ

--HG--
extra : rebase_source : 5447d4e24bbf0d0637ee29377cc749b9b77b4e1e
2017-11-18 13:15:46 +11:00
Nicholas Nethercote 1ff309b5fb Bug 1418846 - Remove PrefHasEntry()::SetHas{Default,User}Value(). r=glandium
We can move the setting into ReplaceValue() and ClearValue(), and then those
methods aren't needed any more.

The patch also removes some getter calls within PrefHashEntry by directly using
field names.

MozReview-Commit-ID: 42EAx1Kh9Et

--HG--
extra : rebase_source : 3393a80a9c5d2d7c660171cdda8d3914c35e96ea
2017-11-18 13:13:27 +11:00
Nicholas Nethercote ce60c37da0 Bug 1418846 - Fix string value leaks in libpref. r=glandium
There's an "XXX" comment suggesting a possible leak when string user values are
cleared. Turns out a lot of the time there won't be a leak, because the string
pointer isn't overwritten and ClearEntry() frees the string when the pref is
destroyed. However, if the user value is subsequently overwritten with a
different string, there will be a leak. Also, even in the non-leak case, we
currently hold onto the string for longer than necessary.

This patch introduces ClearUserValue() -- which frees the string when
appropriate -- and uses it in all the places where values are cleared.

MozReview-Commit-ID: ARuWUNzPTfy

--HG--
extra : rebase_source : 4567e37ba96ba3b4ae9b1972d887eeaed1257cb0
2017-11-18 13:05:02 +11:00
Nicholas Nethercote 34ba26b512 Bug 1418846 - Overhaul pref_DoCallback. r=glandium
Specifically:

- rename it as NotifyCallbacks();

- remove the return value, because it is always NS_OK;

- some minor naming and declaration clean-ups.

MozReview-Commit-ID: GcH81owPLsp

--HG--
extra : rebase_source : 501a85f76bb823cc45dba8e4601584f5218b1a9e
2017-11-18 12:34:25 +11:00
Coroiu Cristina d6a2b15dbc Merge inbound to mozilla-central r=merge a=merge 2017-11-22 01:32:34 +02:00
Cervantes Yu 1ba4e86d19 Bug 1416703 - Part 8: Remove dead security prefs in all.js. r=dveditz
MozReview-Commit-ID: 1wpITF2xbyK

--HG--
extra : rebase_source : 26cdaeed17adc2249ea5aa1cba4392f557a44c4c
2017-11-14 19:20:53 +08:00
Cervantes Yu d88ae56a5d Bug 1416703 - Part 7: Remove some dead prefs in all.js. r=baku
This removes from all.js some dom, browser, autocomplete, ui, and other prefs
that are no longer accessed in our code.

MozReview-Commit-ID: JGoBZ2GUbPD

--HG--
extra : rebase_source : cc87f28ca547ac5568a6df0dd5c3561712dc149d
2017-11-14 18:20:38 +08:00
Cervantes Yu 36d040eb2b Bug 1416703 - Part 6: Remove dead gfx prefs in all.js. r=nical
MozReview-Commit-ID: ARKn2l9xNqs

--HG--
extra : rebase_source : cd7954f8785ab9aa9b5515732300417f777831dc
2017-11-14 16:20:48 +08:00
Cervantes Yu 087da036a8 Bug 1416703 - Part 5: Remove dead prefs for profile management in all.js. r=mak
MozReview-Commit-ID: GlRtI9Xuf4R

--HG--
extra : rebase_source : ccb7120e9836484f6bf248ae12c7d17284ad5c66
2017-11-14 16:17:29 +08:00
Cervantes Yu 95b4c711d1 Bug 1416703 - Part 4: Remove dead devtools prefs in all.js. r=jdescottes
MozReview-Commit-ID: 8IbaRrY3dfK

--HG--
extra : rebase_source : 116bfe0fd284cd1edbd7d07513bf97a4c9bf5910
2017-11-14 16:14:16 +08:00
Cervantes Yu c4f82d6bd7 Bug 1416703 - Part 3: Remove dead media prefs in all.js. r=cpearce,jesup
MozReview-Commit-ID: KIVAnQPTvCp

--HG--
extra : rebase_source : 983b3d79ebea8fa3bf878457931dcaf14c15595f
2017-11-14 16:10:31 +08:00
Cervantes Yu 9ea90c896d Bug 1416703 - Part 2: Remove dead prefs for printing in all.js. r=bobowen
This removes prefs for printing that are only declared in all.js but not accessed
elsewhere. Also correct the name of "print.print_in_color".

MozReview-Commit-ID: GrHNUjCiijA

--HG--
extra : rebase_source : 2d778dd6e517c10b569ff98af8da1ed9b80308e0
2017-11-14 15:10:10 +08:00
Cervantes Yu 08294f9c66 Bug 1416703 - Part 1: Remove dead accessibility prefs in all.js. r=Gijs
MozReview-Commit-ID: sKcuZ9abi0

--HG--
extra : rebase_source : 692d2bb2913f921b4a88bedca51da474b6d0b219
2017-11-14 13:55:33 +08:00
Tiberius Oros 797c93d81f Merge inbound to mozilla-central r=merge a=merge 2017-11-21 11:55:23 +02:00
Nicholas Nethercote 633725db69 Bug 1418467 - Privatize PrefHashEntry::m{Default,User}Value. r=glandium
MozReview-Commit-ID: 9Fzaf4ifF0N

--HG--
extra : rebase_source : 739933d801bfa7dc4580f5d1bd3c81e5d3f07c2e
2017-11-18 07:40:01 +11:00
Nicholas Nethercote 00d85378fb Bug 1418467 - Add PrefHashEntry::SetValue(). r=glandium
It's a horrible method, but the horribleness was pre-existing. I hope to make
it nicer in a follow-up bug.

MozReview-Commit-ID: 3tMTEeBNVax

--HG--
extra : rebase_source : b21d80ed6468b7c22689df64c1ae1bdda49a2a06
2017-11-18 07:38:24 +11:00
Nicholas Nethercote 48a1e0788f Bug 1418467 - Partly move value getting into PrefHashEntry. r=glandium
MozReview-Commit-ID: 4ouh3XFxPZr

--HG--
extra : rebase_source : d71c1db9a979bbd9fc8b1e0ed385e04b7cdb27cb
2017-11-18 07:28:29 +11:00
Nicholas Nethercote ce0ad5b0c0 Bug 1418467 - Add PrefHashEntry::UserValueToStringForSaving(). r=glandium
This moves part of pref_savePrefs() into PrefHashEntry.

This requires moving StrEscape() higher up to avoid a forward declaration.

Note that clang-format insists on indenting an unrelated comment, I don't know
why.

MozReview-Commit-ID: 7gww3r7t9y4

--HG--
extra : rebase_source : 63f19bb2c556cc806cc6ce43e70ac6c95e6d67bc
2017-11-18 07:27:06 +11:00
Nicholas Nethercote 236478c605 Bug 1418467 - Move pref_ValueChanged() into PrefValue. r=glandium
And invert its sense, renaming as Equals(), because that is easier to think
about.

The patch also reorders some conditions so that
HasDefaultValue()/HasUserValue() is tested before Equals(). This isn't strictly
necessary, but it reads better.

MozReview-Commit-ID: JeGrevDwqKz

--HG--
extra : rebase_source : 575758e11d7e66226fe196f92f2dd355b1444d1d
2017-11-18 07:19:42 +11:00
Nicholas Nethercote 3fe59e0566 Bug 1418156 - Remove unnecessary forward declaration of pref_SetPref(). r=glandium
MozReview-Commit-ID: KQHfpAKEEgt

--HG--
extra : rebase_source : 3c622413c72024889214c8ee5ff994fb6a0ad390
2017-11-17 16:29:18 +11:00
Nicholas Nethercote 9f8d2c21ff Bug 1418156 - Move pref_SetValue() into PrefHashEntry. r=glandium
MozReview-Commit-ID: LE7vQ8Iz5Dg

--HG--
extra : rebase_source : 563e2507cb1f4d74ec2f28f4644b4249605e3c81
2017-11-17 16:27:10 +11:00
Nicholas Nethercote 98e2a16031 Bug 1418156 - Rename PrefHashEntry::mKey as mName, and make it private. r=glandium
This requires adding a constructor, which is used in a placement new.

MozReview-Commit-ID: 3v6843D5DMu

--HG--
extra : rebase_source : 780902ae8e761bdf1141f24bf5594ce910ea32b4
2017-11-17 15:57:08 +11:00
Nicholas Nethercote 20dcc4a828 Bug 1418156 - Move pref_EntryHasAdvisablySizedValues() into PrefHashEntry. r=glandium
MozReview-Commit-ID: 4p0KnaOOi2j

--HG--
extra : rebase_source : 4f1513ca77efa42a44d818e9f3a2b44af0e15199
2017-11-17 15:29:30 +11:00
Nicholas Nethercote 32b0c9bb22 Bug 1418156 - Move pref_GetPrefFromEntry into PrefHashEntry. r=glandium
And rename it as ToSetting(). This requires also moving
AssignPrefValueToDomPrefValue into PrefHashEntry.

MozReview-Commit-ID: 8ntNZJt9rhv

--HG--
extra : rebase_source : 5dd5a2c570b2ceefb506b4051c414b06d27a95f2
2017-11-17 15:29:30 +11:00
Nicholas Nethercote 645fe6b3a0 Bug 1418156 - Overhaul GetPrefValueFromEntry. r=glandium
This patch:

- partially inlines GetPrefValueFromEntry() at its two call sites, to avoid
  repeating the kind check;

- renames it as AssignPrefValueToDomPrefValue().

MozReview-Commit-ID: BUBk3ML6h5O

--HG--
extra : rebase_source : eb12adf4af2ee05356af6b2b4f346aa3425ff438
2017-11-17 15:29:29 +11:00
Nicholas Nethercote e7c913bc12 Bug 1418156 - Move the PLDHashTable ops into PrefHashEntry. r=glandium
MozReview-Commit-ID: HJfjz2PzW0I

--HG--
extra : rebase_source : 717a3d5121a33ca01da5c0b5298386f4c8345eae
2017-11-17 15:29:29 +11:00
Nicholas Nethercote cb911105fb Bug 1418156 - Merge PrefTypeFlags into PrefHashEntry. r=glandium
PrefTypeFlags is a class with a lot of smarts (i.e. methods). PrefHashEntry is
a class with little smarts. This is silly, because PrefTypeFlags is essentially
an internal implementation detail of PrefHashEntry.

This patch merges PrefTypeFlags into PrefHashEntry, so that PrefHashEntry has
all the smarts. This means lots of `pref->mPrefFlags.Foo()` calls become
`pref->Foo()`.

The patch also changes the representation of the type and flags within
PrefHashEntry to use bitfields, which avoids the need for a Flags type and is
much simpler than the old approach.

MozReview-Commit-ID: 4Yt9OtBzh9e

--HG--
extra : rebase_source : 18fc01217aeaee7057b3d9a54b18cae45be5538f
2017-11-17 15:29:14 +11:00
Nicholas Nethercote a0f04ed4e6 Bug 1418156 - Don't zero newly added PrefHashEntrys. r=glandium
They are guaranteed to be zeroed already by PLDHashTable.

MozReview-Commit-ID: LBeGa9ABYc3

--HG--
extra : rebase_source : f767d0d20cfb1c187496be20fff4cce43c768ccd
2017-11-17 13:30:38 +11:00
Nicholas Nethercote 6b354a0077 Bug 1418156 - Remove forward declaration of PrefHashEntry. r=glandium
MozReview-Commit-ID: 1KRWnjp9VW4

--HG--
extra : rebase_source : 8da909d5e92b71399e1d9981d1e255cdecf9bd75
2017-11-17 13:27:00 +11:00
Tooru Fujisawa 5e6c2faca5 Bug 1416252 - Remove conditional catch consumers in modules/libjar/. r=mossop 2017-11-18 22:57:17 +09:00
Michal Novotny 6d87315b29 Bug 1392841 - Enable RCWN on Nightly, r=valentin 2017-11-18 11:31:06 +01:00
Noemi Erli c7026c5a77 Merge mozilla-central to mozilla-inbound. r=merge a=merge CLOSED TREE
--HG--
rename : devtools/client/responsive.html/components/DprSelector.js => devtools/client/responsive.html/components/DevicePixelRatioSelector.js
rename : third_party/python/pyasn1/test/__init__.py => third_party/python/pyasn1/pyasn1/codec/native/__init__.py
rename : third_party/python/pyasn1/test/__init__.py => third_party/python/pyasn1/tests/__init__.py
rename : third_party/python/pyasn1/test/__init__.py => third_party/python/pyasn1/tests/codec/__init__.py
rename : third_party/python/pyasn1/test/__init__.py => third_party/python/pyasn1/tests/codec/ber/__init__.py
rename : third_party/python/pyasn1/test/__init__.py => third_party/python/pyasn1/tests/codec/cer/__init__.py
rename : third_party/python/pyasn1/test/__init__.py => third_party/python/pyasn1/tests/codec/der/__init__.py
rename : third_party/python/pyasn1/test/__init__.py => third_party/python/pyasn1/tests/codec/native/__init__.py
rename : third_party/python/pyasn1/test/__init__.py => third_party/python/pyasn1/tests/compat/__init__.py
rename : third_party/python/pyasn1/test/__init__.py => third_party/python/pyasn1/tests/type/__init__.py
extra : rebase_source : d9b683c2142cb0edada8891c1c3539fd2f3593ee
2017-11-18 00:33:17 +02:00
Ryan Hunt ab27b063e3 Remove `layers.omtp.force-sync` preference (bug 1416941, r=dvander)
This commit removes the `layers.omtp.force-sync` preference and replaces
it with a preprocessor define that is commented out. This commit also
changes the behavior of force-sync so that it also does synchronization
with CompositorBridgeChild like normal OMTP. This simplifies the code
and makes using a preprocessor define easier.

MozReview-Commit-ID: 6RfuFTFBdMh

--HG--
extra : rebase_source : 0778a3087324b9e87f44587efbb49c71edf47f23
2017-11-14 14:05:55 -05:00
Nicholas Nethercote a7f9fffa3f Bug 1417806 - Name variables more consistently. r=glandium
Specifically:

- PrefHashEntry --> `pref`
- PrefName      --> `prefName`
- PrefSetting   --> `setting`

MozReview-Commit-ID: CSse2jVro3E

--HG--
extra : rebase_source : 3f31b4d9ecf4158fa6cf21e184678a0b38d79737
2017-11-16 18:59:27 +11:00
Nicholas Nethercote 8184466bdb Bug 1417806 - Rename m{User,Default}Pref as m{User,Default}Value.
Because they are the pref's values, not the pref itself.

MozReview-Commit-ID: 1N4Fh2TF8lL

--HG--
extra : rebase_source : 5645a0e5897fc825e6bbc6da2c6d40fb852a9efb
2017-11-16 18:48:08 +11:00
Nicholas Nethercote a5034e04df Bug 1417806 - Avoid "sticky default" terminology. r=glandium
It's the user value that's sticky, not the default value. Though we typically
talk about the entire pref being sticky, so that's what this patch does.

MozReview-Commit-ID: 8THuRCTZ7uw

--HG--
extra : rebase_source : 8164f71065bcae1376c3e2bf241593c62c90b702
2017-11-16 16:16:03 +11:00
Nicholas Nethercote 248335166c Bug 1417806 - Rename kPrefSticky as kStickyPref. r=glandium
This matches the corresponding string "sticky_pref".

MozReview-Commit-ID: 8bqM5x8bIoG

--HG--
extra : rebase_source : 20b5b8b8df8b936a22849766552d11f659ffc84b
2017-11-16 18:45:53 +11:00
Nicholas Nethercote b60b81ec31 Bug 1417806 - Rename some things in PrefTypeFlags. r=glandium
So that "default value" and "user value" are used consistently.

MozReview-Commit-ID: Hmfct8STu33

--HG--
extra : rebase_source : 3f27992630e6e834ce470693a15d8f6b99706cfe
2017-11-16 16:02:07 +11:00
Nicholas Nethercote 367a4a65a2 Bug 1417806 - Move BoolVarChanged() next to AddBoolVarCache(). r=glandium
This makes it like the VarCache functions for int, uint, atomic unit, and float.

MozReview-Commit-ID: 4CRuvAjqGCj

--HG--
extra : rebase_source : 5780456f1f0cf18f98ab3b42efcaec514324a171
2017-11-16 16:02:07 +11:00
Nicholas Nethercote 0736ef385a Bug 1417806 - Add a comment about gCacheData. r=glandium
MozReview-Commit-ID: 1oVYUMtobRF

--HG--
extra : rebase_source : 3c7b35684b94b8aeabb73e0eb278a51ef8a4697b
2017-11-16 18:39:00 +11:00
Nicholas Nethercote b547f1b959 Bug 1417806 - Reduce gPrefNameArena's alignment to 1. r=glandium.
Because it holds 8-bit strings, which only need 1 byte alignment.

For the profile on my Linux box, in every process this reduces the size of the
arena by 1 chunk, from 120 KiB to 112 KiB.

MozReview-Commit-ID: 8ozrLIq5ZZ4

--HG--
extra : rebase_source : 1f7d337875d5f554772bec6395e7f4241900a26c
2017-11-16 16:02:07 +11:00
Nicholas Nethercote 7abaa53d96 Bug 1417806 - Overhaul gWatchingPref et al. r=glandium
This patch renames it as gInstallingCallback, adds a comment, and reduces the
scope of the AUTO_INSTALLING_CALLBACK() objects to the minimum.

MozReview-Commit-ID: EGfnBPVFtmw

--HG--
extra : rebase_source : 9feafbb4c92c6b9dbe37466fefb777a8638b1c6e
2017-11-16 16:02:07 +11:00
Nicholas Nethercote ba94f2d107 Bug 1417746 - Overhaul libpref's memory reporter. r=glandium
This splits the measurements into several buckets, like so:

> 718,528 B (00.40%) -- preferences
> ├──262,176 B (00.14%) ── hash-table
> ├──181,952 B (00.10%) ── callbacks
> ├──122,880 B (00.07%) ── pref-name-arena
> ├───91,872 B (00.05%) ── root-branches
> ├───38,296 B (00.02%) ── string-values
> ├───21,272 B (00.01%) ── cache-data
> └───────80 B (00.00%) ── misc

The patch also measures some things that were previously overlooked.

- String pref values. (The old code had a comment that incorrectly claimed they
  were allocated out of an arena.)

- The PrefCallback objects pointed to by entries in nsPrefBranch::mObservers.

And it makes the code more like typical reporters.

- It removes the "AndOtherStuff" from Preferences' measuring method, and
  measuring those global structures in
  PreferenceServiceReporter::CollectReports().

- It adds `const` where appropriate.

MozReview-Commit-ID: dyNg7ldQdh
2017-11-16 15:55:58 +11:00
Brindusan Cristian 89030a420a Merge mozilla-central to inbound r=merge a=merge on a CLOSED TREE 2017-11-16 00:51:41 +02:00
Nicholas Nethercote 9723f0f68e Bug 1416638 - Inline and remove PREF_Get*(). r=glandium.
MozReview-Commit-ID: CiCKpihJJJF

--HG--
extra : rebase_source : 82b512171925a44a79e65a8c08a278244a12c6e5
2017-11-14 19:06:02 +11:00
Nicholas Nethercote 5403410705 Bug 1416638 - Inline and remove PREF_Set*(). r=glandium.
This patch also adds some Set*InAnyProcess() methods, and makes nsPrefBranch a
friend of Preferences so it can call those methods.

And it moves the thin Set*() wrapper functions to Preferences.h, alongside
SetUint().

MozReview-Commit-ID: 88HhmcTFZNc

--HG--
extra : rebase_source : 88a854d52afce86d93008a6e1a4b5f32bcf24a1a
2017-11-14 19:06:02 +11:00
Nicholas Nethercote 5dc91f21fc Bug 1416638 - Rename SetCharPrefInternal() as SetCharPrefNoLengthCheck(). r=glandium.
Because it's clearer.

MozReview-Commit-ID: 4zfDnsaPQSK

--HG--
extra : rebase_source : 4f958130f46dc32b291f92d3b387d80064b5ac12
2017-11-14 19:06:02 +11:00
Nicholas Nethercote 22cbf71329 Bug 1416638 - Move a couple of functions into Preferences. r=glandium.
This will allow other functions to be moved into Preferences and be marked as
`private` in subsequent patches.

The patch also renames SetPrefValue() as SetValueFromDom(), because that's a
clearer name.

MozReview-Commit-ID: CB1xmPSmac6

--HG--
extra : rebase_source : 0d597a800f2295c04af26d5abaac4aea0e0d3373
2017-11-14 19:06:02 +11:00
Nicholas Nethercote 1e78ff66af Bug 1416638 - Use `private` instead of `protected` in Preferences. r=glandium.
It's a `final` class, so there's no need for `protected`.

MozReview-Commit-ID: 7n4DLpXo0el

--HG--
extra : rebase_source : b2d3eb9cf0e912689efa29d2255cc018fd8a7c64
2017-11-14 19:06:02 +11:00
Nicholas Nethercote 502d16e87f Bug 1416638 - Change nsPrefBranch mIsDefault to a PrefValueKind. r=glandium.
This makes the next patches nicer.

MozReview-Commit-ID: 8EoAkmmMavY

--HG--
extra : rebase_source : 3bb751c8e1353f7e3814257cf41f2f8de4ed3ed5
2017-11-14 19:06:02 +11:00
Nicholas Nethercote f553c82da0 Bug 1416638 - Add a PrefValueKind arg to Preferences::Get*(), and remove Preferences::GetDefault*(). r=glandium
MozReview-Commit-ID: LgnZAf1pAl1

--HG--
extra : rebase_source : 8ba7c4bfb331f70fd41c2ae1d428e4cb9058d069
2017-11-14 19:06:01 +11:00
Nicholas Nethercote 6d0e1df407 Bug 1416638 - Add a PrefValueKind arg to Preferences::Set*(). r=glandium
This is unused for now, but will be necessary for nsPrefBranch::Set*() to call
into Preferences::Set*().

The patch also renames some arguments from aPref to aPrefName, because that's a
better name.

MozReview-Commit-ID: 2OPB7CHOgpw

--HG--
extra : rebase_source : 232b7be3c33d185f13ce86d91feea3b55069a4e6
2017-11-13 09:20:45 +11:00
Nicholas Nethercote 51c0610d9a Bug 1416638 - Introduce PrefValueKind. r=glandium
This is nicer than a bool for tracking the Default vs. User distinction, and it
replaces the Preferences.cpp-only WhichValue type.

MozReview-Commit-ID: 8CrdDN2vBJQ

--HG--
extra : rebase_source : 0d49148c73e5aeb0a355a6d4189232c89295d2a7
2017-11-13 09:20:42 +11:00
Martin Stransky cbdb92526c Bug 1415481 - make widget.allow-client-side-decoration visible, r=dao,glandium
MozReview-Commit-ID: 1FWAfjqxztV

--HG--
extra : rebase_source : e892cf831ce70834d5cbe405f0a47dedbb1b5682
2017-11-08 10:39:59 +01:00
Valentin Gosu a77a5282f4 Bug 1416343 - Mark URI interfaces as [builtinclass] r=bagder
MozReview-Commit-ID: 4T0uCkHP1a6

--HG--
extra : rebase_source : fa720f35df16985bcd929a98aeeaf9fbc759c1e6
2017-11-15 13:34:23 +01:00
shindli a9fa53057b Backed out 3 changesets (bug 1415481) for failing bcs in browser/base/content/test/general/browser_tabbar_big_widgets.js r=backout on a CLOSED TREE
Backed out changeset a00865a5bd43 (bug 1415481)
Backed out changeset 4d8dc538cb2d (bug 1415481)
Backed out changeset 53463889cdb6 (bug 1415481)
2017-11-15 14:00:54 +02:00
Margareta Eliza Balazs 3edf7872fb Backed out changeset cfe4b1e6be9b (bug 1416343) for ESlint failing in modules/test/browser/browser_SitePermissions_tab_urls.js:38:14 r=backout on a CLOSED TREE 2017-11-15 13:46:07 +02:00
Martin Stransky e1887c7a6d Bug 1415481 - make widget.allow-client-side-decoration visible, r=dao,glandium
MozReview-Commit-ID: 1FWAfjqxztV

--HG--
extra : rebase_source : df68b54f709e373c52c917cb24e9c70185be4a59
2017-11-08 10:39:59 +01:00
Valentin Gosu ba207f8c8c Bug 1416343 - Mark URI interfaces as [builtinclass] r=bagder
MozReview-Commit-ID: 4T0uCkHP1a6

--HG--
extra : rebase_source : 89c283360bc0b30aad34641b4cdce8f5c49615b3
2017-11-13 20:18:46 +01:00
Noemi Erli fe054d4e08 Backed out changeset c2bf7ca0839c (bug 1382427) for failing reftests r=backout on a CLOSED TREE 2017-11-15 14:22:43 +02:00
Jonathan Watt 61b75cd481 Bug 1382427 - Support running reftests with retained display lists on for the test files only. r=mattwoodrow
MozReview-Commit-ID: 4n2kvXU2RYo
2017-10-30 18:09:41 +00:00
Rob Wu 5b7fed7163 Bug 1418287 - Add preference to disable the system notification service r=baku
MozReview-Commit-ID: 5D1yJ8o0BgA

--HG--
extra : rebase_source : d4972854e5e8fab117dd6cdae82c2cebca002e5d
2017-11-17 13:29:15 +01:00
Tom Ritter d38adaf1d5 Bug 1411742 Remove all references to media.getusermedia.screensharing.allowed_domains as we have removed all uses of it in the code r=jib
MozReview-Commit-ID: 7lziGDZZ3E4

--HG--
extra : rebase_source : 16e48a6f57fe4c8a05f386db68de01e42ae1e0bb
2017-10-26 11:46:37 -05:00
Tom Ritter 5e81122570 Bug 1411742 Remove the pref media.getusermedia.playout_delay and the field as they are not used anywhere r=jib
MozReview-Commit-ID: Gjbeg0zWtJ1

--HG--
extra : rebase_source : 55ad0e8f5e8ec45e7ed365ea516da9ecbc498253
2017-11-16 21:57:07 -06:00
Tom Ritter 3b8bd8d918 Bug 1411742 Remove the media.navigator.video.default_minfps pref and all uses of it as the field is never actually used r=jib
MozReview-Commit-ID: 3WsdL18BF75

--HG--
extra : rebase_source : 9c0016e5045f50876c8db13930408b54fb8e1ac4
2017-10-26 11:37:16 -05:00
Tim Huang f4abe5782a Bug 1417741 - Add support of Atmoic<> for Preferences::Add*VarCache(). r=baku,njn
MozReview-Commit-ID: 9aeLvgWdZxy

--HG--
extra : rebase_source : b6130610ad8f80257022cb6e103addfe58b96af2
2017-11-16 11:02:50 +08:00
Valentin Gosu d2d8524673 Bug 1415205 - Add nsIURIMutator impls for all objects implementing nsIURI r=bagder
This also changes URIUtils.cpp:DeserializeURI() to use the mutator to instantiate new URIs, instead of using their default constructor.

MozReview-Commit-ID: JQOvIquuQAP

--HG--
extra : rebase_source : e146624c5ae423f7f69a738aaaafaa55dd0940d9
2017-11-20 17:11:30 +01:00
Timothy Guan-tin Chien a2128b4cba Bug 1419277 - Follow-up, remove old & duplicate fonts from macOS default r=m_kato
Given that we only support macOS >= 10.9 nowadays, we don't need
to consider fallbacks on old systems anymore.

Removing LiHei Pro & LiSong Pro because they are old.
Removing STSong & STHeiti because they are simply old font names aliased to new Songti/Heiti SC.

MozReview-Commit-ID: BNYBjXCpQOr

--HG--
extra : rebase_source : 4c19607d183ac4033c8bdc05bd05b92c906a5e9d
2017-11-21 13:43:36 +08:00
Timothy Guan-tin Chien f093ba24c0 Bug 1419277 - Set Songti TC/SC as default zh-{CN/HK/TW} font in release r=m_kato
MozReview-Commit-ID: 4TUNSFK0Fu9

--HG--
extra : rebase_source : c615125ba0e773c46f584c7a9c07e7344b33a46b
2017-11-21 13:39:00 +08:00
Nicholas Nethercote 20ffb0878f Bug 1416622 - Tighten up libpref's process checking. r=glandium
libpref only allows pref modifications in the parent process. This patch
tightens up the checking, which is a bit inconsistent.

- It removes ENSURE_MAIN_PROCESS_WITH_WARNING, which does NS_WARNING on
  failure, and replaces its uses with ENSURE_MAIN_PROCESS, which does NS_ERROR
  on failure. This required adding an XRE_IsParentProcess() check to one place
  in editor/.

- It converts XRE_IsContentProcess() tests to !XRE_IsParentProcess(), because
  we now have multiple kinds of non-parent process.

- It uses ENSURE_MAIN_PROCESS to replace other checking code in a few places.

- It improves a comment in HandleDirty().

MozReview-Commit-ID: D8znQWH7ery

--HG--
extra : rebase_source : ea0fc095b31525bde82a1be217923512d030b76d
2017-11-13 09:19:55 +11:00
Robin Grenet 34508b32f6 Bug 1360278 - Add preference to trigger context menu on mouse up for GTK+ and macOS, r=mstange,smaug
MozReview-Commit-ID: Bg60bD8jIg6

--HG--
extra : rebase_source : cc8bd5796096f49ad4fdab81885a426afd6117e4
2017-11-16 13:35:58 +01:00
Nicholas Nethercote da4a6801da Bug 1416613 - Replace use of std::string and std::vector with Mozilla equivalents. r=glandium
MozReview-Commit-ID: 1Zcuespd4sn
2017-11-14 19:06:01 +11:00
Nicholas Nethercote 6750b1fde6 Bug 1416613 - Make Preferences::InitStaticMembers() slightly faster. r=glandium
InitStaticMembers() is the hottest function within libpref, because it is
called from all the getters and setters. This patch tweaks it so the common
case is handled with a single comparison, instead of two. This is valid because
sPreferences is nulled at the same time that sShutdown is set.

The patch also tweaks some other conditions to take advantage of this fact.

MozReview-Commit-ID: C74fLWOw7bE
2017-11-13 09:19:49 +11:00
Nicholas Nethercote 994d5726c4 Bug 1416613 - Improve comments about pref IPC. r=glandium
These would have saved me some time last week when I was figuring out how this
stuff works.

MozReview-Commit-ID: DUhxGDht6xT
2017-11-13 09:19:43 +11:00
Nicholas Nethercote b15805ab71 Bug 1414759 - Replace some unnecessary media prefs with code constants. r=cpearce
Specifically:
- media.decoder.limit
- media.num-decode-threads
- media.resampling.rate
- media.wmf.decoder.thread-count
- media.cache.resource-index

--HG--
extra : rebase_source : a46aa7078b98b4731ec96b66398c51aa6cb42d27
2017-11-13 17:16:06 +11:00
Christoph Kerschbaumer 9fe7e4ca2f Bug 1401895 - Block top-level navigations to data: URIs. r=bz 2017-11-13 21:22:59 +01:00
Matt Woodrow b6997a1778 Bug 1416055 - Enable retained display lists for Nightly builds. r=miko 2017-11-10 21:27:39 +13:00
Ethan Lin beaea27dc3 Bug 1415989 - Do not use 'ShouldUseAdvancedLayer' for button type display items. r=jrmuizel
MozReview-Commit-ID: 83qOTfTRUY0

--HG--
extra : rebase_source : 560f285f3092cd75d14d27cae4adcb8e9dca0e3a
2017-11-10 11:41:15 +08:00
Ryan VanderMeulen 3c232c4d24 Backed out changeset 2ed0ff57330d (bug 1411467) for test_interfaces bustage on Beta. 2017-11-10 17:31:03 -05:00
Ryan VanderMeulen b16410f51c Merge inbound to m-c. a=merge 2017-11-10 16:13:15 -05:00
Paul Adenot d712cb2e50 Bug 1221580 - Followup, don't enable full-duplex on unknown platforms.
MozReview-Commit-ID: 7yJmup9a35A
2017-11-10 15:29:49 +01:00
Paul Adenot 218f7ce203 Bug 1221580 - Use duplex when sndio is enabled. r=gaston
MozReview-Commit-ID: E5EhoakY6EM

--HG--
extra : rebase_source : 7b8ac5a9c01d66a0bcf6bd1a095455df0af33aa9
2017-11-03 16:12:35 +01:00
Noemi Erli 48988ddf27 Backed out changeset 944b91410e49 (bug 1416055) for failing in bc browser/components/originattributes/test/browser/browser_broadcastChannel.js r=backout on a CLOSED TREE
--HG--
extra : amend_source : f02661b0cda7f5cd030e916e1b77ff8ee3e6ce9b
2017-11-10 12:35:24 +02:00
Matt Woodrow 01a1a65f66 Bug 1416055 - Enable retained display lists for Nightly builds. r=miko 2017-11-10 21:27:39 +13:00
Nicholas Nethercote 9872074b14 Bug 1415799 - Rename pref_HashPref() as pref_SetPref(). r=glandium.
Because it sets the pref.

MozReview-Commit-ID: IlEVRWKU94X

--HG--
extra : rebase_source : 76847f4b32c4c45253e74ffccc251ccb796ad6a4
2017-11-09 18:00:42 +11:00
Nicholas Nethercote 680e88e4d4 Bug 1415799 - Inline and remove Preferences::Init(). r=glandium
It has a single call site.

MozReview-Commit-ID: A96MRRa3W5N

--HG--
extra : rebase_source : 243cecf21ed0ad9c0850a5efb8217c5bb3770d25
2017-11-09 17:59:51 +11:00
Nicholas Nethercote c09c797058 Bug 1415799 - Remove PREF_ClearUserPref() forward declaration. r=glandium
It's not needed.

MozReview-Commit-ID: AqKeBuxZJh3

--HG--
extra : rebase_source : e7ec4a2ef428ff84cd8cedf724e7f284a202bfa8
2017-11-09 17:59:12 +11:00
Nicholas Nethercote 9d9aef2c32 Bug 1415799 - Inline and remove PREF_Init() and PREF_CleanupPrefs(). r=glandium
They both have two callsites, but in one of those they appear together, where
much of the code can be replaced with a ClearAndPrepareForLength() call.

MozReview-Commit-ID: 1A771gsHWan

--HG--
extra : rebase_source : c6f26b9a825155c7b7c885540cf9f34f8b8eace7
2017-11-09 17:58:35 +11:00
Nicholas Nethercote 7421d3a552 Bug 1415799 - Inline and remove PREF_Cleanup. r=glandium
It has a single call site.

MozReview-Commit-ID: DoE5BlEA9a6

--HG--
extra : rebase_source : 590aad6dc0c0dbf84c05e8765bf0964fdd8c2d13
2017-11-09 17:56:29 +11:00
Nicholas Nethercote 8b37495d1c Bug 1415799 - Inline and remove pref_SizeOfPrivateData(). r=glandium
It has a single call site.

MozReview-Commit-ID: DhpO2vyeC61

--HG--
extra : rebase_source : eef9ba0f98748c2478316734c4860912008464a2
2017-11-09 17:54:32 +11:00
Stone Shih b4b1ee6620 Bug 1411467 - Keeping PointerEvent enabled in early beta. r=smaug.
MozReview-Commit-ID: 9eD5bs2RwkC
2017-11-06 17:43:59 +08:00
Nicholas Nethercote f4dd5e2636 Bug 1414096 (attempt 2) - Remove support for nsISupportsString values in nsPrefBranch::{get,set}ComplexValue(). r=florian.
Bug 1345294 introduced nsPrefBranch::{get,set}StringPref(), which allowed the
getting of utf8 strings from prefs, which previously required using
nsISupportsString with {get,set}ComplexValue. That bug also converted most
uses.

This patch finishes the job.

- It removes the nsISupportsString support.

- It converts existing code that relied on the nsISupportsString.

- It removes the lint that was set up to detect such uses of nsISupportsString.

--HG--
extra : rebase_source : b885ee784704819e181430200af5ef762e269d14
2017-11-10 09:07:48 +11:00
David Teller a2b2ad337a Bug 1108587 - Extending the grace period of AsyncShutdown and the nsTerminator for ASAN builds;r=gsvelto
Bug 1108587 seems to suggest that the grace period for nsTerminator is
too short for ASAN builds, which take much longer to shutdown. This
patch changes the grace period from 1 minute to 3 minutes, hoping that
this will be sufficient. Somewhere along the way, we also extend the
duration of AsyncShutdown, because that's the simplest way to do both
at once.

MozReview-Commit-ID: 28eWO5m6Wh3

--HG--
extra : rebase_source : eae9db952d5395f986781f3cbd23507b715fa8c9
2017-11-09 16:21:34 +01:00
Nicholas Nethercote c40b04cecd Bug 1415418 - Simplify GetUint(). r=glandium.
This makes it just like GetDefaultUint().

MozReview-Commit-ID: CSoLpLdstAv

--HG--
extra : rebase_source : 5ba8cb897c46197b7ef52c6c27b45ad223bc3d41
2017-11-08 16:45:42 +11:00
Nicholas Nethercote 882ae209b6 Bug 1415418 - Reorder Preferences.h. r=glandium.
The various getters and setters are in a confusing order. This patch puts them
in a more sensible order. It also streamlines the comments, which were
generally low-value and in some cases incorrect.

MozReview-Commit-ID: 3ngzZDSt0JI

--HG--
extra : rebase_source : 8a5a66f65621889483d2df9f4487194172f70804
2017-11-08 16:45:38 +11:00
Gijs Kruitbosch 01809dc8fa Bug 1417093 - remove symlink support from our nsZipArchive extract implementation because it's unused and has issues, r=mossop
MozReview-Commit-ID: FZ7hy3ATw1i

--HG--
extra : rebase_source : 531b46c24db1791a0dd8ca4afd4021cb2ce4f126
2017-11-21 16:25:46 +00:00
Coroiu Cristina 8f9440611e Merge mozilla-central to autoland. r=merge a=merge on a CLOSED TREE 2017-11-22 01:46:49 +02:00
Martin Stransky f36cf21409 Bug 1418829 - remove widget.allow-client-side-decoration preference, r=jhorak
widget.allow-client-side-decoration is no longer used, titlebar rendering is controled by browser.tabs.drawInTitlebar only.

MozReview-Commit-ID: LHdBio4Gfry

--HG--
extra : rebase_source : 7cdd788978d0209702d5212ac7be4daa1c616393
2017-11-20 14:27:19 +01:00
Alastor Wu 5acb978a09 Bug 1382574 - part1 : create new class AutoplayPolicy to handle autoplay logic. r=jwwang
AutoplayPolicy is used to manage autoplay logic for all kinds of media,
including MediaElement, Web Audio and Web Speech.

MozReview-Commit-ID: R1TxMkarIw

--HG--
extra : rebase_source : 8c608a1d12c8e205391a91f22e1532bc4f2c8f16
2017-11-22 00:33:16 +08:00
Sebastian Hengst a353221537 merge mozilla-inbound to mozilla-central. r=merge a=merge 2017-11-09 00:00:16 +02:00
Narcis Beleuzu 57d9eb5fb1 Backed out 1 changesets (bug 1414096) for dt1 failures "devtools/client/commandline/test/browser_cmd_pref3.js" r=backout on a CLOSED TREE
Backed out changeset e843de356b7e (bug 1414096)
2017-11-08 18:04:01 +02:00
Valentin Gosu 132162d150 Bug 1415206 - Remove RustURL from Gecko r=bagder
This class isn't being used right now, and MozURL is a much better alternative if interaction with rust URLs is required.

MozReview-Commit-ID: ADdYRrrTnr6

--HG--
extra : rebase_source : b36aa26c20e7daaadab1f3360bab0ed4681eb7f8
2017-11-07 17:11:08 +01:00
Nicholas Nethercote 79aa95fa24 Bug 1414150 - Remove the "idle_queue.*" prefs. r=farre.
There's no good reason why these can't be code constants.

Especially given that, due to a bug, changes to the
"idle_queue.{min,long}_period" constants were not being passed onto the C++
code!

Here's why: those two prefs were specified as integers in all.js. But we used
AddFloatVarCache() to set up the reading of those prefs. libpref fakes floats
by storing them as strings and then converting them to floats when they are
read.

Which means that AddFloatVarCache() used to fail to get the value from all.js
-- because there's a type mismatch, int vs. string -- and instead use the
fallback default. That value is the same as the one in all.js, which is lucky.
But if someone changed the value in about:config to 100 (an integer), a similar
failure would have occured and the value used by the C++ code wouldn't be
updated!

Also note that idle_queue.max_timer_thread_bound did not have a value in
all.js.

What a mess!

--HG--
extra : rebase_source : 86f8fa905163803eb95007609c029e18c2c4f586
2017-11-08 07:54:16 +11:00
Nicholas Nethercote 1455a7fc09 Bug 1414150 - Remove the "memory.low_*" prefs. r=erahm,dmajor.
There's no good reason why these should't just be constants. The patch also
appends "MiB" to some of the C++ values to make their meaning clearer.

This patch fixes one outright bug, and one inconsistency.

The bug is due to a prefname mismatch:

- ContentPrefs.cpp and AvailableMemoryTracker.cpp use
  "memory.low_virtual_mem_threshold_mb".

- all.js uses "memory.low_virtual_memory_threshold_mb".

Which means that "memory.low_virtual_memory_threshold_mb" showed up in
about:config, but if you changed it nothing would happen because the callback
listened for changes to to "memory.low_virtual_mem_threshold_mb"!

Now for the inconsistency. The above means we actually use a value of 256 for
the virtual memory threshold, even though all.js says 128. But we *do* use a
value of 128 for the commit space threshold, because that's what all.js says
and that prefname is used correctly everywhere. The patch changes the commit
space threshold to 256 for consistency with the virtual memory threshold.

What a mess!

--HG--
extra : rebase_source : d3842c732efa9ab0e90eeb6a4f341aeb289589ed
2017-11-08 07:49:46 +11:00
Nicholas Nethercote 2513a08f85 Bug 1414150 - Remove the "memory.free_dirty_pages" pref. r=glandium.
This was originally added for b2g, where the pref had a different value.
Bug 1398033 enabled it everywhere.

--HG--
extra : rebase_source : c8bb03190cd00d25e6c2ec62a99ed8e911e08197
2017-11-07 19:34:18 +11:00
Nicholas Nethercote 49b155a761 Bug 1414188 - Remove ValueObserver. r=glandium.
libpref has callbacks. You can register a callback function against a
particular pref (or pref prefix), and it'll be called when any matching pref
changes.

This is implemented in two layers. The lower layer is the list of CallbackNode
objects, pointed to by gFirstCallback.

The upper layer involves gObserverTable, which is a hash table of ValueObserver
objects. It is used for callbacks registered via
Preferences::RegisterCallback() and Preferences::Add*VarCache(), but not for
observers registered with Preferences::Add{Weak,Strong}Observer(). If multiple
callbacks with identical prefnames, callback functions and MatchKinds occur,
they are commoned up into a single ValueObserver, which is then wrapped by a
single CallbackNode. (The callbacks within a single ValueObserver can have
different void* aClosure args; ValueObserver keeps those in an nsTArray.)

Note also that gObserverTable is very inelegant, with duplication of data
between the keys and the values due it being a
nsRefPtrHashtable<ValueObserverHashKey, ValueObserver> and ValueObserver being
a subclass of ValueObserverHashKey(!)

This extra layer might make sense if there were a lot of commoning up
happening, but there's not. Across all process kinds there is an average of
between 1.2 and 1.7 closures per ValueObserver. The vast majority have 1
closure, and there are a handful that have multiple; the highest number I've
seen is 71.

(Note that this two-layer design probably seemed more natural back when libpref
was spread across multiple files.)

This patch removes the ValueObserver layer. The only tricky part is that there
is a notion of a MatchKind -- ExactMatch or PrefixMatch -- which exists in the
ValueObserverLayer but not in the CallbackNode layer. So the patch moves the
MatchKind into the CallbackNode layer, which is straightforward.

On Linux64 this reduces memory usage by about 40 KiB in the parent process and
about 30 KiB in each content processes.

The performance implications are minor.

- The list of CallbackNodes is a bit longer, so when a pref is changed we must
  check more nodes. But we avoid possibly doing prefname matching twice.

- Callback registration is much faster, just a simple list prepend, without any
  hash table insertion required.

- Callback unregistration is probably not much different. There is a longer
  list to traverse, but no hash table removal.

- Pref lookup is by far the hottest libpref operation, and it's unchanged.

For perf to be genuinely affected would require (a) a *lot* more
almost-duplicate callbacks that would have been commoned up, and (b) frequent
changing of the pref those callbacks are observing. This seems highly unlikely.

MozReview-Commit-ID: 6xo4xmytOf3

--HG--
extra : rebase_source : cf9884a8a40b2cc3b00ab165ae5ab4ec3383f72d
2017-11-02 20:38:34 +11:00
Nicholas Nethercote 8b3d03c666 Bug 1414096 - Remove support for nsISupportsString values in nsPrefBranch::{get,set}ComplexValue(). r=florian.
Bug 1345294 introduced nsPrefBranch::{get,set}StringPref(), which allowed the
getting of utf8 strings from prefs, which previously required using
nsISupportsString with {get,set}ComplexValue. That bug also converted most
uses.

This patch finishes the job.

- It removes the nsISupportsString support.

- It converts existing code that relied on the nsISupportsString.

- It removes the lint that was set up to detect such uses of nsISupportsString.

--HG--
extra : rebase_source : fb7af066adfa0491a79fae6282a62b08661553c8
2017-10-31 16:34:35 +11:00
Jonathan Watt 0fddabe8f0 Bug 1411552 - Improve the warning about attempting to overwrite prefs with a pref of the wrong type. r=njn
MozReview-Commit-ID: AAlimIWoOgQ
2017-10-11 19:10:43 +01:00
Jeff Gilbert 573afa08c2 Bug 1414977 - Allow webgl.force-index-validation:-1 to disable index validation for testing. - r=daoshengmu
MozReview-Commit-ID: Drw9LsIo1Qt
2017-11-06 19:46:37 -08:00
Nicholas Nethercote ee320f219e Bug 1413811 (part 3) - Rename RegisterPriorityCallback(). r=glandium.
MozReview-Commit-ID: 5Ov1cHgfB5Y

--HG--
extra : rebase_source : 767ae8c0390f68555e334945cb5479479a52e1ef
2017-11-02 17:20:36 +11:00
Nicholas Nethercote d8ca9e91d7 Bug 1413811 (part 2) - Factor out similarities between RegisterPriorityCallback() and Preferences::RegisterCallback(). r=glandium.
MozReview-Commit-ID: 8K3RNjZTSc3

--HG--
extra : rebase_source : 1bd0aacc120248f024e2e428af40087bba3f6848
2017-11-02 17:13:47 +11:00
Nicholas Nethercote 90032b0798 Bug 1413811 (part 1) - Avoid PrefCallback for pref callbacks registered with Preferences::RegisterCallback(). r=glandium.
Pref callbacks registered via Preferences::Add*VarCache() are wrapped in a
ValueObserver -- which groups all callback requests that have the same prefname
and callback function -- and the ValueObserver is put into gObserverTable. This
is reasonable.

Observers registered via nsPrefBranch::Add{Weak,Strong}Observer() are wrapped
in a PrefCallback, and the PrefCallback is put into sRootBranch->mObservers.
This is also reasonable.

Pref callbacks registered via Preferences::RegisterCallback() are conceptually
similar to those registered via Preferences::Add*VarCache(). However, they are
implemented by using *both* of the above mechanisms: they are wrapped in a
ValueObserver which is put into gObserverTable, *and* that ValueObserver is then
wrapped in a PrefCallback which is put into sRootBranch->mObservers.

Using both mechanisms isn't necessary, so this patch removes the
PrefCallback/mObservers part. This makes Preferences::RegisterCallback() work
in much the same way as Preferences::Add*VarCache().

Specifically:

- Preferences::RegisterCallback() now calls PREF_RegisterCallback() instead of
  Preferences::AddStrongObserver(). This makes it more similar to
  RegisterPriorityCallback().

- Preferences::UnregisterCallback() now explicitly calls
  PREF_UnregisterCallback() instead of Preferences::RemoveObserver (which
  previously happened via ~ValueObserver() when the ValueObserver was removed
  from gObserverTable and its refcount dropped to zerod).

MozReview-Commit-ID: 1tEQNeYrBUU

--HG--
extra : rebase_source : 431a42402397a172d562b81b8d46418503bb8dfe
2017-11-02 17:11:51 +11:00
NARCIS BELEUZU a6cf88a4bf Merge mozilla-central to inbound. r=merge a=merge on CLOSED TREE 2017-11-03 12:22:35 +02:00
NARCIS BELEUZU 2e3654a915 Merge mozilla-inbound to mozilla-central. r=merge a=merge 2017-11-03 12:04:55 +02:00
Sebastian Hengst e9b3a258b8 merge mozilla-central to autoland. r=merge a=merge 2017-11-02 23:15:55 +01:00
Sebastian Hengst 68106833b3 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: xcHQOq7Rbv
2017-11-02 22:59:04 +01:00
Nicolas B. Pierron f955d25394 Bug 1405738 - Enable the JavaScript Start-up Bytecode Cache. r=mrbkap 2017-11-02 16:31:45 +00:00
Nicholas Nethercote 9245fb0232 Bug 1413400 (part 2) - Make Preferences::sPreferences a StaticRefPtr. r=froydnj.
The notable part of this change is Shutdown(). I've made it just null out
sPreferences, contrary to the old comment, which was strange for a couple of
reasons:

- ~Preferences() used to null out sPreference, which is backwards compared to
  how this sort of thing normally works.

- In both the before and after cases, as far as I can tell,
  Preferences::Shutdown() is called but ~Preferences() is never called;
  something keeps the singleton Preferences instance alive until process
  termination.

MozReview-Commit-ID: Ab0ui31rVcI
2017-11-01 13:55:28 +11:00
Nicholas Nethercote 3baceb4b37 Bug 1413400 (part 1) - Move s{,Default}RootBranch into Preferences. r=froydnj.
sRootBranch and sDefaultRootBranch have the same lifetime as sPreferences, so
this patch makes them non-static nsCOMPtr<> members of Preferences.

MozReview-Commit-ID: 1TLhh13ZpBI

--HG--
extra : rebase_source : 9419cd205b9a06f7ae82722a6732e3fc2722473b
2017-11-01 13:41:14 +11:00
Nicholas Nethercote b9c6a1d730 Bug 1413413 (part 2) - Remove support for extensions having their own prefs file. r=glandium,kmag.
It's no longer needed, now that legacy extensions aren't supported.

Pieces removed include the following.

- The "load-extension-default" observer notification.

- The code for reading defaults/preferences/*.js from extensions.

- The unit test for this stuff.

- A crash reporter annotation relating to very long prefs set by add-ons.

- All references to "ExtPrefDL".

MozReview-Commit-ID: KMBoYn3uZ3x

--HG--
extra : rebase_source : 4dc8ffd425c6cdf06806409090c4f9d04a64930b
2017-10-31 16:34:57 +11:00
Nicholas Nethercote 08cb1f38b2 Bug 1413413 (part 1) - Remove unused "@mozilla.org/preferences;1" ID. r=glandium.
MozReview-Commit-ID: 9d1ca2R6fNb

--HG--
extra : rebase_source : a7377b8b242cf07eb7a48cd0cb431b4768792326
2017-10-31 16:34:38 +11:00
Christian Holler 49da770167 Bug 1413696 - Add default prefs for ASan Reporter. r=froydnj
MozReview-Commit-ID: 9a1uLem2UOQ

--HG--
extra : rebase_source : c5ebd17f06221a5045dd864d74bc7365227e4fbf
2017-11-01 22:32:19 +01:00
Jean-Yves Avenard 96d64e1c44 Bug 1392961 - Add preference to make VP9 the preferred video codec. r=jesup
Behaviour is controlled through the media.navigator.video.vp9_preferred preference.

MozReview-Commit-ID: J06ArFYNmTk

--HG--
extra : rebase_source : a25bd4783fde0acf8291ee440745a619d3fa7db8
2017-10-19 15:18:51 +02:00
Andreas Pehrson 46edadb25e Bug 1409727 - Add a mode and pref to disallow frame drops in MediaRecorder. r=SingingTree
MozReview-Commit-ID: CJBJURDn7gB

--HG--
extra : rebase_source : 248e904879dc68fcce7f041b9ebaed82e7aba9ed
2017-10-19 14:38:07 +02:00
Andreas Pehrson 0ed4ac3622 Bug 1409727 - Expose the audio node recording pref to about:config. r=jib
MozReview-Commit-ID: DbPH3umsH9v

--HG--
extra : rebase_source : 0cd5647995ea425dcaaadca5d429e4d2d1d52295
2017-10-19 14:37:13 +02:00
Nicholas Nethercote ede7a0db1d Bug 1413085 - Inline and remove pref_SetPref(). r=glandium.
It has a single call site.

MozReview-Commit-ID: Hdt1KkG2jTV

--HG--
extra : rebase_source : 0b851491f08646fbd4d8a4862601f8cadad02522
2017-11-01 08:59:30 +11:00
Nicholas Nethercote 559a3f06ee Bug 1413085 - Make PREF_Get{CString,Int,Bool}Pref() more uniform. r=glandium.
This patch does the following.

- Reduces nesting and simplifies control flow by handling failure cases
  earlier, and makes all three functions have identical structure.

- Avoids unnecessary temporary local variables, including |rv|.

- Removes low-value comments, including some misleading ones (e.g. "This
  function will perform conversion...").

- PREF_GetCStringValue() previously did not check HasDefaultValue(), unlike the
  other two. It now does.

- PREF_GetCStringValue() now calls SetIsVoid(true) at the start, so that
  aValueOut will be Voided on all failure paths.

MozReview-Commit-ID: 2uCSv76Y8eu

--HG--
extra : rebase_source : 9ca9148ad0a5069bdd3e08aec0038216d27ea092
2017-11-01 08:55:07 +11:00
Sebastian Hengst 2181970726 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-11-01 00:39:58 +01:00
Nicholas Nethercote af33aed804 Bug 1412718 (part 2) - Improve nsPrefBranch::DeleteBranch(). r=glandium.
This patch converts it to use Gecko strings instead of C strings, which makes
it much nicer.

MozReview-Commit-ID: KtRp3vaXwN5

--HG--
extra : rebase_source : c6788cbed5c4b932eb5b4119c407aea538cb1799
2017-11-01 08:28:10 +11:00