Wed, 31 Dec 2014 07:22:50 +0100
Correct previous dual key logic pending first delivery installment.
michael@0 | 1 | /* This Source Code Form is subject to the terms of the Mozilla Public |
michael@0 | 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this |
michael@0 | 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
michael@0 | 4 | |
michael@0 | 5 | #filter substitution |
michael@0 | 6 | |
michael@0 | 7 | // For browser.xml binding |
michael@0 | 8 | // |
michael@0 | 9 | // cacheRatio* is a ratio that determines the amount of pixels to cache. The |
michael@0 | 10 | // ratio is multiplied by the viewport width or height to get the displayport's |
michael@0 | 11 | // width or height, respectively. |
michael@0 | 12 | // |
michael@0 | 13 | // (divide integer value by 1000 to get the ratio) |
michael@0 | 14 | // |
michael@0 | 15 | // For instance: cachePercentageWidth is 1500 |
michael@0 | 16 | // viewport height is 500 |
michael@0 | 17 | // => display port height will be 500 * 1.5 = 750 |
michael@0 | 18 | // |
michael@0 | 19 | pref("toolkit.browser.cacheRatioWidth", 2000); |
michael@0 | 20 | pref("toolkit.browser.cacheRatioHeight", 3000); |
michael@0 | 21 | |
michael@0 | 22 | // How long before a content view (a handle to a remote scrollable object) |
michael@0 | 23 | // expires. |
michael@0 | 24 | pref("toolkit.browser.contentViewExpire", 3000); |
michael@0 | 25 | |
michael@0 | 26 | pref("toolkit.defaultChromeURI", "chrome://browser/content/browser.xul"); |
michael@0 | 27 | pref("browser.chromeURL", "chrome://browser/content/"); |
michael@0 | 28 | |
michael@0 | 29 | pref("browser.tabs.remote", false); |
michael@0 | 30 | |
michael@0 | 31 | // If a tab has not been active for this long (seconds), then it may be |
michael@0 | 32 | // turned into a zombie tab to preemptively free up memory. -1 disables time-based |
michael@0 | 33 | // expiration (but low-memory conditions may still require the tab to be zombified). |
michael@0 | 34 | pref("browser.tabs.expireTime", 900); |
michael@0 | 35 | |
michael@0 | 36 | // From libpref/src/init/all.js, extended to allow a slightly wider zoom range. |
michael@0 | 37 | pref("zoom.minPercent", 20); |
michael@0 | 38 | pref("zoom.maxPercent", 400); |
michael@0 | 39 | pref("toolkit.zoomManager.zoomValues", ".2,.3,.5,.67,.8,.9,1,1.1,1.2,1.33,1.5,1.7,2,2.4,3,4"); |
michael@0 | 40 | |
michael@0 | 41 | // Mobile will use faster, less durable mode. |
michael@0 | 42 | pref("toolkit.storage.synchronous", 0); |
michael@0 | 43 | |
michael@0 | 44 | pref("browser.viewport.desktopWidth", 980); |
michael@0 | 45 | // The default fallback zoom level to render pages at. Set to -1 to fit page; otherwise |
michael@0 | 46 | // the value is divided by 1000 and clamped to hard-coded min/max scale values. |
michael@0 | 47 | pref("browser.viewport.defaultZoom", -1); |
michael@0 | 48 | |
michael@0 | 49 | /* allow scrollbars to float above chrome ui */ |
michael@0 | 50 | pref("ui.scrollbarsCanOverlapContent", 1); |
michael@0 | 51 | |
michael@0 | 52 | /* cache prefs */ |
michael@0 | 53 | pref("browser.cache.disk.enable", true); |
michael@0 | 54 | pref("browser.cache.disk.capacity", 20480); // kilobytes |
michael@0 | 55 | pref("browser.cache.disk.max_entry_size", 4096); // kilobytes |
michael@0 | 56 | pref("browser.cache.disk.smart_size.enabled", true); |
michael@0 | 57 | pref("browser.cache.disk.smart_size.first_run", true); |
michael@0 | 58 | |
michael@0 | 59 | #ifdef MOZ_PKG_SPECIAL |
michael@0 | 60 | // low memory devices |
michael@0 | 61 | pref("browser.cache.memory.enable", false); |
michael@0 | 62 | #else |
michael@0 | 63 | pref("browser.cache.memory.enable", true); |
michael@0 | 64 | #endif |
michael@0 | 65 | pref("browser.cache.memory.capacity", 1024); // kilobytes |
michael@0 | 66 | |
michael@0 | 67 | pref("browser.cache.memory_limit", 5120); // 5 MB |
michael@0 | 68 | |
michael@0 | 69 | /* image cache prefs */ |
michael@0 | 70 | pref("image.cache.size", 1048576); // bytes |
michael@0 | 71 | pref("image.high_quality_downscaling.enabled", false); |
michael@0 | 72 | |
michael@0 | 73 | /* offline cache prefs */ |
michael@0 | 74 | pref("browser.offline-apps.notify", true); |
michael@0 | 75 | pref("browser.cache.offline.enable", true); |
michael@0 | 76 | pref("browser.cache.offline.capacity", 5120); // kilobytes |
michael@0 | 77 | pref("offline-apps.quota.warn", 1024); // kilobytes |
michael@0 | 78 | |
michael@0 | 79 | // cache compression turned off for now - see bug #715198 |
michael@0 | 80 | pref("browser.cache.compression_level", 0); |
michael@0 | 81 | |
michael@0 | 82 | /* disable some protocol warnings */ |
michael@0 | 83 | pref("network.protocol-handler.warn-external.tel", false); |
michael@0 | 84 | pref("network.protocol-handler.warn-external.sms", false); |
michael@0 | 85 | pref("network.protocol-handler.warn-external.mailto", false); |
michael@0 | 86 | pref("network.protocol-handler.warn-external.vnd.youtube", false); |
michael@0 | 87 | |
michael@0 | 88 | /* http prefs */ |
michael@0 | 89 | pref("network.http.pipelining", true); |
michael@0 | 90 | pref("network.http.pipelining.ssl", true); |
michael@0 | 91 | pref("network.http.proxy.pipelining", true); |
michael@0 | 92 | pref("network.http.pipelining.maxrequests" , 6); |
michael@0 | 93 | pref("network.http.keep-alive.timeout", 600); |
michael@0 | 94 | pref("network.http.max-connections", 20); |
michael@0 | 95 | pref("network.http.max-persistent-connections-per-server", 6); |
michael@0 | 96 | pref("network.http.max-persistent-connections-per-proxy", 20); |
michael@0 | 97 | |
michael@0 | 98 | // spdy |
michael@0 | 99 | pref("network.http.spdy.push-allowance", 32768); |
michael@0 | 100 | |
michael@0 | 101 | // See bug 545869 for details on why these are set the way they are |
michael@0 | 102 | pref("network.buffer.cache.count", 24); |
michael@0 | 103 | pref("network.buffer.cache.size", 16384); |
michael@0 | 104 | |
michael@0 | 105 | // predictive actions |
michael@0 | 106 | pref("network.seer.enabled", false); |
michael@0 | 107 | pref("network.seer.max-db-size", 2097152); // bytes |
michael@0 | 108 | pref("network.seer.preserve", 50); // percentage of seer data to keep when cleaning up |
michael@0 | 109 | |
michael@0 | 110 | /* history max results display */ |
michael@0 | 111 | pref("browser.display.history.maxresults", 100); |
michael@0 | 112 | |
michael@0 | 113 | /* How many times should have passed before the remote tabs list is refreshed */ |
michael@0 | 114 | pref("browser.display.remotetabs.timeout", 10); |
michael@0 | 115 | |
michael@0 | 116 | /* session history */ |
michael@0 | 117 | pref("browser.sessionhistory.max_total_viewers", 1); |
michael@0 | 118 | pref("browser.sessionhistory.max_entries", 50); |
michael@0 | 119 | |
michael@0 | 120 | /* session store */ |
michael@0 | 121 | pref("browser.sessionstore.resume_session_once", false); |
michael@0 | 122 | pref("browser.sessionstore.resume_from_crash", true); |
michael@0 | 123 | pref("browser.sessionstore.interval", 10000); // milliseconds |
michael@0 | 124 | pref("browser.sessionstore.max_tabs_undo", 1); |
michael@0 | 125 | pref("browser.sessionstore.max_resumed_crashes", 1); |
michael@0 | 126 | pref("browser.sessionstore.recent_crashes", 0); |
michael@0 | 127 | |
michael@0 | 128 | /* these should help performance */ |
michael@0 | 129 | pref("mozilla.widget.force-24bpp", true); |
michael@0 | 130 | pref("mozilla.widget.use-buffer-pixmap", true); |
michael@0 | 131 | pref("mozilla.widget.disable-native-theme", true); |
michael@0 | 132 | pref("layout.reflow.synthMouseMove", false); |
michael@0 | 133 | pref("layout.css.report_errors", false); |
michael@0 | 134 | |
michael@0 | 135 | /* download manager (don't show the window or alert) */ |
michael@0 | 136 | pref("browser.download.useDownloadDir", true); |
michael@0 | 137 | pref("browser.download.folderList", 1); // Default to ~/Downloads |
michael@0 | 138 | pref("browser.download.manager.showAlertOnComplete", false); |
michael@0 | 139 | pref("browser.download.manager.showAlertInterval", 2000); |
michael@0 | 140 | pref("browser.download.manager.retention", 2); |
michael@0 | 141 | pref("browser.download.manager.showWhenStarting", false); |
michael@0 | 142 | pref("browser.download.manager.closeWhenDone", true); |
michael@0 | 143 | pref("browser.download.manager.openDelay", 0); |
michael@0 | 144 | pref("browser.download.manager.focusWhenStarting", false); |
michael@0 | 145 | pref("browser.download.manager.flashCount", 2); |
michael@0 | 146 | pref("browser.download.manager.displayedHistoryDays", 7); |
michael@0 | 147 | |
michael@0 | 148 | /* download helper */ |
michael@0 | 149 | pref("browser.helperApps.deleteTempFileOnExit", false); |
michael@0 | 150 | |
michael@0 | 151 | /* password manager */ |
michael@0 | 152 | pref("signon.rememberSignons", true); |
michael@0 | 153 | pref("signon.expireMasterPassword", false); |
michael@0 | 154 | pref("signon.debug", false); |
michael@0 | 155 | |
michael@0 | 156 | /* form helper (scroll to and optionally zoom into editable fields) */ |
michael@0 | 157 | pref("formhelper.mode", 2); // 0 = disabled, 1 = enabled, 2 = dynamic depending on screen size |
michael@0 | 158 | pref("formhelper.autozoom", true); |
michael@0 | 159 | |
michael@0 | 160 | /* find helper */ |
michael@0 | 161 | pref("findhelper.autozoom", true); |
michael@0 | 162 | |
michael@0 | 163 | /* autocomplete */ |
michael@0 | 164 | pref("browser.formfill.enable", true); |
michael@0 | 165 | |
michael@0 | 166 | /* spellcheck */ |
michael@0 | 167 | pref("layout.spellcheckDefault", 0); |
michael@0 | 168 | |
michael@0 | 169 | /* new html5 forms */ |
michael@0 | 170 | pref("dom.experimental_forms", true); |
michael@0 | 171 | pref("dom.forms.number", true); |
michael@0 | 172 | |
michael@0 | 173 | /* extension manager and xpinstall */ |
michael@0 | 174 | pref("xpinstall.whitelist.directRequest", false); |
michael@0 | 175 | pref("xpinstall.whitelist.fileRequest", false); |
michael@0 | 176 | pref("xpinstall.whitelist.add", "addons.mozilla.org"); |
michael@0 | 177 | pref("xpinstall.whitelist.add.180", "marketplace.firefox.com"); |
michael@0 | 178 | |
michael@0 | 179 | pref("extensions.enabledScopes", 1); |
michael@0 | 180 | pref("extensions.autoupdate.enabled", true); |
michael@0 | 181 | pref("extensions.autoupdate.interval", 86400); |
michael@0 | 182 | pref("extensions.update.enabled", false); |
michael@0 | 183 | pref("extensions.update.interval", 86400); |
michael@0 | 184 | pref("extensions.dss.enabled", false); |
michael@0 | 185 | pref("extensions.dss.switchPending", false); |
michael@0 | 186 | pref("extensions.ignoreMTimeChanges", false); |
michael@0 | 187 | pref("extensions.logging.enabled", false); |
michael@0 | 188 | pref("extensions.hideInstallButton", true); |
michael@0 | 189 | pref("extensions.showMismatchUI", false); |
michael@0 | 190 | pref("extensions.hideUpdateButton", false); |
michael@0 | 191 | pref("extensions.strictCompatibility", false); |
michael@0 | 192 | pref("extensions.minCompatibleAppVersion", "11.0"); |
michael@0 | 193 | |
michael@0 | 194 | pref("extensions.update.url", "https://versioncheck.addons.mozilla.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=%APP_OS%&appABI=%APP_ABI%&locale=%APP_LOCALE%¤tAppVersion=%CURRENT_APP_VERSION%&updateType=%UPDATE_TYPE%&compatMode=%COMPATIBILITY_MODE%"); |
michael@0 | 195 | pref("extensions.update.background.url", "https://versioncheck-bg.addons.mozilla.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=%APP_OS%&appABI=%APP_ABI%&locale=%APP_LOCALE%¤tAppVersion=%CURRENT_APP_VERSION%&updateType=%UPDATE_TYPE%&compatMode=%COMPATIBILITY_MODE%"); |
michael@0 | 196 | |
michael@0 | 197 | /* preferences for the Get Add-ons pane */ |
michael@0 | 198 | pref("extensions.getAddons.cache.enabled", true); |
michael@0 | 199 | pref("extensions.getAddons.maxResults", 15); |
michael@0 | 200 | pref("extensions.getAddons.recommended.browseURL", "https://addons.mozilla.org/%LOCALE%/android/recommended/"); |
michael@0 | 201 | pref("extensions.getAddons.recommended.url", "https://services.addons.mozilla.org/%LOCALE%/android/api/%API_VERSION%/list/featured/all/%MAX_RESULTS%/%OS%/%VERSION%"); |
michael@0 | 202 | pref("extensions.getAddons.search.browseURL", "https://addons.mozilla.org/%LOCALE%/android/search?q=%TERMS%&platform=%OS%&appver=%VERSION%"); |
michael@0 | 203 | pref("extensions.getAddons.search.url", "https://services.addons.mozilla.org/%LOCALE%/android/api/%API_VERSION%/search/%TERMS%/all/%MAX_RESULTS%/%OS%/%VERSION%/%COMPATIBILITY_MODE%"); |
michael@0 | 204 | pref("extensions.getAddons.browseAddons", "https://addons.mozilla.org/%LOCALE%/android/"); |
michael@0 | 205 | pref("extensions.getAddons.get.url", "https://services.addons.mozilla.org/%LOCALE%/android/api/%API_VERSION%/search/guid:%IDS%?src=mobile&appOS=%OS%&appVersion=%VERSION%"); |
michael@0 | 206 | pref("extensions.getAddons.getWithPerformance.url", "https://services.addons.mozilla.org/%LOCALE%/android/api/%API_VERSION%/search/guid:%IDS%?src=mobile&appOS=%OS%&appVersion=%VERSION%&tMain=%TIME_MAIN%&tFirstPaint=%TIME_FIRST_PAINT%&tSessionRestored=%TIME_SESSION_RESTORED%"); |
michael@0 | 207 | |
michael@0 | 208 | /* preference for the locale picker */ |
michael@0 | 209 | pref("extensions.getLocales.get.url", ""); |
michael@0 | 210 | pref("extensions.compatability.locales.buildid", "0"); |
michael@0 | 211 | |
michael@0 | 212 | /* blocklist preferences */ |
michael@0 | 213 | pref("extensions.blocklist.enabled", true); |
michael@0 | 214 | pref("extensions.blocklist.interval", 86400); |
michael@0 | 215 | pref("extensions.blocklist.url", "https://addons.mozilla.org/blocklist/3/%APP_ID%/%APP_VERSION%/%PRODUCT%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/%PING_COUNT%/%TOTAL_PING_COUNT%/%DAYS_SINCE_LAST_PING%/"); |
michael@0 | 216 | pref("extensions.blocklist.detailsURL", "https://www.mozilla.com/%LOCALE%/blocklist/"); |
michael@0 | 217 | |
michael@0 | 218 | /* block popups by default, and notify the user about blocked popups */ |
michael@0 | 219 | pref("dom.disable_open_during_load", true); |
michael@0 | 220 | pref("privacy.popups.showBrowserMessage", true); |
michael@0 | 221 | |
michael@0 | 222 | /* disable opening windows with the dialog feature */ |
michael@0 | 223 | pref("dom.disable_window_open_dialog_feature", true); |
michael@0 | 224 | pref("dom.disable_window_showModalDialog", true); |
michael@0 | 225 | pref("dom.disable_window_print", true); |
michael@0 | 226 | pref("dom.disable_window_find", true); |
michael@0 | 227 | |
michael@0 | 228 | pref("keyword.enabled", true); |
michael@0 | 229 | |
michael@0 | 230 | pref("accessibility.typeaheadfind", false); |
michael@0 | 231 | pref("accessibility.typeaheadfind.timeout", 5000); |
michael@0 | 232 | pref("accessibility.typeaheadfind.flashBar", 1); |
michael@0 | 233 | pref("accessibility.typeaheadfind.linksonly", false); |
michael@0 | 234 | pref("accessibility.typeaheadfind.casesensitive", 0); |
michael@0 | 235 | pref("accessibility.browsewithcaret_shortcut.enabled", false); |
michael@0 | 236 | |
michael@0 | 237 | // Whether the character encoding menu is under the main Firefox button. This |
michael@0 | 238 | // preference is a string so that localizers can alter it. |
michael@0 | 239 | pref("browser.menu.showCharacterEncoding", "chrome://browser/locale/browser.properties"); |
michael@0 | 240 | |
michael@0 | 241 | // pointer to the default engine name |
michael@0 | 242 | pref("browser.search.defaultenginename", "chrome://browser/locale/region.properties"); |
michael@0 | 243 | // maximum number of search suggestions, as a string because the search service expects a string pref |
michael@0 | 244 | pref("browser.search.param.maxSuggestions", "4"); |
michael@0 | 245 | // SSL error page behaviour |
michael@0 | 246 | pref("browser.ssl_override_behavior", 2); |
michael@0 | 247 | pref("browser.xul.error_pages.expert_bad_cert", false); |
michael@0 | 248 | |
michael@0 | 249 | // disable logging for the search service by default |
michael@0 | 250 | pref("browser.search.log", false); |
michael@0 | 251 | |
michael@0 | 252 | // ordering of search engines in the engine list. |
michael@0 | 253 | pref("browser.search.order.1", "chrome://browser/locale/region.properties"); |
michael@0 | 254 | pref("browser.search.order.2", "chrome://browser/locale/region.properties"); |
michael@0 | 255 | pref("browser.search.order.3", "chrome://browser/locale/region.properties"); |
michael@0 | 256 | |
michael@0 | 257 | // disable updating |
michael@0 | 258 | pref("browser.search.update", false); |
michael@0 | 259 | pref("browser.search.update.log", false); |
michael@0 | 260 | pref("browser.search.updateinterval", 6); |
michael@0 | 261 | |
michael@0 | 262 | // disable search suggestions by default |
michael@0 | 263 | pref("browser.search.suggest.enabled", false); |
michael@0 | 264 | pref("browser.search.suggest.prompted", false); |
michael@0 | 265 | |
michael@0 | 266 | // Tell the search service to load search plugins from the locale JAR |
michael@0 | 267 | pref("browser.search.loadFromJars", true); |
michael@0 | 268 | pref("browser.search.jarURIs", "chrome://browser/locale/searchplugins/"); |
michael@0 | 269 | |
michael@0 | 270 | // tell the search service that we don't really expose the "current engine" |
michael@0 | 271 | pref("browser.search.noCurrentEngine", true); |
michael@0 | 272 | |
michael@0 | 273 | #ifdef MOZ_OFFICIAL_BRANDING |
michael@0 | 274 | // {moz:official} expands to "official" |
michael@0 | 275 | pref("browser.search.official", true); |
michael@0 | 276 | #endif |
michael@0 | 277 | |
michael@0 | 278 | // Control media casting feature |
michael@0 | 279 | pref("browser.casting.enabled", false); |
michael@0 | 280 | |
michael@0 | 281 | // Enable sparse localization by setting a few package locale overrides |
michael@0 | 282 | pref("chrome.override_package.global", "browser"); |
michael@0 | 283 | pref("chrome.override_package.mozapps", "browser"); |
michael@0 | 284 | pref("chrome.override_package.passwordmgr", "browser"); |
michael@0 | 285 | |
michael@0 | 286 | // enable xul error pages |
michael@0 | 287 | pref("browser.xul.error_pages.enabled", true); |
michael@0 | 288 | |
michael@0 | 289 | // Specify emptyRestriction = 0 so that bookmarks appear in the list by default |
michael@0 | 290 | pref("browser.urlbar.default.behavior", 0); |
michael@0 | 291 | pref("browser.urlbar.default.behavior.emptyRestriction", 0); |
michael@0 | 292 | |
michael@0 | 293 | // Let the faviconservice know that we display favicons as 32x32px so that it |
michael@0 | 294 | // uses the right size when optimizing favicons |
michael@0 | 295 | pref("places.favicons.optimizeToDimension", 32); |
michael@0 | 296 | |
michael@0 | 297 | // various and sundry awesomebar prefs (should remove/re-evaluate |
michael@0 | 298 | // these once bug 447900 is fixed) |
michael@0 | 299 | pref("browser.urlbar.clickSelectsAll", true); |
michael@0 | 300 | pref("browser.urlbar.doubleClickSelectsAll", true); |
michael@0 | 301 | pref("browser.urlbar.autoFill", false); |
michael@0 | 302 | pref("browser.urlbar.matchOnlyTyped", false); |
michael@0 | 303 | pref("browser.urlbar.matchBehavior", 1); |
michael@0 | 304 | pref("browser.urlbar.filter.javascript", true); |
michael@0 | 305 | pref("browser.urlbar.maxRichResults", 24); // increased so we see more results when portrait |
michael@0 | 306 | pref("browser.urlbar.search.chunkSize", 1000); |
michael@0 | 307 | pref("browser.urlbar.search.timeout", 100); |
michael@0 | 308 | pref("browser.urlbar.restrict.history", "^"); |
michael@0 | 309 | pref("browser.urlbar.restrict.bookmark", "*"); |
michael@0 | 310 | pref("browser.urlbar.restrict.tag", "+"); |
michael@0 | 311 | pref("browser.urlbar.match.title", "#"); |
michael@0 | 312 | pref("browser.urlbar.match.url", "@"); |
michael@0 | 313 | pref("browser.urlbar.autocomplete.search_threshold", 5); |
michael@0 | 314 | pref("browser.history.grouping", "day"); |
michael@0 | 315 | pref("browser.history.showSessions", false); |
michael@0 | 316 | pref("browser.sessionhistory.max_entries", 50); |
michael@0 | 317 | pref("browser.history_expire_sites", 40000); |
michael@0 | 318 | pref("browser.places.migratePostDataAnnotations", true); |
michael@0 | 319 | pref("browser.places.updateRecentTagsUri", true); |
michael@0 | 320 | pref("places.frecency.numVisits", 10); |
michael@0 | 321 | pref("places.frecency.numCalcOnIdle", 50); |
michael@0 | 322 | pref("places.frecency.numCalcOnMigrate", 50); |
michael@0 | 323 | pref("places.frecency.updateIdleTime", 60000); |
michael@0 | 324 | pref("places.frecency.firstBucketCutoff", 4); |
michael@0 | 325 | pref("places.frecency.secondBucketCutoff", 14); |
michael@0 | 326 | pref("places.frecency.thirdBucketCutoff", 31); |
michael@0 | 327 | pref("places.frecency.fourthBucketCutoff", 90); |
michael@0 | 328 | pref("places.frecency.firstBucketWeight", 100); |
michael@0 | 329 | pref("places.frecency.secondBucketWeight", 70); |
michael@0 | 330 | pref("places.frecency.thirdBucketWeight", 50); |
michael@0 | 331 | pref("places.frecency.fourthBucketWeight", 30); |
michael@0 | 332 | pref("places.frecency.defaultBucketWeight", 10); |
michael@0 | 333 | pref("places.frecency.embedVisitBonus", 0); |
michael@0 | 334 | pref("places.frecency.linkVisitBonus", 100); |
michael@0 | 335 | pref("places.frecency.typedVisitBonus", 2000); |
michael@0 | 336 | pref("places.frecency.bookmarkVisitBonus", 150); |
michael@0 | 337 | pref("places.frecency.downloadVisitBonus", 0); |
michael@0 | 338 | pref("places.frecency.permRedirectVisitBonus", 0); |
michael@0 | 339 | pref("places.frecency.tempRedirectVisitBonus", 0); |
michael@0 | 340 | pref("places.frecency.defaultVisitBonus", 0); |
michael@0 | 341 | pref("places.frecency.unvisitedBookmarkBonus", 140); |
michael@0 | 342 | pref("places.frecency.unvisitedTypedBonus", 200); |
michael@0 | 343 | |
michael@0 | 344 | // disable color management |
michael@0 | 345 | pref("gfx.color_management.mode", 0); |
michael@0 | 346 | |
michael@0 | 347 | // 0=fixed margin, 1=velocity bias, 2=dynamic resolution, 3=no margins, 4=prediction bias |
michael@0 | 348 | pref("gfx.displayport.strategy", 1); |
michael@0 | 349 | |
michael@0 | 350 | // all of the following displayport strategy prefs will be divided by 1000 |
michael@0 | 351 | // to obtain some multiplier which is then used in the strategy. |
michael@0 | 352 | // fixed margin strategy options |
michael@0 | 353 | pref("gfx.displayport.strategy_fm.multiplier", -1); // displayport dimension multiplier |
michael@0 | 354 | pref("gfx.displayport.strategy_fm.danger_x", -1); // danger zone on x-axis when multiplied by viewport width |
michael@0 | 355 | pref("gfx.displayport.strategy_fm.danger_y", -1); // danger zone on y-axis when multiplied by viewport height |
michael@0 | 356 | |
michael@0 | 357 | // velocity bias strategy options |
michael@0 | 358 | pref("gfx.displayport.strategy_vb.multiplier", -1); // displayport dimension multiplier |
michael@0 | 359 | pref("gfx.displayport.strategy_vb.threshold", -1); // velocity threshold in inches/frame |
michael@0 | 360 | pref("gfx.displayport.strategy_vb.reverse_buffer", -1); // fraction of buffer to keep in reverse direction from scroll |
michael@0 | 361 | pref("gfx.displayport.strategy_vb.danger_x_base", -1); // danger zone on x-axis when multiplied by viewport width |
michael@0 | 362 | pref("gfx.displayport.strategy_vb.danger_y_base", -1); // danger zone on y-axis when multiplied by viewport height |
michael@0 | 363 | pref("gfx.displayport.strategy_vb.danger_x_incr", -1); // additional danger zone on x-axis when multiplied by viewport width and velocity |
michael@0 | 364 | pref("gfx.displayport.strategy_vb.danger_y_incr", -1); // additional danger zone on y-axis when multiplied by viewport height and velocity |
michael@0 | 365 | |
michael@0 | 366 | // prediction bias strategy options |
michael@0 | 367 | pref("gfx.displayport.strategy_pb.threshold", -1); // velocity threshold in inches/frame |
michael@0 | 368 | |
michael@0 | 369 | // Allow 24-bit colour when the hardware supports it |
michael@0 | 370 | pref("gfx.android.rgb16.force", false); |
michael@0 | 371 | |
michael@0 | 372 | // don't allow JS to move and resize existing windows |
michael@0 | 373 | pref("dom.disable_window_move_resize", true); |
michael@0 | 374 | |
michael@0 | 375 | // prevent click image resizing for nsImageDocument |
michael@0 | 376 | pref("browser.enable_click_image_resizing", false); |
michael@0 | 377 | |
michael@0 | 378 | // open in tab preferences |
michael@0 | 379 | // 0=default window, 1=current window/tab, 2=new window, 3=new tab in most window |
michael@0 | 380 | pref("browser.link.open_external", 3); |
michael@0 | 381 | pref("browser.link.open_newwindow", 3); |
michael@0 | 382 | // 0=force all new windows to tabs, 1=don't force, 2=only force those with no features set |
michael@0 | 383 | pref("browser.link.open_newwindow.restriction", 0); |
michael@0 | 384 | |
michael@0 | 385 | // controls which bits of private data to clear. by default we clear them all. |
michael@0 | 386 | pref("privacy.item.cache", true); |
michael@0 | 387 | pref("privacy.item.cookies", true); |
michael@0 | 388 | pref("privacy.item.offlineApps", true); |
michael@0 | 389 | pref("privacy.item.history", true); |
michael@0 | 390 | pref("privacy.item.formdata", true); |
michael@0 | 391 | pref("privacy.item.downloads", true); |
michael@0 | 392 | pref("privacy.item.passwords", true); |
michael@0 | 393 | pref("privacy.item.sessions", true); |
michael@0 | 394 | pref("privacy.item.geolocation", true); |
michael@0 | 395 | pref("privacy.item.siteSettings", true); |
michael@0 | 396 | pref("privacy.item.syncAccount", true); |
michael@0 | 397 | |
michael@0 | 398 | // enable geo |
michael@0 | 399 | pref("geo.enabled", true); |
michael@0 | 400 | pref("app.geo.reportdata", 0); |
michael@0 | 401 | |
michael@0 | 402 | // content sink control -- controls responsiveness during page load |
michael@0 | 403 | // see https://bugzilla.mozilla.org/show_bug.cgi?id=481566#c9 |
michael@0 | 404 | //pref("content.sink.enable_perf_mode", 2); // 0 - switch, 1 - interactive, 2 - perf |
michael@0 | 405 | //pref("content.sink.pending_event_mode", 0); |
michael@0 | 406 | //pref("content.sink.perf_deflect_count", 1000000); |
michael@0 | 407 | //pref("content.sink.perf_parse_time", 50000000); |
michael@0 | 408 | |
michael@0 | 409 | // Disable the JS engine's gc on memory pressure, since we do one in the mobile |
michael@0 | 410 | // browser (bug 669346). |
michael@0 | 411 | pref("javascript.options.gc_on_memory_pressure", false); |
michael@0 | 412 | |
michael@0 | 413 | #ifdef MOZ_PKG_SPECIAL |
michael@0 | 414 | // low memory devices |
michael@0 | 415 | pref("javascript.options.mem.gc_high_frequency_heap_growth_max", 120); |
michael@0 | 416 | pref("javascript.options.mem.gc_high_frequency_heap_growth_min", 120); |
michael@0 | 417 | pref("javascript.options.mem.gc_high_frequency_high_limit_mb", 40); |
michael@0 | 418 | pref("javascript.options.mem.gc_high_frequency_low_limit_mb", 10); |
michael@0 | 419 | pref("javascript.options.mem.gc_low_frequency_heap_growth", 120); |
michael@0 | 420 | pref("javascript.options.mem.high_water_mark", 16); |
michael@0 | 421 | pref("javascript.options.mem.gc_allocation_threshold_mb", 3); |
michael@0 | 422 | pref("javascript.options.mem.gc_decommit_threshold_mb", 1); |
michael@0 | 423 | #else |
michael@0 | 424 | pref("javascript.options.mem.high_water_mark", 32); |
michael@0 | 425 | #endif |
michael@0 | 426 | |
michael@0 | 427 | pref("dom.max_chrome_script_run_time", 0); // disable slow script dialog for chrome |
michael@0 | 428 | pref("dom.max_script_run_time", 20); |
michael@0 | 429 | |
michael@0 | 430 | // JS error console |
michael@0 | 431 | pref("devtools.errorconsole.enabled", false); |
michael@0 | 432 | |
michael@0 | 433 | pref("font.size.inflation.minTwips", 120); |
michael@0 | 434 | |
michael@0 | 435 | // When true, zooming will be enabled on all sites, even ones that declare user-scalable=no. |
michael@0 | 436 | pref("browser.ui.zoom.force-user-scalable", false); |
michael@0 | 437 | |
michael@0 | 438 | // Touch radius (area around the touch location to look for target elements), |
michael@0 | 439 | // in 1/240-inch pixels: |
michael@0 | 440 | pref("browser.ui.touch.left", 32); |
michael@0 | 441 | pref("browser.ui.touch.right", 32); |
michael@0 | 442 | pref("browser.ui.touch.top", 48); |
michael@0 | 443 | pref("browser.ui.touch.bottom", 16); |
michael@0 | 444 | pref("browser.ui.touch.weight.visited", 120); // percentage |
michael@0 | 445 | |
michael@0 | 446 | // The percentage of the screen that needs to be scrolled before margins are exposed. |
michael@0 | 447 | pref("browser.ui.show-margins-threshold", 10); |
michael@0 | 448 | |
michael@0 | 449 | // Maximum distance from the point where the user pressed where we still |
michael@0 | 450 | // look for text to select |
michael@0 | 451 | pref("browser.ui.selection.distance", 250); |
michael@0 | 452 | |
michael@0 | 453 | // plugins |
michael@0 | 454 | pref("plugin.disable", false); |
michael@0 | 455 | pref("dom.ipc.plugins.enabled", false); |
michael@0 | 456 | |
michael@0 | 457 | // This pref isn't actually used anymore, but we're leaving this here to avoid changing |
michael@0 | 458 | // the default so that we can migrate a user-set pref. See bug 885357. |
michael@0 | 459 | pref("plugins.click_to_play", true); |
michael@0 | 460 | // The default value for nsIPluginTag.enabledState (STATE_CLICKTOPLAY = 1) |
michael@0 | 461 | pref("plugin.default.state", 1); |
michael@0 | 462 | |
michael@0 | 463 | // product URLs |
michael@0 | 464 | // The breakpad report server to link to in about:crashes |
michael@0 | 465 | pref("breakpad.reportURL", "https://crash-stats.mozilla.com/report/index/"); |
michael@0 | 466 | pref("app.support.baseURL", "http://support.mozilla.org/1/mobile/%VERSION%/%OS%/%LOCALE%/"); |
michael@0 | 467 | // Used to submit data to input from about:feedback |
michael@0 | 468 | pref("app.feedback.postURL", "https://input.mozilla.org/%LOCALE%/feedback"); |
michael@0 | 469 | pref("app.privacyURL", "https://www.mozilla.org/legal/privacy/firefox.html"); |
michael@0 | 470 | pref("app.creditsURL", "http://www.mozilla.org/credits/"); |
michael@0 | 471 | pref("app.channelURL", "http://www.mozilla.org/%LOCALE%/firefox/channel/"); |
michael@0 | 472 | #if MOZ_UPDATE_CHANNEL == aurora |
michael@0 | 473 | pref("app.releaseNotesURL", "http://www.mozilla.com/%LOCALE%/mobile/%VERSION%/auroranotes/"); |
michael@0 | 474 | #elif MOZ_UPDATE_CHANNEL == beta |
michael@0 | 475 | pref("app.releaseNotesURL", "http://www.mozilla.com/%LOCALE%/mobile/%VERSION%beta/releasenotes/"); |
michael@0 | 476 | #else |
michael@0 | 477 | pref("app.releaseNotesURL", "http://www.mozilla.com/%LOCALE%/mobile/%VERSION%/releasenotes/"); |
michael@0 | 478 | #endif |
michael@0 | 479 | #if MOZ_UPDATE_CHANNEL == beta |
michael@0 | 480 | pref("app.faqURL", "http://www.mozilla.com/%LOCALE%/mobile/beta/faq/"); |
michael@0 | 481 | #else |
michael@0 | 482 | pref("app.faqURL", "http://www.mozilla.com/%LOCALE%/mobile/faq/"); |
michael@0 | 483 | #endif |
michael@0 | 484 | pref("app.marketplaceURL", "https://marketplace.firefox.com/"); |
michael@0 | 485 | |
michael@0 | 486 | // Name of alternate about: page for certificate errors (when undefined, defaults to about:neterror) |
michael@0 | 487 | pref("security.alternate_certificate_error_page", "certerror"); |
michael@0 | 488 | |
michael@0 | 489 | pref("security.warn_viewing_mixed", false); // Warning is disabled. See Bug 616712. |
michael@0 | 490 | |
michael@0 | 491 | // Block insecure active content on https pages |
michael@0 | 492 | pref("security.mixed_content.block_active_content", true); |
michael@0 | 493 | |
michael@0 | 494 | // Override some named colors to avoid inverse OS themes |
michael@0 | 495 | pref("ui.-moz-dialog", "#efebe7"); |
michael@0 | 496 | pref("ui.-moz-dialogtext", "#101010"); |
michael@0 | 497 | pref("ui.-moz-field", "#fff"); |
michael@0 | 498 | pref("ui.-moz-fieldtext", "#1a1a1a"); |
michael@0 | 499 | pref("ui.-moz-buttonhoverface", "#f3f0ed"); |
michael@0 | 500 | pref("ui.-moz-buttonhovertext", "#101010"); |
michael@0 | 501 | pref("ui.-moz-combobox", "#fff"); |
michael@0 | 502 | pref("ui.-moz-comboboxtext", "#101010"); |
michael@0 | 503 | pref("ui.buttonface", "#ece7e2"); |
michael@0 | 504 | pref("ui.buttonhighlight", "#fff"); |
michael@0 | 505 | pref("ui.buttonshadow", "#aea194"); |
michael@0 | 506 | pref("ui.buttontext", "#101010"); |
michael@0 | 507 | pref("ui.captiontext", "#101010"); |
michael@0 | 508 | pref("ui.graytext", "#b1a598"); |
michael@0 | 509 | pref("ui.highlight", "#fad184"); |
michael@0 | 510 | pref("ui.highlighttext", "#1a1a1a"); |
michael@0 | 511 | pref("ui.infobackground", "#f5f5b5"); |
michael@0 | 512 | pref("ui.infotext", "#000"); |
michael@0 | 513 | pref("ui.menu", "#f7f5f3"); |
michael@0 | 514 | pref("ui.menutext", "#101010"); |
michael@0 | 515 | pref("ui.threeddarkshadow", "#000"); |
michael@0 | 516 | pref("ui.threedface", "#ece7e2"); |
michael@0 | 517 | pref("ui.threedhighlight", "#fff"); |
michael@0 | 518 | pref("ui.threedlightshadow", "#ece7e2"); |
michael@0 | 519 | pref("ui.threedshadow", "#aea194"); |
michael@0 | 520 | pref("ui.window", "#efebe7"); |
michael@0 | 521 | pref("ui.windowtext", "#101010"); |
michael@0 | 522 | pref("ui.windowframe", "#efebe7"); |
michael@0 | 523 | |
michael@0 | 524 | /* prefs used by the update timer system (including blocklist pings) */ |
michael@0 | 525 | pref("app.update.timerFirstInterval", 30000); // milliseconds |
michael@0 | 526 | pref("app.update.timerMinimumDelay", 30); // seconds |
michael@0 | 527 | |
michael@0 | 528 | // used by update service to decide whether or not to |
michael@0 | 529 | // automatically download an update |
michael@0 | 530 | pref("app.update.autodownload", "wifi"); |
michael@0 | 531 | |
michael@0 | 532 | #ifdef MOZ_UPDATER |
michael@0 | 533 | /* prefs used specifically for updating the app */ |
michael@0 | 534 | pref("app.update.enabled", false); |
michael@0 | 535 | pref("app.update.channel", "@MOZ_UPDATE_CHANNEL@"); |
michael@0 | 536 | |
michael@0 | 537 | // If you are looking for app.update.url, we no longer use it. |
michael@0 | 538 | // See mobile/android/base/UpdateServiceHelper.java.in |
michael@0 | 539 | #endif |
michael@0 | 540 | |
michael@0 | 541 | // replace newlines with spaces on paste into single-line text boxes |
michael@0 | 542 | pref("editor.singleLine.pasteNewlines", 2); |
michael@0 | 543 | |
michael@0 | 544 | // threshold where a tap becomes a drag, in 1/240" reference pixels |
michael@0 | 545 | // The names of the preferences are to be in sync with EventStateManager.cpp |
michael@0 | 546 | pref("ui.dragThresholdX", 25); |
michael@0 | 547 | pref("ui.dragThresholdY", 25); |
michael@0 | 548 | |
michael@0 | 549 | pref("layers.acceleration.disabled", false); |
michael@0 | 550 | pref("layers.offmainthreadcomposition.enabled", true); |
michael@0 | 551 | pref("layers.async-video.enabled", true); |
michael@0 | 552 | pref("layers.progressive-paint", true); |
michael@0 | 553 | pref("layers.low-precision-buffer", true); |
michael@0 | 554 | pref("layers.low-precision-resolution", 250); |
michael@0 | 555 | // We want to limit layers for two reasons: |
michael@0 | 556 | // 1) We can't scroll smoothly if we have to many draw calls |
michael@0 | 557 | // 2) Pages that have too many layers consume too much memory and crash. |
michael@0 | 558 | // By limiting the number of layers on mobile we're making the main thread |
michael@0 | 559 | // work harder keep scrolling smooth and memory low. |
michael@0 | 560 | pref("layers.max-active", 20); |
michael@0 | 561 | |
michael@0 | 562 | pref("notification.feature.enabled", true); |
michael@0 | 563 | pref("dom.webnotifications.enabled", true); |
michael@0 | 564 | |
michael@0 | 565 | // prevent tooltips from showing up |
michael@0 | 566 | pref("browser.chrome.toolbar_tips", false); |
michael@0 | 567 | pref("dom.indexedDB.warningQuota", 5); |
michael@0 | 568 | |
michael@0 | 569 | // prevent video elements from preloading too much data |
michael@0 | 570 | pref("media.preload.default", 1); // default to preload none |
michael@0 | 571 | pref("media.preload.auto", 2); // preload metadata if preload=auto |
michael@0 | 572 | |
michael@0 | 573 | // Number of video frames we buffer while decoding video. |
michael@0 | 574 | // On Android this is decided by a similar value which varies for |
michael@0 | 575 | // each OMX decoder |OMX_PARAM_PORTDEFINITIONTYPE::nBufferCountMin|. This |
michael@0 | 576 | // number must be less than the OMX equivalent or gecko will think it is |
michael@0 | 577 | // chronically starved of video frames. All decoders seen so far have a value |
michael@0 | 578 | // of at least 4. |
michael@0 | 579 | pref("media.video-queue.default-size", 3); |
michael@0 | 580 | |
michael@0 | 581 | // optimize images memory usage |
michael@0 | 582 | pref("image.mem.decodeondraw", true); |
michael@0 | 583 | pref("image.mem.min_discard_timeout_ms", 10000); |
michael@0 | 584 | |
michael@0 | 585 | #ifdef NIGHTLY_BUILD |
michael@0 | 586 | // Shumway component (SWF player) is disabled by default. Also see bug 904346. |
michael@0 | 587 | pref("shumway.disabled", true); |
michael@0 | 588 | #endif |
michael@0 | 589 | |
michael@0 | 590 | // enable touch events interfaces |
michael@0 | 591 | pref("dom.w3c_touch_events.enabled", 1); |
michael@0 | 592 | |
michael@0 | 593 | #ifdef MOZ_SAFE_BROWSING |
michael@0 | 594 | pref("browser.safebrowsing.enabled", true); |
michael@0 | 595 | pref("browser.safebrowsing.malware.enabled", true); |
michael@0 | 596 | pref("browser.safebrowsing.debug", false); |
michael@0 | 597 | |
michael@0 | 598 | pref("browser.safebrowsing.updateURL", "https://safebrowsing.google.com/safebrowsing/downloads?client=SAFEBROWSING_ID&appver=%VERSION%&pver=2.2&key=%GOOGLE_API_KEY%"); |
michael@0 | 599 | pref("browser.safebrowsing.gethashURL", "https://safebrowsing.google.com/safebrowsing/gethash?client=SAFEBROWSING_ID&appver=%VERSION%&pver=2.2"); |
michael@0 | 600 | pref("browser.safebrowsing.reportURL", "https://safebrowsing.google.com/safebrowsing/report?"); |
michael@0 | 601 | pref("browser.safebrowsing.reportGenericURL", "http://%LOCALE%.phish-generic.mozilla.com/?hl=%LOCALE%"); |
michael@0 | 602 | pref("browser.safebrowsing.reportErrorURL", "http://%LOCALE%.phish-error.mozilla.com/?hl=%LOCALE%"); |
michael@0 | 603 | pref("browser.safebrowsing.reportPhishURL", "http://%LOCALE%.phish-report.mozilla.com/?hl=%LOCALE%"); |
michael@0 | 604 | pref("browser.safebrowsing.reportMalwareURL", "http://%LOCALE%.malware-report.mozilla.com/?hl=%LOCALE%"); |
michael@0 | 605 | pref("browser.safebrowsing.reportMalwareErrorURL", "http://%LOCALE%.malware-error.mozilla.com/?hl=%LOCALE%"); |
michael@0 | 606 | |
michael@0 | 607 | pref("browser.safebrowsing.malware.reportURL", "https://safebrowsing.google.com/safebrowsing/diagnostic?client=%NAME%&hl=%LOCALE%&site="); |
michael@0 | 608 | |
michael@0 | 609 | pref("browser.safebrowsing.id", @MOZ_APP_UA_NAME@); |
michael@0 | 610 | |
michael@0 | 611 | // Name of the about: page contributed by safebrowsing to handle display of error |
michael@0 | 612 | // pages on phishing/malware hits. (bug 399233) |
michael@0 | 613 | pref("urlclassifier.alternate_error_page", "blocked"); |
michael@0 | 614 | |
michael@0 | 615 | // The number of random entries to send with a gethash request. |
michael@0 | 616 | pref("urlclassifier.gethashnoise", 4); |
michael@0 | 617 | |
michael@0 | 618 | // If an urlclassifier table has not been updated in this number of seconds, |
michael@0 | 619 | // a gethash request will be forced to check that the result is still in |
michael@0 | 620 | // the database. |
michael@0 | 621 | pref("urlclassifier.max-complete-age", 2700); |
michael@0 | 622 | #endif |
michael@0 | 623 | |
michael@0 | 624 | // True if this is the first time we are showing about:firstrun |
michael@0 | 625 | pref("browser.firstrun.show.uidiscovery", true); |
michael@0 | 626 | pref("browser.firstrun.show.localepicker", false); |
michael@0 | 627 | |
michael@0 | 628 | // True if you always want dump() to work |
michael@0 | 629 | // |
michael@0 | 630 | // On Android, you also need to do the following for the output |
michael@0 | 631 | // to show up in logcat: |
michael@0 | 632 | // |
michael@0 | 633 | // $ adb shell stop |
michael@0 | 634 | // $ adb shell setprop log.redirect-stdio true |
michael@0 | 635 | // $ adb shell start |
michael@0 | 636 | pref("browser.dom.window.dump.enabled", true); |
michael@0 | 637 | |
michael@0 | 638 | // SimplePush |
michael@0 | 639 | pref("services.push.enabled", false); |
michael@0 | 640 | |
michael@0 | 641 | // controls if we want camera support |
michael@0 | 642 | pref("device.camera.enabled", true); |
michael@0 | 643 | pref("media.realtime_decoder.enabled", true); |
michael@0 | 644 | |
michael@0 | 645 | pref("dom.report_all_js_exceptions", true); |
michael@0 | 646 | pref("javascript.options.showInConsole", true); |
michael@0 | 647 | |
michael@0 | 648 | pref("full-screen-api.enabled", true); |
michael@0 | 649 | |
michael@0 | 650 | pref("direct-texture.force.enabled", false); |
michael@0 | 651 | pref("direct-texture.force.disabled", false); |
michael@0 | 652 | |
michael@0 | 653 | // This fraction in 1000ths of velocity remains after every animation frame when the velocity is low. |
michael@0 | 654 | pref("ui.scrolling.friction_slow", -1); |
michael@0 | 655 | // This fraction in 1000ths of velocity remains after every animation frame when the velocity is high. |
michael@0 | 656 | pref("ui.scrolling.friction_fast", -1); |
michael@0 | 657 | // The maximum velocity change factor between events, per ms, in 1000ths. |
michael@0 | 658 | // Direction changes are excluded. |
michael@0 | 659 | pref("ui.scrolling.max_event_acceleration", -1); |
michael@0 | 660 | // The rate of deceleration when the surface has overscrolled, in 1000ths. |
michael@0 | 661 | pref("ui.scrolling.overscroll_decel_rate", -1); |
michael@0 | 662 | // The fraction of the surface which can be overscrolled before it must snap back, in 1000ths. |
michael@0 | 663 | pref("ui.scrolling.overscroll_snap_limit", -1); |
michael@0 | 664 | // The minimum amount of space that must be present for an axis to be considered scrollable, |
michael@0 | 665 | // in 1/1000ths of pixels. |
michael@0 | 666 | pref("ui.scrolling.min_scrollable_distance", -1); |
michael@0 | 667 | // The axis lock mode for panning behaviour - set between standard, free and sticky |
michael@0 | 668 | pref("ui.scrolling.axis_lock_mode", "standard"); |
michael@0 | 669 | // Negate scrollY, true will make the mouse scroll wheel move the screen the same direction as with most desktops or laptops. |
michael@0 | 670 | pref("ui.scrolling.negate_wheel_scrollY", true); |
michael@0 | 671 | // Determine the dead zone for gamepad joysticks. Higher values result in larger dead zones; use a negative value to |
michael@0 | 672 | // auto-detect based on reported hardware values |
michael@0 | 673 | pref("ui.scrolling.gamepad_dead_zone", 115); |
michael@0 | 674 | |
michael@0 | 675 | |
michael@0 | 676 | // Enable accessibility mode if platform accessibility is enabled. |
michael@0 | 677 | pref("accessibility.accessfu.activate", 2); |
michael@0 | 678 | pref("accessibility.accessfu.quicknav_modes", "Link,Heading,FormElement,Landmark,ListItem"); |
michael@0 | 679 | // Setting for an utterance order (0 - description first, 1 - description last). |
michael@0 | 680 | pref("accessibility.accessfu.utterance", 1); |
michael@0 | 681 | // Whether to skip images with empty alt text |
michael@0 | 682 | pref("accessibility.accessfu.skip_empty_images", true); |
michael@0 | 683 | |
michael@0 | 684 | // Transmit UDP busy-work to the LAN when anticipating low latency |
michael@0 | 685 | // network reads and on wifi to mitigate 802.11 Power Save Polling delays |
michael@0 | 686 | pref("network.tickle-wifi.enabled", true); |
michael@0 | 687 | |
michael@0 | 688 | // Mobile manages state by autodetection |
michael@0 | 689 | pref("network.manage-offline-status", true); |
michael@0 | 690 | |
michael@0 | 691 | // increase the timeout clamp for background tabs to 15 minutes |
michael@0 | 692 | pref("dom.min_background_timeout_value", 900000); |
michael@0 | 693 | |
michael@0 | 694 | // The default state of reader mode works on loaded a page. |
michael@0 | 695 | pref("reader.parse-on-load.enabled", true); |
michael@0 | 696 | |
michael@0 | 697 | // Force to enable reader mode to parse on loaded a page. |
michael@0 | 698 | // Allow reader mode even on low-memory platforms |
michael@0 | 699 | pref("reader.parse-on-load.force-enabled", false); |
michael@0 | 700 | |
michael@0 | 701 | // The default of font size in reader (1-5) |
michael@0 | 702 | pref("reader.font_size", 3); |
michael@0 | 703 | |
michael@0 | 704 | // The default color scheme in reader (light, dark, sepia, auto) |
michael@0 | 705 | // auto = color automatically adjusts according to ambient light level |
michael@0 | 706 | pref("reader.color_scheme", "auto"); |
michael@0 | 707 | |
michael@0 | 708 | // The font type in reader (sans-serif, serif) |
michael@0 | 709 | pref("reader.font_type", "sans-serif"); |
michael@0 | 710 | |
michael@0 | 711 | // Used to show a first-launch tip in reader |
michael@0 | 712 | pref("reader.has_used_toolbar", false); |
michael@0 | 713 | |
michael@0 | 714 | // Media plugins for libstagefright playback on android |
michael@0 | 715 | pref("media.plugins.enabled", true); |
michael@0 | 716 | |
michael@0 | 717 | // Stagefright's OMXCodec::CreationFlags. The interesting flag values are: |
michael@0 | 718 | // 0 = Let Stagefright choose hardware or software decoding (default) |
michael@0 | 719 | // 8 = Force software decoding |
michael@0 | 720 | // 16 = Force hardware decoding |
michael@0 | 721 | pref("media.stagefright.omxcodec.flags", 0); |
michael@0 | 722 | |
michael@0 | 723 | // Coalesce touch events to prevent them from flooding the event queue |
michael@0 | 724 | pref("dom.event.touch.coalescing.enabled", false); |
michael@0 | 725 | |
michael@0 | 726 | // default orientation for the app, default to undefined |
michael@0 | 727 | // the java GeckoScreenOrientationListener needs this to be defined |
michael@0 | 728 | pref("app.orientation.default", ""); |
michael@0 | 729 | |
michael@0 | 730 | // On memory pressure, release dirty but unused pages held by jemalloc |
michael@0 | 731 | // back to the system. |
michael@0 | 732 | pref("memory.free_dirty_pages", true); |
michael@0 | 733 | |
michael@0 | 734 | pref("layout.imagevisibility.enabled", true); |
michael@0 | 735 | pref("layout.imagevisibility.numscrollportwidths", 1); |
michael@0 | 736 | pref("layout.imagevisibility.numscrollportheights", 1); |
michael@0 | 737 | |
michael@0 | 738 | pref("layers.enable-tiles", true); |
michael@0 | 739 | |
michael@0 | 740 | // Enable the dynamic toolbar |
michael@0 | 741 | pref("browser.chrome.dynamictoolbar", true); |
michael@0 | 742 | |
michael@0 | 743 | // The mode of browser titlebar |
michael@0 | 744 | // 0: Show a current page title. |
michael@0 | 745 | // 1: Show a current page url. |
michael@0 | 746 | pref("browser.chrome.titlebarMode", 0); |
michael@0 | 747 | |
michael@0 | 748 | // Hide common parts of URLs like "www." or "http://" |
michael@0 | 749 | pref("browser.urlbar.trimURLs", true); |
michael@0 | 750 | |
michael@0 | 751 | #ifdef MOZ_PKG_SPECIAL |
michael@0 | 752 | // Disable webgl on ARMv6 because running the reftests takes |
michael@0 | 753 | // too long for some reason (bug 843738) |
michael@0 | 754 | pref("webgl.disabled", true); |
michael@0 | 755 | #endif |
michael@0 | 756 | |
michael@0 | 757 | // initial web feed readers list |
michael@0 | 758 | pref("browser.contentHandlers.types.0.title", "chrome://browser/locale/region.properties"); |
michael@0 | 759 | pref("browser.contentHandlers.types.0.uri", "chrome://browser/locale/region.properties"); |
michael@0 | 760 | pref("browser.contentHandlers.types.0.type", "application/vnd.mozilla.maybe.feed"); |
michael@0 | 761 | pref("browser.contentHandlers.types.1.title", "chrome://browser/locale/region.properties"); |
michael@0 | 762 | pref("browser.contentHandlers.types.1.uri", "chrome://browser/locale/region.properties"); |
michael@0 | 763 | pref("browser.contentHandlers.types.1.type", "application/vnd.mozilla.maybe.feed"); |
michael@0 | 764 | pref("browser.contentHandlers.types.2.title", "chrome://browser/locale/region.properties"); |
michael@0 | 765 | pref("browser.contentHandlers.types.2.uri", "chrome://browser/locale/region.properties"); |
michael@0 | 766 | pref("browser.contentHandlers.types.2.type", "application/vnd.mozilla.maybe.feed"); |
michael@0 | 767 | pref("browser.contentHandlers.types.3.title", "chrome://browser/locale/region.properties"); |
michael@0 | 768 | pref("browser.contentHandlers.types.3.uri", "chrome://browser/locale/region.properties"); |
michael@0 | 769 | pref("browser.contentHandlers.types.3.type", "application/vnd.mozilla.maybe.feed"); |
michael@0 | 770 | |
michael@0 | 771 | // WebPayment |
michael@0 | 772 | pref("dom.mozPay.enabled", true); |
michael@0 | 773 | |
michael@0 | 774 | #ifndef RELEASE_BUILD |
michael@0 | 775 | pref("dom.payment.provider.0.name", "Firefox Marketplace"); |
michael@0 | 776 | pref("dom.payment.provider.0.description", "marketplace.firefox.com"); |
michael@0 | 777 | pref("dom.payment.provider.0.uri", "https://marketplace.firefox.com/mozpay/?req="); |
michael@0 | 778 | pref("dom.payment.provider.0.type", "mozilla/payments/pay/v1"); |
michael@0 | 779 | pref("dom.payment.provider.0.requestMethod", "GET"); |
michael@0 | 780 | #endif |
michael@0 | 781 | |
michael@0 | 782 | // Shortnumber matching needed for e.g. Brazil: |
michael@0 | 783 | // 01187654321 can be found with 87654321 |
michael@0 | 784 | pref("dom.phonenumber.substringmatching.BR", 8); |
michael@0 | 785 | pref("dom.phonenumber.substringmatching.CO", 10); |
michael@0 | 786 | pref("dom.phonenumber.substringmatching.VE", 7); |
michael@0 | 787 | |
michael@0 | 788 | // Support for the mozAudioChannel attribute on media elements is disabled in non-webapps |
michael@0 | 789 | pref("media.useAudioChannelService", false); |
michael@0 | 790 | |
michael@0 | 791 | // Turn on the CSP 1.0 parser for Content Security Policy headers |
michael@0 | 792 | pref("security.csp.speccompliant", true); |
michael@0 | 793 | |
michael@0 | 794 | // Enable hardware-accelerated Skia canvas |
michael@0 | 795 | pref("gfx.canvas.azure.backends", "skia"); |
michael@0 | 796 | pref("gfx.canvas.azure.accelerated", true); |
michael@0 | 797 | |
michael@0 | 798 | pref("general.useragent.override.youtube.com", "Android; Tablet;#Android; Mobile;"); |
michael@0 | 799 | |
michael@0 | 800 | // When true, phone number linkification is enabled. |
michael@0 | 801 | pref("browser.ui.linkify.phone", false); |
michael@0 | 802 | |
michael@0 | 803 | // Enables/disables Spatial Navigation |
michael@0 | 804 | pref("snav.enabled", true); |
michael@0 | 805 | |
michael@0 | 806 | // This url, if changed, MUST continue to point to an https url. Pulling arbitrary content to inject into |
michael@0 | 807 | // this page over http opens us up to a man-in-the-middle attack that we'd rather not face. If you are a downstream |
michael@0 | 808 | // repackager of this code using an alternate snippet url, please keep your users safe |
michael@0 | 809 | pref("browser.snippets.updateUrl", "https://snippets.mozilla.com/json/%SNIPPETS_VERSION%/%NAME%/%VERSION%/%APPBUILDID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/"); |
michael@0 | 810 | |
michael@0 | 811 | // How frequently we check for new snippets, in seconds (1 day) |
michael@0 | 812 | pref("browser.snippets.updateInterval", 86400); |
michael@0 | 813 | |
michael@0 | 814 | // URL used to check for user's country code |
michael@0 | 815 | pref("browser.snippets.geoUrl", "https://geo.mozilla.org/country.json"); |
michael@0 | 816 | |
michael@0 | 817 | // URL used to ping metrics with stats about which snippets have been shown |
michael@0 | 818 | pref("browser.snippets.statsUrl", "https://snippets-stats.mozilla.org/mobile"); |
michael@0 | 819 | |
michael@0 | 820 | // These prefs require a restart to take effect. |
michael@0 | 821 | pref("browser.snippets.enabled", true); |
michael@0 | 822 | pref("browser.snippets.syncPromo.enabled", true); |
michael@0 | 823 | |
michael@0 | 824 | #ifdef MOZ_ANDROID_SYNTHAPKS |
michael@0 | 825 | // The URL of the APK factory from which we obtain APKs for webapps. |
michael@0 | 826 | pref("browser.webapps.apkFactoryUrl", "https://controller.apk.firefox.com/application.apk"); |
michael@0 | 827 | |
michael@0 | 828 | // How frequently to check for webapp updates, in seconds (86400 is daily). |
michael@0 | 829 | pref("browser.webapps.updateInterval", 86400); |
michael@0 | 830 | |
michael@0 | 831 | // Whether or not to check for updates. Enabled by default, but the runtime |
michael@0 | 832 | // disables it for webapp profiles on firstrun, so only the main Fennec process |
michael@0 | 833 | // checks for updates (to avoid duplicate update notifications). |
michael@0 | 834 | // |
michael@0 | 835 | // In the future, we might want to make each webapp process check for updates |
michael@0 | 836 | // for its own webapp, in which case we'll need to have a third state for this |
michael@0 | 837 | // preference. Thus it's an integer rather than a boolean. |
michael@0 | 838 | // |
michael@0 | 839 | // Possible values: |
michael@0 | 840 | // 0: don't check for updates |
michael@0 | 841 | // 1: do check for updates |
michael@0 | 842 | pref("browser.webapps.checkForUpdates", 1); |
michael@0 | 843 | |
michael@0 | 844 | // The URL of the service that checks for updates. |
michael@0 | 845 | // To test updates, set this to http://apk-update-checker.paas.allizom.org, |
michael@0 | 846 | // which is a test server that always reports all apps as having updates. |
michael@0 | 847 | pref("browser.webapps.updateCheckUrl", "https://controller.apk.firefox.com/app_updates"); |
michael@0 | 848 | |
michael@0 | 849 | #endif |
michael@0 | 850 | |
michael@0 | 851 | // The mode of home provider syncing. |
michael@0 | 852 | // 0: Sync always |
michael@0 | 853 | // 1: Sync only when on wifi |
michael@0 | 854 | pref("home.sync.updateMode", 0); |
michael@0 | 855 | |
michael@0 | 856 | // How frequently to check if we should sync home provider data. |
michael@0 | 857 | pref("home.sync.checkIntervalSecs", 3600); |