mobile/android/app/mobile.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

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

mercurial