Bug 1448077 - move DevTools prefs from libpref/init/all.js to devtools/shared;r=jryans

See RFC https://github.com/devtools-html/rfcs/issues/43

MozReview-Commit-ID: 8YMWCFsJM7A

--HG--
extra : rebase_source : ecfaa71a305fd8031ff49021465001cce943fa90
This commit is contained in:
Julian Descottes 2018-04-06 12:22:53 +02:00
parent e881d80fab
commit f532155f8c
8 changed files with 101 additions and 80 deletions

View file

@ -153,6 +153,7 @@ devtools/client/debugger/new/**
# Ignore devtools preferences files # Ignore devtools preferences files
devtools/client/preferences/** devtools/client/preferences/**
devtools/shared/preferences/**
devtools/startup/preferences/devtools-startup.js devtools/startup/preferences/devtools-startup.js
# Ignore devtools third-party libs # Ignore devtools third-party libs

View file

@ -430,6 +430,7 @@
; DevTools ; DevTools
@RESPATH@/browser/chrome/devtools@JAREXT@ @RESPATH@/browser/chrome/devtools@JAREXT@
@RESPATH@/browser/chrome/devtools.manifest @RESPATH@/browser/chrome/devtools.manifest
@RESPATH@/browser/@PREF_DIR@/devtools-shared.js
@RESPATH@/browser/@PREF_DIR@/devtools-client.js @RESPATH@/browser/@PREF_DIR@/devtools-client.js
@RESPATH@/browser/@PREF_DIR@/debugger.js @RESPATH@/browser/@PREF_DIR@/debugger.js

View file

@ -72,12 +72,15 @@ To create a new preference, it should be assigned a default value. Default prefe
defined in preferences files such as: defined in preferences files such as:
- devtools/client/preferences/devtools-client.js - devtools/client/preferences/devtools-client.js
- devtools/client/preferences/debugger.js - devtools/client/preferences/debugger.js
- devtools/shared/preferences/devtools-shared.js
- devtools/startup/preferences/devtools-startup.js - devtools/startup/preferences/devtools-startup.js
Most new preferences should go in devtools/client/preferences/devtools-client.js. Debugger Most new preferences should go in devtools/client/preferences/devtools-client.js. Debugger
specific preferences should go in devtools/client/preferences/debugger.js. Finally if a specific preferences should go in devtools/client/preferences/debugger.js. If a preference
preference needs to be available very early during the Firefox startup sequence, it should should be available even when the client for DevTools is not shipped (for instance on
go in devtools/startup/preferences/devtools-startup.js. Fennec) the preference should go to devtools/shared/preferences/devtools-shared.js.
Finally if a preference needs to be available very early during the Firefox startup
sequence, it should go in devtools/startup/preferences/devtools-startup.js.
### Projects using Launchpad ### Projects using Launchpad

View file

@ -14,10 +14,10 @@ if CONFIG['MOZ_DEVTOOLS'] == 'all':
# `platform` contains all native components # `platform` contains all native components
DIRS += [ DIRS += [
'platform',
'server', 'server',
'shared', 'shared',
'startup', 'startup',
'platform',
] ]
# /browser uses DIST_SUBDIR. We opt-in to this treatment when building # /browser uses DIST_SUBDIR. We opt-in to this treatment when building

View file

@ -22,6 +22,7 @@ DIRS += [
'node-properties', 'node-properties',
'performance', 'performance',
'platform', 'platform',
'preferences',
'pretty-fast', 'pretty-fast',
'qrcode', 'qrcode',
'security', 'security',

View file

@ -0,0 +1,82 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
// Tells if DevTools have been explicitely enabled by the user.
// This pref allows to disable all features related to DevTools
// for users that never use them.
// Until bug 1361080 lands, we always consider them enabled.
pref("devtools.enabled", true);
// Enable deprecation warnings.
pref("devtools.errorconsole.deprecation_warnings", true);
#ifdef NIGHTLY_BUILD
// Don't show the Browser Toolbox prompt on local builds / nightly
pref("devtools.debugger.prompt-connection", false, sticky);
#else
pref("devtools.debugger.prompt-connection", true, sticky);
#endif
#ifdef MOZILLA_OFFICIAL
// Disable debugging chrome
pref("devtools.chrome.enabled", false, sticky);
// Disable remote debugging connections
pref("devtools.debugger.remote-enabled", false, sticky);
#else
// In local builds, enable the browser toolbox by default
pref("devtools.chrome.enabled", true, sticky);
pref("devtools.debugger.remote-enabled", true, sticky);
#endif
// Disable remote debugging protocol logging
pref("devtools.debugger.log", false);
pref("devtools.debugger.log.verbose", false);
pref("devtools.debugger.remote-port", 6000);
pref("devtools.debugger.remote-websocket", false);
// Force debugger server binding on the loopback interface
pref("devtools.debugger.force-local", true);
// Block tools from seeing / interacting with certified apps
pref("devtools.debugger.forbid-certified-apps", true);
// Limit for intercepted response bodies (1 MB)
// Possible values:
// 0 => the response body has no limit
// n => represents max number of bytes stored
pref("devtools.netmonitor.responseBodyLimit", 1048576);
// DevTools default color unit
pref("devtools.defaultColorUnit", "authored");
// Used for devtools debugging
pref("devtools.dump.emit", false);
// Disable device discovery logging
pref("devtools.discovery.log", false);
// Whether to scan for DevTools devices via WiFi
pref("devtools.remote.wifi.scan", true);
// Client must complete TLS handshake within this window (ms)
pref("devtools.remote.tls-handshake-timeout", 10000);
// URL of the remote JSON catalog used for device simulation
pref("devtools.devices.url", "https://code.cdn.mozilla.net/devices/devices.json");
// Display the introductory text
pref("devtools.gcli.hideIntro", false);
// How eager are we to show help: never=1, sometimes=2, always=3
pref("devtools.gcli.eagerHelper", 2);
// Alias to the script URLs for inject command.
pref("devtools.gcli.jquerySrc", "https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.1/jquery.min.js");
pref("devtools.gcli.lodashSrc", "https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.6.1/lodash.min.js");
pref("devtools.gcli.underscoreSrc", "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js");
// Set imgur upload client ID
pref("devtools.gcli.imgurClientID", '0df414e888d7240');
// Imgur's upload URL
pref("devtools.gcli.imgurUploadURL", "https://api.imgur.com/3/image");
// GCLI commands directory
pref("devtools.commands.dir", "");

View file

@ -0,0 +1,9 @@
# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
JS_PREFERENCE_PP_FILES += [
'devtools-shared.js'
]

View file

@ -1077,92 +1077,16 @@ pref("toolkit.asyncshutdown.crash_timeout", 180000); // 3 minutes
// Extra logging for AsyncShutdown barriers and phases // Extra logging for AsyncShutdown barriers and phases
pref("toolkit.asyncshutdown.log", false); pref("toolkit.asyncshutdown.log", false);
// Tells if DevTools have been explicitely enabled by the user.
// This pref allows to disable all features related to DevTools
// for users that never use them.
// Until bug 1361080 lands, we always consider them enabled.
pref("devtools.enabled", true);
// Enable deprecation warnings.
pref("devtools.errorconsole.deprecation_warnings", true);
#ifdef NIGHTLY_BUILD
// Don't show the Browser Toolbox prompt on local builds / nightly
pref("devtools.debugger.prompt-connection", false, sticky);
#else
pref("devtools.debugger.prompt-connection", true, sticky);
#endif
#ifdef MOZILLA_OFFICIAL #ifdef MOZILLA_OFFICIAL
// Disable debugging chrome
pref("devtools.chrome.enabled", false, sticky);
// Disable remote debugging connections
pref("devtools.debugger.remote-enabled", false, sticky);
// enable JS dump() function. // enable JS dump() function.
pref("browser.dom.window.dump.enabled", false, sticky); pref("browser.dom.window.dump.enabled", false, sticky);
#else #else
// In local builds, enable the browser toolbox by default
pref("devtools.chrome.enabled", true, sticky);
pref("devtools.debugger.remote-enabled", true, sticky);
pref("browser.dom.window.dump.enabled", true, sticky); pref("browser.dom.window.dump.enabled", true, sticky);
#endif #endif
// Disable remote debugging protocol logging
pref("devtools.debugger.log", false);
pref("devtools.debugger.log.verbose", false);
pref("devtools.debugger.remote-port", 6000);
pref("devtools.debugger.remote-websocket", false);
// Force debugger server binding on the loopback interface
pref("devtools.debugger.force-local", true);
// Block tools from seeing / interacting with certified apps
pref("devtools.debugger.forbid-certified-apps", true);
// Limit for intercepted response bodies (1 MB)
// Possible values:
// 0 => the response body has no limit
// n => represents max number of bytes stored
pref("devtools.netmonitor.responseBodyLimit", 1048576);
// DevTools default color unit
pref("devtools.defaultColorUnit", "authored");
// Used for devtools debugging
pref("devtools.dump.emit", false);
// Controls whether EventEmitter module throws dump message on each emit // Controls whether EventEmitter module throws dump message on each emit
pref("toolkit.dump.emit", false); pref("toolkit.dump.emit", false);
// Disable device discovery logging
pref("devtools.discovery.log", false);
// Whether to scan for DevTools devices via WiFi
pref("devtools.remote.wifi.scan", true);
// Client must complete TLS handshake within this window (ms)
pref("devtools.remote.tls-handshake-timeout", 10000);
// URL of the remote JSON catalog used for device simulation
pref("devtools.devices.url", "https://code.cdn.mozilla.net/devices/devices.json");
// Display the introductory text
pref("devtools.gcli.hideIntro", false);
// How eager are we to show help: never=1, sometimes=2, always=3
pref("devtools.gcli.eagerHelper", 2);
// Alias to the script URLs for inject command.
pref("devtools.gcli.jquerySrc", "https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.1/jquery.min.js");
pref("devtools.gcli.lodashSrc", "https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.6.1/lodash.min.js");
pref("devtools.gcli.underscoreSrc", "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js");
// Set imgur upload client ID
pref("devtools.gcli.imgurClientID", '0df414e888d7240');
// Imgur's upload URL
pref("devtools.gcli.imgurUploadURL", "https://api.imgur.com/3/image");
// GCLI commands directory
pref("devtools.commands.dir", "");
// view source // view source
pref("view_source.syntax_highlight", true); pref("view_source.syntax_highlight", true);
pref("view_source.wrap_long_lines", false); pref("view_source.wrap_long_lines", false);