modules/libpref/src/init/all.js

Sat, 03 Jan 2015 20:18:00 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 03 Jan 2015 20:18:00 +0100
branch
TOR_BUG_3246
changeset 7
129ffea94266
permissions
-rw-r--r--

Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.

michael@0 1 /* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
michael@0 2 /* This Source Code Form is subject to the terms of the Mozilla Public
michael@0 3 * License, v. 2.0. If a copy of the MPL was not distributed with this
michael@0 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
michael@0 5
michael@0 6 /* The prefs in this file are shipped with the GRE and should apply to all
michael@0 7 * embedding situations. Application-specific preferences belong somewhere else,
michael@0 8 * for example xpfe/bootstrap/browser-prefs.js
michael@0 9 *
michael@0 10 * Platform-specific #ifdefs at the end of this file override the generic
michael@0 11 * entries at the top.
michael@0 12 */
michael@0 13
michael@0 14 /*
michael@0 15 * SYNTAX HINTS:
michael@0 16 *
michael@0 17 * - Dashes are delimiters; use underscores instead.
michael@0 18 * - The first character after a period must be alphabetic.
michael@0 19 * - Computed values (e.g. 50 * 1024) don't work.
michael@0 20 */
michael@0 21
michael@0 22 pref("keyword.enabled", false);
michael@0 23 pref("general.useragent.locale", "chrome://global/locale/intl.properties");
michael@0 24 pref("general.useragent.compatMode.firefox", false);
michael@0 25
michael@0 26 // This pref exists only for testing purposes. In order to disable all
michael@0 27 // overrides by default, don't initialize UserAgentOverrides.jsm.
michael@0 28 pref("general.useragent.site_specific_overrides", true);
michael@0 29
michael@0 30 pref("general.config.obscure_value", 13); // for MCD .cfg files
michael@0 31
michael@0 32 pref("general.warnOnAboutConfig", true);
michael@0 33
michael@0 34 // maximum number of dated backups to keep at any time
michael@0 35 pref("browser.bookmarks.max_backups", 5);
michael@0 36
michael@0 37 // Preference for switching the cache backend, can be changed freely at runtime
michael@0 38 // 0 - use the old (Darin's) cache [DEFAULT]
michael@0 39 // 1 - use the new cache back-end (cache v2)
michael@0 40 // 2 - do a random choise for A/B testing (browser chooses old or new back-end at startup
michael@0 41 // and keeps it per session)
michael@0 42 pref("browser.cache.use_new_backend", 0);
michael@0 43
michael@0 44 pref("browser.cache.disk.enable", true);
michael@0 45 // Is this the first-time smartsizing has been introduced?
michael@0 46 pref("browser.cache.disk.smart_size.first_run", true);
michael@0 47 // Does the user want smart-sizing?
michael@0 48 pref("browser.cache.disk.smart_size.enabled", true);
michael@0 49 // Which max value should we use for smart-sizing?
michael@0 50 pref("browser.cache.disk.smart_size.use_old_max", true);
michael@0 51 // Size (in KB) explicitly set by the user. Used when smart_size.enabled == false
michael@0 52 pref("browser.cache.disk.capacity", 256000);
michael@0 53 // Max-size (in KB) for entries in disk cache. Set to -1 for no limit.
michael@0 54 // (Note: entries bigger than 1/8 of disk-cache are never cached)
michael@0 55 pref("browser.cache.disk.max_entry_size", 51200); // 50 MB
michael@0 56 pref("browser.cache.memory.enable", true);
michael@0 57 // -1 = determine dynamically, 0 = none, n = memory capacity in kilobytes
michael@0 58 //pref("browser.cache.memory.capacity", -1);
michael@0 59 // Max-size (in KB) for entries in memory cache. Set to -1 for no limit.
michael@0 60 // (Note: entries bigger than than 90% of the mem-cache are never cached)
michael@0 61 pref("browser.cache.memory.max_entry_size", 5120);
michael@0 62 pref("browser.cache.disk_cache_ssl", true);
michael@0 63 // 0 = once-per-session, 1 = each-time, 2 = never, 3 = when-appropriate/automatically
michael@0 64 pref("browser.cache.check_doc_frequency", 3);
michael@0 65
michael@0 66 // Limit of recent metadata we keep in memory for faster access, in Kb
michael@0 67 pref("browser.cache.disk.metadata_memory_limit", 250); // 0.25 MB
michael@0 68
michael@0 69 pref("browser.cache.offline.enable", true);
michael@0 70 // enable offline apps by default, disable prompt
michael@0 71 pref("offline-apps.allow_by_default", true);
michael@0 72
michael@0 73 // offline cache capacity in kilobytes
michael@0 74 pref("browser.cache.offline.capacity", 512000);
michael@0 75
michael@0 76 // the user should be warned if offline app disk usage exceeds this amount
michael@0 77 // (in kilobytes)
michael@0 78 pref("offline-apps.quota.warn", 51200);
michael@0 79
michael@0 80 // zlib compression level used for cache compression:
michael@0 81 // 0 => disable compression
michael@0 82 // 1 => best speed
michael@0 83 // 9 => best compression
michael@0 84 // cache compression turned off for now - see bug #715198
michael@0 85 pref("browser.cache.compression_level", 0);
michael@0 86
michael@0 87 // Whether or not testing features are enabled.
michael@0 88 pref("dom.quotaManager.testing", false);
michael@0 89
michael@0 90 // Whether or not indexedDB is enabled.
michael@0 91 pref("dom.indexedDB.enabled", true);
michael@0 92 // Space to allow indexedDB databases before prompting (in MB).
michael@0 93 pref("dom.indexedDB.warningQuota", 50);
michael@0 94 // Whether or not indexedDB experimental features are enabled.
michael@0 95 pref("dom.indexedDB.experimental", false);
michael@0 96
michael@0 97 // Whether or not Web Workers are enabled.
michael@0 98 pref("dom.workers.enabled", true);
michael@0 99 // The number of workers per domain allowed to run concurrently.
michael@0 100 pref("dom.workers.maxPerDomain", 20);
michael@0 101
michael@0 102 // Whether or not Shared Web Workers are enabled.
michael@0 103 pref("dom.workers.sharedWorkers.enabled", true);
michael@0 104
michael@0 105 // Whether nonzero values can be returned from performance.timing.*
michael@0 106 pref("dom.enable_performance", true);
michael@0 107
michael@0 108 // Whether resource timing will be gathered and returned by performance.GetEntries*
michael@0 109 pref("dom.enable_resource_timing", false);
michael@0 110
michael@0 111 // Whether the Gamepad API is enabled
michael@0 112 pref("dom.gamepad.enabled", true);
michael@0 113 #ifdef RELEASE_BUILD
michael@0 114 pref("dom.gamepad.non_standard_events.enabled", false);
michael@0 115 #else
michael@0 116 pref("dom.gamepad.non_standard_events.enabled", true);
michael@0 117 #endif
michael@0 118
michael@0 119 // Whether the UndoManager API is enabled
michael@0 120 pref("dom.undo_manager.enabled", false);
michael@0 121
michael@0 122 // Fastback caching - if this pref is negative, then we calculate the number
michael@0 123 // of content viewers to cache based on the amount of available memory.
michael@0 124 pref("browser.sessionhistory.max_total_viewers", -1);
michael@0 125
michael@0 126 pref("ui.use_native_colors", true);
michael@0 127 pref("ui.click_hold_context_menus", false);
michael@0 128 pref("browser.display.use_document_fonts", 1); // 0 = never, 1 = quick, 2 = always
michael@0 129 pref("browser.display.use_document_colors", true);
michael@0 130 pref("browser.display.use_system_colors", false);
michael@0 131 pref("browser.display.foreground_color", "#000000");
michael@0 132 pref("browser.display.background_color", "#FFFFFF");
michael@0 133 pref("browser.display.force_inline_alttext", false); // true = force ALT text for missing images to be layed out inline
michael@0 134 // 0 = no external leading,
michael@0 135 // 1 = use external leading only when font provides,
michael@0 136 // 2 = add extra leading both internal leading and external leading are zero
michael@0 137 pref("browser.display.normal_lineheight_calc_control", 2);
michael@0 138 pref("browser.display.show_image_placeholders", true); // true = show image placeholders while image is loaded and when image is broken
michael@0 139 // min font device pixel size at which to turn on high quality
michael@0 140 pref("browser.display.auto_quality_min_font_size", 20);
michael@0 141 pref("browser.anchor_color", "#0000EE");
michael@0 142 pref("browser.active_color", "#EE0000");
michael@0 143 pref("browser.visited_color", "#551A8B");
michael@0 144 pref("browser.underline_anchors", true);
michael@0 145 pref("browser.enable_automatic_image_resizing", false);
michael@0 146 pref("browser.enable_click_image_resizing", true);
michael@0 147
michael@0 148 // See http://dev.w3.org/html5/spec/forms.html#attr-fe-autofocus
michael@0 149 pref("browser.autofocus", true);
michael@0 150
michael@0 151 // See http://whatwg.org/specs/web-apps/current-work/#ping
michael@0 152 pref("browser.send_pings", false);
michael@0 153 pref("browser.send_pings.max_per_link", 1); // limit the number of pings that are sent per link click
michael@0 154 pref("browser.send_pings.require_same_host", false); // only send pings to the same host if this is true
michael@0 155
michael@0 156 pref("browser.display.use_focus_colors", false);
michael@0 157 pref("browser.display.focus_background_color", "#117722");
michael@0 158 pref("browser.display.focus_text_color", "#ffffff");
michael@0 159 pref("browser.display.focus_ring_width", 1);
michael@0 160 pref("browser.display.focus_ring_on_anything", false);
michael@0 161 // focus ring border style.
michael@0 162 // 0 = solid border, 1 = dotted border
michael@0 163 pref("browser.display.focus_ring_style", 1);
michael@0 164
michael@0 165 pref("browser.helperApps.alwaysAsk.force", false);
michael@0 166 pref("browser.helperApps.neverAsk.saveToDisk", "");
michael@0 167 pref("browser.helperApps.neverAsk.openFile", "");
michael@0 168 pref("browser.helperApps.deleteTempFileOnExit", false);
michael@0 169
michael@0 170 // xxxbsmedberg: where should prefs for the toolkit go?
michael@0 171 pref("browser.chrome.toolbar_tips", true);
michael@0 172 // 0 = Pictures Only, 1 = Text Only, 2 = Pictures and Text
michael@0 173 pref("browser.chrome.toolbar_style", 2);
michael@0 174 // max image size for which it is placed in the tab icon for tabbrowser.
michael@0 175 // if 0, no images are used for tab icons for image documents.
michael@0 176 pref("browser.chrome.image_icons.max_size", 1024);
michael@0 177
michael@0 178 pref("browser.triple_click_selects_paragraph", true);
michael@0 179
michael@0 180 // Print/Preview Shrink-To-Fit won't shrink below 20% for text-ish documents.
michael@0 181 pref("print.shrink-to-fit.scale-limit-percent", 20);
michael@0 182
michael@0 183 // Media cache size in kilobytes
michael@0 184 pref("media.cache_size", 512000);
michael@0 185
michael@0 186 // Master HTML5 media volume scale.
michael@0 187 pref("media.volume_scale", "1.0");
michael@0 188
michael@0 189 // Timeout for wakelock release
michael@0 190 pref("media.wakelock_timeout", 2000);
michael@0 191
michael@0 192 #ifdef MOZ_WMF
michael@0 193 pref("media.windows-media-foundation.enabled", true);
michael@0 194 pref("media.windows-media-foundation.use-dxva", true);
michael@0 195 pref("media.windows-media-foundation.play-stand-alone", true);
michael@0 196 #endif
michael@0 197 #ifdef MOZ_DIRECTSHOW
michael@0 198 pref("media.directshow.enabled", true);
michael@0 199 #endif
michael@0 200 #ifdef MOZ_FMP4
michael@0 201 pref("media.fragmented-mp4.enabled", true);
michael@0 202 pref("media.fragmented-mp4.ffmpeg.enabled", false);
michael@0 203 // Denotes that the fragmented MP4 parser can be created by <video> elements.
michael@0 204 // This is for testing, since the parser can't yet handle non-fragmented MP4,
michael@0 205 // so it will fail to play most MP4 files.
michael@0 206 pref("media.fragmented-mp4.exposed", false);
michael@0 207 // Specifies whether the fragmented MP4 parser uses a test decoder that
michael@0 208 // just outputs blank frames/audio instead of actually decoding. The blank
michael@0 209 // decoder works on all platforms.
michael@0 210 pref("media.fragmented-mp4.use-blank-decoder", false);
michael@0 211 #endif
michael@0 212 #ifdef MOZ_RAW
michael@0 213 pref("media.raw.enabled", true);
michael@0 214 #endif
michael@0 215 pref("media.ogg.enabled", true);
michael@0 216 #ifdef MOZ_OPUS
michael@0 217 pref("media.opus.enabled", true);
michael@0 218 #endif
michael@0 219 #ifdef MOZ_WAVE
michael@0 220 pref("media.wave.enabled", true);
michael@0 221 #endif
michael@0 222 #ifdef MOZ_WEBM
michael@0 223 pref("media.webm.enabled", true);
michael@0 224 #endif
michael@0 225 #ifdef MOZ_GSTREAMER
michael@0 226 pref("media.gstreamer.enabled", true);
michael@0 227 #endif
michael@0 228 #ifdef MOZ_APPLEMEDIA
michael@0 229 pref("media.apple.mp3.enabled", true);
michael@0 230 #endif
michael@0 231 #ifdef MOZ_WEBRTC
michael@0 232 pref("media.navigator.enabled", true);
michael@0 233 pref("media.navigator.video.enabled", true);
michael@0 234 pref("media.navigator.load_adapt", false);
michael@0 235 pref("media.navigator.load_adapt.measure_interval",1000);
michael@0 236 pref("media.navigator.load_adapt.avg_seconds",3);
michael@0 237 pref("media.navigator.load_adapt.high_load","0.90");
michael@0 238 pref("media.navigator.load_adapt.low_load","0.40");
michael@0 239 pref("media.navigator.video.default_fps",30);
michael@0 240 pref("media.navigator.video.default_minfps",10);
michael@0 241 #ifdef MOZ_WIDGET_GONK
michael@0 242 pref("media.navigator.video.default_width",320);
michael@0 243 pref("media.navigator.video.default_height",240);
michael@0 244 pref("media.peerconnection.enabled", true);
michael@0 245 pref("media.peerconnection.video.enabled", true);
michael@0 246 pref("media.navigator.video.max_fs", 1200); // 640x480 == 1200mb
michael@0 247 pref("media.navigator.video.max_fr", 30);
michael@0 248 pref("media.peerconnection.video.h264_enabled", false);
michael@0 249 #else
michael@0 250 pref("media.navigator.video.default_width",0); // adaptive default
michael@0 251 pref("media.navigator.video.default_height",0); // adaptive default
michael@0 252 pref("media.peerconnection.enabled", true);
michael@0 253 pref("media.peerconnection.video.enabled", true);
michael@0 254 pref("media.navigator.video.max_fs", 0); // unrestricted
michael@0 255 pref("media.navigator.video.max_fr", 0); // unrestricted
michael@0 256 #endif
michael@0 257 pref("media.navigator.permission.disabled", false);
michael@0 258 pref("media.peerconnection.default_iceservers", "[{\"url\": \"stun:stun.services.mozilla.com\"}]");
michael@0 259 pref("media.peerconnection.trickle_ice", true);
michael@0 260 pref("media.peerconnection.use_document_iceservers", true);
michael@0 261 // Do not enable identity before ensuring that the UX cannot be spoofed
michael@0 262 // see Bug 884573 for details
michael@0 263 // Do not enable identity before fixing domain comparison: see Bug 958741
michael@0 264 // Do not enable identity before fixing origin spoofing: see Bug 968335
michael@0 265 pref("media.peerconnection.identity.enabled", false);
michael@0 266 pref("media.peerconnection.identity.timeout", 10000);
michael@0 267 // These values (aec, agc, and noice) are from media/webrtc/trunk/webrtc/common_types.h
michael@0 268 // kXxxUnchanged = 0, kXxxDefault = 1, and higher values are specific to each
michael@0 269 // setting (for Xxx = Ec, Agc, or Ns). Defaults are all set to kXxxDefault here.
michael@0 270 pref("media.peerconnection.turn.disable", false);
michael@0 271 pref("media.getusermedia.aec_enabled", true);
michael@0 272 pref("media.getusermedia.aec", 1);
michael@0 273 pref("media.getusermedia.agc_enabled", false);
michael@0 274 pref("media.getusermedia.agc", 1);
michael@0 275 pref("media.getusermedia.noise_enabled", true);
michael@0 276 pref("media.getusermedia.noise", 1);
michael@0 277 // Adjustments for OS-specific input delay (lower bound)
michael@0 278 // Adjustments for OS-specific AudioStream+cubeb+output delay (lower bound)
michael@0 279 #if defined(XP_MACOSX)
michael@0 280 pref("media.peerconnection.capture_delay", 50);
michael@0 281 pref("media.getusermedia.playout_delay", 10);
michael@0 282 #elif defined(XP_WIN)
michael@0 283 pref("media.peerconnection.capture_delay", 50);
michael@0 284 pref("media.getusermedia.playout_delay", 40);
michael@0 285 #elif defined(ANDROID)
michael@0 286 pref("media.peerconnection.capture_delay", 100);
michael@0 287 pref("media.getusermedia.playout_delay", 100);
michael@0 288 // Whether to enable Webrtc Hardware acceleration support
michael@0 289 pref("media.navigator.hardware.vp8_encode.acceleration_enabled", false);
michael@0 290 pref("media.navigator.hardware.vp8_decode.acceleration_enabled", false);
michael@0 291 #elif defined(XP_LINUX)
michael@0 292 pref("media.peerconnection.capture_delay", 70);
michael@0 293 pref("media.getusermedia.playout_delay", 50);
michael@0 294 #else
michael@0 295 // *BSD, others - merely a guess for now
michael@0 296 pref("media.peerconnection.capture_delay", 50);
michael@0 297 pref("media.getusermedia.playout_delay", 50);
michael@0 298 #endif
michael@0 299 #else
michael@0 300 #ifdef ANDROID
michael@0 301 pref("media.navigator.enabled", true);
michael@0 302 #endif
michael@0 303 #endif
michael@0 304
michael@0 305 pref("media.tabstreaming.width", 320);
michael@0 306 pref("media.tabstreaming.height", 240);
michael@0 307 pref("media.tabstreaming.time_per_frame", 40);
michael@0 308
michael@0 309 // TextTrack support
michael@0 310 pref("media.webvtt.enabled", true);
michael@0 311 pref("media.webvtt.regions.enabled", false);
michael@0 312
michael@0 313 // Whether to enable MediaSource support
michael@0 314 pref("media.mediasource.enabled", false);
michael@0 315
michael@0 316 #ifdef MOZ_WEBSPEECH
michael@0 317 pref("media.webspeech.recognition.enable", false);
michael@0 318 #endif
michael@0 319 #ifdef MOZ_WEBM_ENCODER
michael@0 320 pref("media.encoder.webm.enabled", true);
michael@0 321 #endif
michael@0 322 #ifdef MOZ_OMX_ENCODER
michael@0 323 pref("media.encoder.omx.enabled", true);
michael@0 324 #endif
michael@0 325
michael@0 326 // Whether to autostart a media element with an |autoplay| attribute
michael@0 327 pref("media.autoplay.enabled", true);
michael@0 328
michael@0 329 // The default number of decoded video frames that are enqueued in
michael@0 330 // MediaDecoderReader's mVideoQueue.
michael@0 331 pref("media.video-queue.default-size", 10);
michael@0 332
michael@0 333 // Whether to disable the video stats to prevent fingerprinting
michael@0 334 pref("media.video_stats.enabled", true);
michael@0 335
michael@0 336 // Whether to enable the audio writing APIs on the audio element
michael@0 337 pref("media.audio_data.enabled", false);
michael@0 338
michael@0 339 // Whether to lock touch scrolling to one axis at a time
michael@0 340 // 0 = FREE (No locking at all)
michael@0 341 // 1 = STANDARD (Once locked, remain locked until scrolling ends)
michael@0 342 // 2 = STICKY (Allow lock to be broken, with hysteresis)
michael@0 343 pref("apz.axis_lock_mode", 0);
michael@0 344
michael@0 345 // Whether to print the APZC tree for debugging
michael@0 346 pref("apz.printtree", false);
michael@0 347
michael@0 348 // Layerize scrollable subframes to allow async panning
michael@0 349 pref("apz.subframe.enabled", false);
michael@0 350
michael@0 351 #ifdef XP_MACOSX
michael@0 352 // Whether to run in native HiDPI mode on machines with "Retina"/HiDPI display;
michael@0 353 // <= 0 : hidpi mode disabled, display will just use pixel-based upscaling
michael@0 354 // == 1 : hidpi supported if all screens share the same backingScaleFactor
michael@0 355 // >= 2 : hidpi supported even with mixed backingScaleFactors (somewhat broken)
michael@0 356 pref("gfx.hidpi.enabled", 2);
michael@0 357 #endif
michael@0 358
michael@0 359 // Whether to enable LayerScope tool and default listening port
michael@0 360 pref("gfx.layerscope.enabled", false);
michael@0 361 pref("gfx.layerscope.port", 23456);
michael@0 362
michael@0 363 // 0 = Off, 1 = Full, 2 = Tagged Images Only.
michael@0 364 // See eCMSMode in gfx/thebes/gfxPlatform.h
michael@0 365 pref("gfx.color_management.mode", 2);
michael@0 366 pref("gfx.color_management.display_profile", "");
michael@0 367 pref("gfx.color_management.rendering_intent", 0);
michael@0 368 pref("gfx.color_management.enablev4", false);
michael@0 369
michael@0 370 pref("gfx.downloadable_fonts.enabled", true);
michael@0 371 pref("gfx.downloadable_fonts.fallback_delay", 3000);
michael@0 372
michael@0 373 #ifdef ANDROID
michael@0 374 pref("gfx.bundled_fonts.enabled", true);
michael@0 375 pref("gfx.bundled_fonts.force-enabled", false);
michael@0 376 #endif
michael@0 377
michael@0 378 pref("gfx.filter.nearest.force-enabled", false);
michael@0 379
michael@0 380 // prefs controlling the font (name/cmap) loader that runs shortly after startup
michael@0 381 pref("gfx.font_loader.families_per_slice", 3); // read in info 3 families at a time
michael@0 382 #ifdef XP_WIN
michael@0 383 pref("gfx.font_loader.delay", 120000); // 2 minutes after startup
michael@0 384 pref("gfx.font_loader.interval", 1000); // every 1 second until complete
michael@0 385 #else
michael@0 386 pref("gfx.font_loader.delay", 8000); // 8 secs after startup
michael@0 387 pref("gfx.font_loader.interval", 50); // run every 50 ms
michael@0 388 #endif
michael@0 389
michael@0 390 // whether to always search all font cmaps during system font fallback
michael@0 391 pref("gfx.font_rendering.fallback.always_use_cmaps", false);
michael@0 392
michael@0 393 // cache shaped word results
michael@0 394 pref("gfx.font_rendering.wordcache.charlimit", 32);
michael@0 395
michael@0 396 // cache shaped word results
michael@0 397 pref("gfx.font_rendering.wordcache.maxentries", 10000);
michael@0 398
michael@0 399 pref("gfx.font_rendering.graphite.enabled", true);
michael@0 400
michael@0 401 // Check intl/unicharutil/util/nsUnicodeProperties.h for definitions of script bits
michael@0 402 // in the ShapingType enumeration
michael@0 403 // Currently-defined bits:
michael@0 404 // SHAPING_DEFAULT = 0x0001,
michael@0 405 // SHAPING_ARABIC = 0x0002,
michael@0 406 // SHAPING_HEBREW = 0x0004,
michael@0 407 // SHAPING_HANGUL = 0x0008,
michael@0 408 // SHAPING_MONGOLIAN = 0x0010,
michael@0 409 // SHAPING_INDIC = 0x0020,
michael@0 410 // SHAPING_THAI = 0x0040
michael@0 411 // (see http://mxr.mozilla.org/mozilla-central/ident?i=ShapingType)
michael@0 412 // Scripts not listed are grouped in the default category.
michael@0 413 // Set the pref to 255 to have all text shaped via the harfbuzz backend.
michael@0 414 // Default setting:
michael@0 415 // We use harfbuzz for all scripts (except when using AAT fonts on OS X).
michael@0 416 pref("gfx.font_rendering.harfbuzz.scripts", 255);
michael@0 417
michael@0 418 #ifdef XP_WIN
michael@0 419 pref("gfx.font_rendering.directwrite.enabled", false);
michael@0 420 pref("gfx.font_rendering.directwrite.use_gdi_table_loading", true);
michael@0 421 #endif
michael@0 422
michael@0 423 pref("gfx.font_rendering.opentype_svg.enabled", true);
michael@0 424
michael@0 425 #ifdef XP_WIN
michael@0 426 // comma separated list of backends to use in order of preference
michael@0 427 // e.g., pref("gfx.canvas.azure.backends", "direct2d,skia,cairo");
michael@0 428 pref("gfx.canvas.azure.backends", "direct2d,skia,cairo");
michael@0 429 pref("gfx.content.azure.backends", "direct2d,cairo");
michael@0 430 #else
michael@0 431 #ifdef XP_MACOSX
michael@0 432 pref("gfx.content.azure.backends", "cg");
michael@0 433 pref("gfx.canvas.azure.backends", "cg");
michael@0 434 // Accelerated cg canvas where available (10.7+)
michael@0 435 pref("gfx.canvas.azure.accelerated", false);
michael@0 436 #else
michael@0 437 pref("gfx.canvas.azure.backends", "cairo");
michael@0 438 pref("gfx.content.azure.backends", "cairo");
michael@0 439 #endif
michael@0 440 #endif
michael@0 441
michael@0 442 #ifdef MOZ_WIDGET_GTK2
michael@0 443 pref("gfx.content.azure.backends", "cairo");
michael@0 444 #endif
michael@0 445 #ifdef ANDROID
michael@0 446 pref("gfx.content.azure.backends", "cairo");
michael@0 447 #endif
michael@0 448
michael@0 449 pref("gfx.work-around-driver-bugs", true);
michael@0 450 pref("gfx.prefer-mesa-llvmpipe", false);
michael@0 451
michael@0 452 pref("accessibility.browsewithcaret", false);
michael@0 453 pref("accessibility.warn_on_browsewithcaret", true);
michael@0 454
michael@0 455 pref("accessibility.browsewithcaret_shortcut.enabled", true);
michael@0 456
michael@0 457 #ifndef XP_MACOSX
michael@0 458 // Tab focus model bit field:
michael@0 459 // 1 focuses text controls, 2 focuses other form elements, 4 adds links.
michael@0 460 // Most users will want 1, 3, or 7.
michael@0 461 // On OS X, we use Full Keyboard Access system preference,
michael@0 462 // unless accessibility.tabfocus is set by the user.
michael@0 463 pref("accessibility.tabfocus", 7);
michael@0 464 pref("accessibility.tabfocus_applies_to_xul", false);
michael@0 465
michael@0 466 // On OS X, we follow the "Click in the scrollbar to:" system preference
michael@0 467 // unless this preference was set manually
michael@0 468 pref("ui.scrollToClick", 0);
michael@0 469
michael@0 470 #else
michael@0 471 // Only on mac tabfocus is expected to handle UI widgets as well as web content
michael@0 472 pref("accessibility.tabfocus_applies_to_xul", true);
michael@0 473 #endif
michael@0 474
michael@0 475 // provide ability to turn on support for canvas focus rings
michael@0 476 pref("canvas.focusring.enabled", false);
michael@0 477 pref("canvas.customfocusring.enabled", false);
michael@0 478 pref("canvas.hitregions.enabled", false);
michael@0 479 // Add support for canvas path objects
michael@0 480 pref("canvas.path.enabled", true);
michael@0 481
michael@0 482 // We want the ability to forcibly disable platform a11y, because
michael@0 483 // some non-a11y-related components attempt to bring it up. See bug
michael@0 484 // 538530 for details about Windows; we have a pref here that allows it
michael@0 485 // to be disabled for performance and testing resons.
michael@0 486 // See bug 761589 for the crossplatform aspect.
michael@0 487 //
michael@0 488 // This pref is checked only once, and the browser needs a restart to
michael@0 489 // pick up any changes.
michael@0 490 //
michael@0 491 // Values are -1 always on. 1 always off, 0 is auto as some platform perform
michael@0 492 // further checks.
michael@0 493 pref("accessibility.force_disabled", 0);
michael@0 494
michael@0 495 #ifdef XP_WIN
michael@0 496 // Some accessibility tools poke at windows in the plugin process during setup
michael@0 497 // which can cause hangs. To hack around this set accessibility.delay_plugins
michael@0 498 // to true, you can also try increasing accessibility.delay_plugin_time if your
michael@0 499 // machine is slow and you still experience hangs.
michael@0 500 // See bug 781791.
michael@0 501 pref("accessibility.delay_plugins", false);
michael@0 502 pref("accessibility.delay_plugin_time", 10000);
michael@0 503 #endif
michael@0 504
michael@0 505 pref("focusmanager.testmode", false);
michael@0 506
michael@0 507 pref("accessibility.usetexttospeech", "");
michael@0 508 pref("accessibility.usebrailledisplay", "");
michael@0 509 pref("accessibility.accesskeycausesactivation", true);
michael@0 510 pref("accessibility.mouse_focuses_formcontrol", false);
michael@0 511
michael@0 512 // Type Ahead Find
michael@0 513 pref("accessibility.typeaheadfind", true);
michael@0 514 pref("accessibility.typeaheadfind.autostart", true);
michael@0 515 // casesensitive: controls the find bar's case-sensitivity
michael@0 516 // 0 - "never" (case-insensitive)
michael@0 517 // 1 - "always" (case-sensitive)
michael@0 518 // other - "auto" (case-sensitive for mixed-case input, insensitive otherwise)
michael@0 519 pref("accessibility.typeaheadfind.casesensitive", 0);
michael@0 520 pref("accessibility.typeaheadfind.linksonly", true);
michael@0 521 pref("accessibility.typeaheadfind.startlinksonly", false);
michael@0 522 pref("accessibility.typeaheadfind.timeout", 4000);
michael@0 523 pref("accessibility.typeaheadfind.enabletimeout", true);
michael@0 524 pref("accessibility.typeaheadfind.soundURL", "beep");
michael@0 525 pref("accessibility.typeaheadfind.enablesound", true);
michael@0 526 #ifdef XP_MACOSX
michael@0 527 pref("accessibility.typeaheadfind.prefillwithselection", false);
michael@0 528 #else
michael@0 529 pref("accessibility.typeaheadfind.prefillwithselection", true);
michael@0 530 #endif
michael@0 531
michael@0 532 // use Mac OS X Appearance panel text smoothing setting when rendering text, disabled by default
michael@0 533 pref("gfx.use_text_smoothing_setting", false);
michael@0 534
michael@0 535 // loading and rendering of framesets and iframes
michael@0 536 pref("browser.frames.enabled", true);
michael@0 537
michael@0 538 // Number of characters to consider emphasizing for rich autocomplete results
michael@0 539 pref("toolkit.autocomplete.richBoundaryCutoff", 200);
michael@0 540
michael@0 541 // Variable controlling logging for osfile.
michael@0 542 pref("toolkit.osfile.log", false);
michael@0 543
michael@0 544 pref("toolkit.scrollbox.smoothScroll", true);
michael@0 545 pref("toolkit.scrollbox.scrollIncrement", 20);
michael@0 546 pref("toolkit.scrollbox.verticalScrollDistance", 3);
michael@0 547 pref("toolkit.scrollbox.horizontalScrollDistance", 5);
michael@0 548 pref("toolkit.scrollbox.clickToScroll.scrollDelay", 150);
michael@0 549
michael@0 550 pref("toolkit.telemetry.server", "https://incoming.telemetry.mozilla.org");
michael@0 551 // Telemetry server owner. Please change if you set toolkit.telemetry.server to a different server
michael@0 552 pref("toolkit.telemetry.server_owner", "Mozilla");
michael@0 553 // Information page about telemetry (temporary ; will be about:telemetry in the end)
michael@0 554 pref("toolkit.telemetry.infoURL", "https://www.mozilla.org/legal/privacy/firefox.html#telemetry");
michael@0 555 // Determines whether full SQL strings are returned when they might contain sensitive info
michael@0 556 // i.e. dynamically constructed SQL strings or SQL executed by addons against addon DBs
michael@0 557 pref("toolkit.telemetry.debugSlowSql", false);
michael@0 558
michael@0 559 // Identity module
michael@0 560 pref("toolkit.identity.enabled", false);
michael@0 561 pref("toolkit.identity.debug", false);
michael@0 562
michael@0 563 // AsyncShutdown delay before crashing in case of shutdown freeze
michael@0 564 pref("toolkit.asyncshutdown.timeout.crash", 60000);
michael@0 565
michael@0 566 // Enable deprecation warnings.
michael@0 567 pref("devtools.errorconsole.deprecation_warnings", true);
michael@0 568
michael@0 569 // Disable debugging chrome
michael@0 570 pref("devtools.chrome.enabled", false);
michael@0 571
michael@0 572 // Disable remote debugging protocol logging
michael@0 573 pref("devtools.debugger.log", false);
michael@0 574 // Disable remote debugging connections
michael@0 575 pref("devtools.debugger.remote-enabled", false);
michael@0 576 pref("devtools.debugger.remote-port", 6000);
michael@0 577 // Force debugger server binding on the loopback interface
michael@0 578 pref("devtools.debugger.force-local", true);
michael@0 579 // Display a prompt when a new connection starts to accept/reject it
michael@0 580 pref("devtools.debugger.prompt-connection", true);
michael@0 581 // Block tools from seeing / interacting with certified apps
michael@0 582 pref("devtools.debugger.forbid-certified-apps", true);
michael@0 583
michael@0 584 // DevTools default color unit
michael@0 585 pref("devtools.defaultColorUnit", "hex");
michael@0 586
michael@0 587 // Used for devtools debugging
michael@0 588 pref("devtools.dump.emit", false);
michael@0 589
michael@0 590 // view source
michael@0 591 pref("view_source.syntax_highlight", true);
michael@0 592 pref("view_source.wrap_long_lines", false);
michael@0 593 pref("view_source.editor.external", false);
michael@0 594 pref("view_source.editor.path", "");
michael@0 595 // allows to add further arguments to the editor; use the %LINE% placeholder
michael@0 596 // for jumping to a specific line (e.g. "/line:%LINE%" or "--goto %LINE%")
michael@0 597 pref("view_source.editor.args", "");
michael@0 598
michael@0 599 // When true this will word-wrap plain text documents.
michael@0 600 pref("plain_text.wrap_long_lines", false);
michael@0 601
michael@0 602 // whether or not to draw images while dragging
michael@0 603 pref("nglayout.enable_drag_images", true);
michael@0 604
michael@0 605 // enable/disable paint flashing --- useful for debugging
michael@0 606 // the first one applies to everything, the second one only to chrome
michael@0 607 pref("nglayout.debug.paint_flashing", false);
michael@0 608 pref("nglayout.debug.paint_flashing_chrome", false);
michael@0 609
michael@0 610 // enable/disable widget update area flashing --- only supported with
michael@0 611 // BasicLayers (other layer managers always update the entire widget area)
michael@0 612 pref("nglayout.debug.widget_update_flashing", false);
michael@0 613
michael@0 614 // Whether image visibility is enabled globally (ie we will try to unlock images
michael@0 615 // that are not visible).
michael@0 616 pref("layout.imagevisibility.enabled", true);
michael@0 617 // Whether image visibility is enabled in documents that are within a browser
michael@0 618 // element as defined by nsDocShell::FrameType and GetInheritedFrameType. This
michael@0 619 // pref only has an effect if layout.imagevisibility.enabled is false.
michael@0 620 pref("layout.imagevisibility.enabled_for_browser_elements_only", false);
michael@0 621 pref("layout.imagevisibility.numscrollportwidths", 0);
michael@0 622 pref("layout.imagevisibility.numscrollportheights", 1);
michael@0 623
michael@0 624 // scrollbar snapping region
michael@0 625 // 0 - off
michael@0 626 // 1 and higher - slider thickness multiple
michael@0 627 pref("slider.snapMultiplier", 0);
michael@0 628
michael@0 629 // option to choose plug-in finder
michael@0 630 pref("application.use_ns_plugin_finder", false);
michael@0 631
michael@0 632 // URI fixup prefs
michael@0 633 pref("browser.fixup.alternate.enabled", true);
michael@0 634 pref("browser.fixup.alternate.prefix", "www.");
michael@0 635 pref("browser.fixup.alternate.suffix", ".com");
michael@0 636 pref("browser.fixup.hide_user_pass", true);
michael@0 637
michael@0 638 // Location Bar AutoComplete
michael@0 639 pref("browser.urlbar.autocomplete.enabled", true);
michael@0 640
michael@0 641 // Print header customization
michael@0 642 // Use the following codes:
michael@0 643 // &T - Title
michael@0 644 // &U - Document URL
michael@0 645 // &D - Date/Time
michael@0 646 // &P - Page Number
michael@0 647 // &PT - Page Number "of" Page total
michael@0 648 // Set each header to a string containing zero or one of these codes
michael@0 649 // and the code will be replaced in that string by the corresponding data
michael@0 650 pref("print.print_headerleft", "&T");
michael@0 651 pref("print.print_headercenter", "");
michael@0 652 pref("print.print_headerright", "&U");
michael@0 653 pref("print.print_footerleft", "&PT");
michael@0 654 pref("print.print_footercenter", "");
michael@0 655 pref("print.print_footerright", "&D");
michael@0 656 pref("print.show_print_progress", true);
michael@0 657
michael@0 658 // xxxbsmedberg: more toolkit prefs
michael@0 659
michael@0 660 // When this is set to false each window has its own PrintSettings
michael@0 661 // and a change in one window does not affect the others
michael@0 662 pref("print.use_global_printsettings", true);
michael@0 663
michael@0 664 // Save the Printings after each print job
michael@0 665 pref("print.save_print_settings", true);
michael@0 666
michael@0 667 // Cache old Presentation when going into Print Preview
michael@0 668 pref("print.always_cache_old_pres", false);
michael@0 669
michael@0 670 // Enables you to specify the amount of the paper that is to be treated
michael@0 671 // as unwriteable. The print_edge_XXX and print_margin_XXX preferences
michael@0 672 // are treated as offsets that are added to this pref.
michael@0 673 // Default is "-1", which means "use the system default". (If there is
michael@0 674 // no system default, then the -1 is treated as if it were 0.)
michael@0 675 // This is used by both Printing and Print Preview.
michael@0 676 // Units are in 1/100ths of an inch.
michael@0 677 pref("print.print_unwriteable_margin_top", -1);
michael@0 678 pref("print.print_unwriteable_margin_left", -1);
michael@0 679 pref("print.print_unwriteable_margin_right", -1);
michael@0 680 pref("print.print_unwriteable_margin_bottom", -1);
michael@0 681
michael@0 682 // Enables you to specify the gap from the edge of the paper's
michael@0 683 // unwriteable area to the margin.
michael@0 684 // This is used by both Printing and Print Preview
michael@0 685 // Units are in 1/100ths of an inch.
michael@0 686 pref("print.print_edge_top", 0);
michael@0 687 pref("print.print_edge_left", 0);
michael@0 688 pref("print.print_edge_right", 0);
michael@0 689 pref("print.print_edge_bottom", 0);
michael@0 690
michael@0 691 // Pref used by the spellchecker extension to control the
michael@0 692 // maximum number of misspelled words that will be underlined
michael@0 693 // in a document.
michael@0 694 pref("extensions.spellcheck.inline.max-misspellings", 500);
michael@0 695
michael@0 696 // Prefs used by libeditor. Prefs specific to seamonkey composer
michael@0 697 // belong in comm-central/editor/ui/composer.js
michael@0 698
michael@0 699 pref("editor.use_custom_colors", false);
michael@0 700 pref("editor.singleLine.pasteNewlines", 2);
michael@0 701 pref("editor.use_css", false);
michael@0 702 pref("editor.css.default_length_unit", "px");
michael@0 703 pref("editor.resizing.preserve_ratio", true);
michael@0 704 pref("editor.positioning.offset", 0);
michael@0 705
michael@0 706 // Scripts & Windows prefs
michael@0 707 pref("dom.disable_beforeunload", false);
michael@0 708 pref("dom.disable_image_src_set", false);
michael@0 709 pref("dom.disable_window_flip", false);
michael@0 710 pref("dom.disable_window_move_resize", false);
michael@0 711 pref("dom.disable_window_status_change", false);
michael@0 712
michael@0 713 pref("dom.disable_window_open_feature.titlebar", false);
michael@0 714 pref("dom.disable_window_open_feature.close", false);
michael@0 715 pref("dom.disable_window_open_feature.toolbar", false);
michael@0 716 pref("dom.disable_window_open_feature.location", false);
michael@0 717 pref("dom.disable_window_open_feature.personalbar", false);
michael@0 718 pref("dom.disable_window_open_feature.menubar", false);
michael@0 719 pref("dom.disable_window_open_feature.scrollbars", false);
michael@0 720 pref("dom.disable_window_open_feature.resizable", true);
michael@0 721 pref("dom.disable_window_open_feature.minimizable", false);
michael@0 722 pref("dom.disable_window_open_feature.status", true);
michael@0 723
michael@0 724 pref("dom.allow_scripts_to_close_windows", false);
michael@0 725
michael@0 726 pref("dom.disable_open_during_load", false);
michael@0 727 pref("dom.popup_maximum", 20);
michael@0 728 pref("dom.popup_allowed_events", "change click dblclick mouseup reset submit touchend");
michael@0 729 pref("dom.disable_open_click_delay", 1000);
michael@0 730
michael@0 731 pref("dom.storage.enabled", true);
michael@0 732 pref("dom.storage.default_quota", 5120);
michael@0 733
michael@0 734 pref("dom.send_after_paint_to_content", false);
michael@0 735
michael@0 736 // Timeout clamp in ms for timeouts we clamp
michael@0 737 pref("dom.min_timeout_value", 4);
michael@0 738 // And for background windows
michael@0 739 pref("dom.min_background_timeout_value", 1000);
michael@0 740
michael@0 741 // Don't use new input types
michael@0 742 pref("dom.experimental_forms", false);
michael@0 743
michael@0 744 // Enable <input type=number>:
michael@0 745 pref("dom.forms.number", true);
michael@0 746
michael@0 747 // Enable <input type=color> by default. It will be turned off for remaining
michael@0 748 // platforms which don't have a color picker implemented yet.
michael@0 749 pref("dom.forms.color", true);
michael@0 750
michael@0 751 // Enables system messages and activities
michael@0 752 pref("dom.sysmsg.enabled", false);
michael@0 753
michael@0 754 // Enable pre-installed applications.
michael@0 755 pref("dom.webapps.useCurrentProfile", false);
michael@0 756
michael@0 757 pref("dom.cycle_collector.incremental", false);
michael@0 758
michael@0 759 // Parsing perf prefs. For now just mimic what the old code did.
michael@0 760 #ifndef XP_WIN
michael@0 761 pref("content.sink.pending_event_mode", 0);
michael@0 762 #endif
michael@0 763
michael@0 764 // Disable popups from plugins by default
michael@0 765 // 0 = openAllowed
michael@0 766 // 1 = openControlled
michael@0 767 // 2 = openAbused
michael@0 768 pref("privacy.popups.disable_from_plugins", 2);
michael@0 769
michael@0 770 // "do not track" HTTP header, disabled by default
michael@0 771 pref("privacy.donottrackheader.enabled", false);
michael@0 772 // 0 = tracking is acceptable
michael@0 773 // 1 = tracking is unacceptable
michael@0 774 pref("privacy.donottrackheader.value", 1);
michael@0 775
michael@0 776 pref("dom.event.contextmenu.enabled", true);
michael@0 777 pref("dom.event.clipboardevents.enabled", true);
michael@0 778
michael@0 779 pref("dom.webcomponents.enabled", false);
michael@0 780
michael@0 781 pref("javascript.enabled", true);
michael@0 782 pref("javascript.options.strict", false);
michael@0 783 #ifdef DEBUG
michael@0 784 pref("javascript.options.strict.debug", true);
michael@0 785 #endif
michael@0 786 pref("javascript.options.baselinejit", true);
michael@0 787 pref("javascript.options.ion", true);
michael@0 788 pref("javascript.options.asmjs", true);
michael@0 789 pref("javascript.options.parallel_parsing", true);
michael@0 790 pref("javascript.options.ion.parallel_compilation", true);
michael@0 791 // This preference instructs the JS engine to discard the
michael@0 792 // source of any privileged JS after compilation. This saves
michael@0 793 // memory, but makes things like Function.prototype.toSource()
michael@0 794 // fail.
michael@0 795 pref("javascript.options.discardSystemSource", false);
michael@0 796 // This preference limits the memory usage of javascript.
michael@0 797 // If you want to change these values for your device,
michael@0 798 // please find Bug 417052 comment 17 and Bug 456721
michael@0 799 // Comment 32 and Bug 613551.
michael@0 800 pref("javascript.options.mem.high_water_mark", 128);
michael@0 801 pref("javascript.options.mem.max", -1);
michael@0 802 pref("javascript.options.mem.gc_per_compartment", true);
michael@0 803 pref("javascript.options.mem.gc_incremental", true);
michael@0 804 pref("javascript.options.mem.gc_incremental_slice_ms", 10);
michael@0 805 pref("javascript.options.mem.log", false);
michael@0 806 pref("javascript.options.mem.notify", false);
michael@0 807 pref("javascript.options.gc_on_memory_pressure", true);
michael@0 808
michael@0 809 pref("javascript.options.mem.gc_high_frequency_time_limit_ms", 1000);
michael@0 810 pref("javascript.options.mem.gc_high_frequency_low_limit_mb", 100);
michael@0 811 pref("javascript.options.mem.gc_high_frequency_high_limit_mb", 500);
michael@0 812 pref("javascript.options.mem.gc_high_frequency_heap_growth_max", 300);
michael@0 813 pref("javascript.options.mem.gc_high_frequency_heap_growth_min", 150);
michael@0 814 pref("javascript.options.mem.gc_low_frequency_heap_growth", 150);
michael@0 815 pref("javascript.options.mem.gc_dynamic_heap_growth", true);
michael@0 816 pref("javascript.options.mem.gc_dynamic_mark_slice", true);
michael@0 817 pref("javascript.options.mem.gc_allocation_threshold_mb", 30);
michael@0 818 pref("javascript.options.mem.gc_decommit_threshold_mb", 32);
michael@0 819
michael@0 820 pref("javascript.options.showInConsole", false);
michael@0 821
michael@0 822 // advanced prefs
michael@0 823 pref("advanced.mailftp", false);
michael@0 824 pref("image.animation_mode", "normal");
michael@0 825
michael@0 826 // Same-origin policy for file URIs, "false" is traditional
michael@0 827 pref("security.fileuri.strict_origin_policy", true);
michael@0 828
michael@0 829 // If there is ever a security firedrill that requires
michael@0 830 // us to block certian ports global, this is the pref
michael@0 831 // to use. Is is a comma delimited list of port numbers
michael@0 832 // for example:
michael@0 833 // pref("network.security.ports.banned", "1,2,3,4,5");
michael@0 834 // prevents necko connecting to ports 1-5 unless the protocol
michael@0 835 // overrides.
michael@0 836
michael@0 837 // Allow necko to do A/B testing. Will generally only happen if
michael@0 838 // telemetry is also enabled as otherwise there is no way to report
michael@0 839 // the results
michael@0 840 pref("network.allow-experiments", true);
michael@0 841
michael@0 842 // Transmit UDP busy-work to the LAN when anticipating low latency
michael@0 843 // network reads and on wifi to mitigate 802.11 Power Save Polling delays
michael@0 844 pref("network.tickle-wifi.enabled", false);
michael@0 845 pref("network.tickle-wifi.duration", 400);
michael@0 846 pref("network.tickle-wifi.delay", 16);
michael@0 847
michael@0 848 // Turn off interprocess security checks. Needed to run xpcshell tests.
michael@0 849 pref("network.disable.ipc.security", false);
michael@0 850
michael@0 851 // Default action for unlisted external protocol handlers
michael@0 852 pref("network.protocol-handler.external-default", true); // OK to load
michael@0 853 pref("network.protocol-handler.warn-external-default", true); // warn before load
michael@0 854
michael@0 855 // Prevent using external protocol handlers for these schemes
michael@0 856 pref("network.protocol-handler.external.hcp", false);
michael@0 857 pref("network.protocol-handler.external.vbscript", false);
michael@0 858 pref("network.protocol-handler.external.javascript", false);
michael@0 859 pref("network.protocol-handler.external.data", false);
michael@0 860 pref("network.protocol-handler.external.ms-help", false);
michael@0 861 pref("network.protocol-handler.external.shell", false);
michael@0 862 pref("network.protocol-handler.external.vnd.ms.radio", false);
michael@0 863 #ifdef XP_MACOSX
michael@0 864 pref("network.protocol-handler.external.help", false);
michael@0 865 #endif
michael@0 866 pref("network.protocol-handler.external.disk", false);
michael@0 867 pref("network.protocol-handler.external.disks", false);
michael@0 868 pref("network.protocol-handler.external.afp", false);
michael@0 869 pref("network.protocol-handler.external.moz-icon", false);
michael@0 870
michael@0 871 // Don't allow external protocol handlers for common typos
michael@0 872 pref("network.protocol-handler.external.ttp", false); // http
michael@0 873 pref("network.protocol-handler.external.ttps", false); // https
michael@0 874 pref("network.protocol-handler.external.tps", false); // https
michael@0 875 pref("network.protocol-handler.external.ps", false); // https
michael@0 876 pref("network.protocol-handler.external.ile", false); // file
michael@0 877 pref("network.protocol-handler.external.le", false); // file
michael@0 878
michael@0 879 // An exposed protocol handler is one that can be used in all contexts. A
michael@0 880 // non-exposed protocol handler is one that can only be used internally by the
michael@0 881 // application. For example, a non-exposed protocol would not be loaded by the
michael@0 882 // application in response to a link click or a X-remote openURL command.
michael@0 883 // Instead, it would be deferred to the system's external protocol handler.
michael@0 884 // Only internal/built-in protocol handlers can be marked as exposed.
michael@0 885
michael@0 886 // This pref controls the default settings. Per protocol settings can be used
michael@0 887 // to override this value.
michael@0 888 pref("network.protocol-handler.expose-all", true);
michael@0 889
michael@0 890 // Warning for about:networking page
michael@0 891 pref("network.warnOnAboutNetworking", true);
michael@0 892
michael@0 893 // Example: make IMAP an exposed protocol
michael@0 894 // pref("network.protocol-handler.expose.imap", true);
michael@0 895
michael@0 896 // <http>
michael@0 897 pref("network.http.version", "1.1"); // default
michael@0 898 // pref("network.http.version", "1.0"); // uncomment this out in case of problems
michael@0 899 // pref("network.http.version", "0.9"); // it'll work too if you're crazy
michael@0 900 // keep-alive option is effectively obsolete. Nevertheless it'll work with
michael@0 901 // some older 1.0 servers:
michael@0 902
michael@0 903 pref("network.http.proxy.version", "1.1"); // default
michael@0 904 // pref("network.http.proxy.version", "1.0"); // uncomment this out in case of problems
michael@0 905 // (required if using junkbuster proxy)
michael@0 906
michael@0 907 // enable caching of http documents
michael@0 908 pref("network.http.use-cache", true);
michael@0 909
michael@0 910 // this preference can be set to override the socket type used for normal
michael@0 911 // HTTP traffic. an empty value indicates the normal TCP/IP socket type.
michael@0 912 pref("network.http.default-socket-type", "");
michael@0 913
michael@0 914 // There is a problem with some IIS7 servers that don't close the connection
michael@0 915 // properly after it times out (bug #491541). Default timeout on IIS7 is
michael@0 916 // 120 seconds. We need to reuse or drop the connection within this time.
michael@0 917 // We set the timeout a little shorter to keep a reserve for cases when
michael@0 918 // the packet is lost or delayed on the route.
michael@0 919 pref("network.http.keep-alive.timeout", 115);
michael@0 920
michael@0 921 // Timeout connections if an initial response is not received after 5 mins.
michael@0 922 pref("network.http.response.timeout", 300);
michael@0 923
michael@0 924 // Limit the absolute number of http connections.
michael@0 925 // Note: the socket transport service will clamp the number below 256 if the OS
michael@0 926 // cannot allocate that many FDs, and it also always tries to reserve up to 250
michael@0 927 // file descriptors for things other than sockets.
michael@0 928 pref("network.http.max-connections", 256);
michael@0 929
michael@0 930 // If NOT connecting via a proxy, then
michael@0 931 // a new connection will only be attempted if the number of active persistent
michael@0 932 // connections to the server is less then max-persistent-connections-per-server.
michael@0 933 pref("network.http.max-persistent-connections-per-server", 6);
michael@0 934
michael@0 935 // If connecting via a proxy, then a
michael@0 936 // new connection will only be attempted if the number of active persistent
michael@0 937 // connections to the proxy is less then max-persistent-connections-per-proxy.
michael@0 938 pref("network.http.max-persistent-connections-per-proxy", 32);
michael@0 939
michael@0 940 // amount of time (in seconds) to suspend pending requests, before spawning a
michael@0 941 // new connection, once the limit on the number of persistent connections per
michael@0 942 // host has been reached. however, a new connection will not be created if
michael@0 943 // max-connections or max-connections-per-server has also been reached.
michael@0 944 pref("network.http.request.max-start-delay", 10);
michael@0 945
michael@0 946 // Headers
michael@0 947 pref("network.http.accept.default", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
michael@0 948
michael@0 949 // Prefs allowing granular control of referers
michael@0 950 // 0=don't send any, 1=send only on clicks, 2=send on image requests as well
michael@0 951 pref("network.http.sendRefererHeader", 2);
michael@0 952 // false=real referer, true=spoof referer (use target URI as referer)
michael@0 953 pref("network.http.referer.spoofSource", false);
michael@0 954 // 0=full URI, 1=scheme+host+port+path, 2=scheme+host+port
michael@0 955 pref("network.http.referer.trimmingPolicy", 0);
michael@0 956 // 0=always send, 1=send iff base domains match, 2=send iff hosts match
michael@0 957 pref("network.http.referer.XOriginPolicy", 0);
michael@0 958
michael@0 959 // Controls whether we send HTTPS referres to other HTTPS sites.
michael@0 960 // By default this is enabled for compatibility (see bug 141641)
michael@0 961 pref("network.http.sendSecureXSiteReferrer", true);
michael@0 962
michael@0 963 // Maximum number of consecutive redirects before aborting.
michael@0 964 pref("network.http.redirection-limit", 20);
michael@0 965
michael@0 966 // Enable http compression: comment this out in case of problems with 1.1
michael@0 967 // NOTE: support for "compress" has been disabled per bug 196406.
michael@0 968 // NOTE: separate values with comma+space (", "): see bug 576033
michael@0 969 pref("network.http.accept-encoding", "gzip, deflate");
michael@0 970
michael@0 971 pref("network.http.pipelining" , false);
michael@0 972 pref("network.http.pipelining.ssl" , false); // disable pipelining over SSL
michael@0 973 pref("network.http.pipelining.abtest", false);
michael@0 974 pref("network.http.proxy.pipelining", false);
michael@0 975
michael@0 976 // Max number of requests in the pipeline
michael@0 977 pref("network.http.pipelining.maxrequests" , 32);
michael@0 978
michael@0 979 // An optimistic request is one pipelined when policy might allow a new
michael@0 980 // connection instead
michael@0 981 pref("network.http.pipelining.max-optimistic-requests" , 4);
michael@0 982
michael@0 983 pref("network.http.pipelining.aggressive", false);
michael@0 984 pref("network.http.pipelining.maxsize" , 300000);
michael@0 985 pref("network.http.pipelining.reschedule-on-timeout", true);
michael@0 986 pref("network.http.pipelining.reschedule-timeout", 1500);
michael@0 987
michael@0 988 // The read-timeout is a ms timer that causes the transaction to be completely
michael@0 989 // restarted without pipelining.
michael@0 990 pref("network.http.pipelining.read-timeout", 30000);
michael@0 991
michael@0 992 // Prompt for 307 redirects
michael@0 993 pref("network.http.prompt-temp-redirect", true);
michael@0 994
michael@0 995 // If true generate CORRUPTED_CONTENT errors for entities that
michael@0 996 // contain an invalid Assoc-Req response header
michael@0 997 pref("network.http.assoc-req.enforce", false);
michael@0 998
michael@0 999 // On networks deploying QoS, it is recommended that these be lockpref()'d,
michael@0 1000 // since inappropriate marking can easily overwhelm bandwidth reservations
michael@0 1001 // for certain services (i.e. EF for VoIP, AF4x for interactive video,
michael@0 1002 // AF3x for broadcast/streaming video, etc)
michael@0 1003
michael@0 1004 // default value for HTTP
michael@0 1005 // in a DSCP environment this should be 40 (0x28, or AF11), per RFC-4594,
michael@0 1006 // Section 4.8 "High-Throughput Data Service Class"
michael@0 1007 pref("network.http.qos", 0);
michael@0 1008
michael@0 1009 // The number of milliseconds after sending a SYN for an HTTP connection,
michael@0 1010 // to wait before trying a different connection. 0 means do not use a second
michael@0 1011 // connection.
michael@0 1012 pref("network.http.connection-retry-timeout", 250);
michael@0 1013
michael@0 1014 // The number of seconds after sending initial SYN for an HTTP connection
michael@0 1015 // to give up if the OS does not give up first
michael@0 1016 pref("network.http.connection-timeout", 90);
michael@0 1017
michael@0 1018 // The maximum number of current global half open sockets allowable
michael@0 1019 // when starting a new speculative connection.
michael@0 1020 pref("network.http.speculative-parallel-limit", 6);
michael@0 1021
michael@0 1022 // Whether or not to block requests for non head js/css items (e.g. media)
michael@0 1023 // while those elements load.
michael@0 1024 pref("network.http.rendering-critical-requests-prioritization", true);
michael@0 1025
michael@0 1026 // Disable IPv6 for backup connections to workaround problems about broken
michael@0 1027 // IPv6 connectivity.
michael@0 1028 pref("network.http.fast-fallback-to-IPv4", true);
michael@0 1029
michael@0 1030 // The maximum amount of time the cache session lock can be held
michael@0 1031 // before a new transaction bypasses the cache. In milliseconds.
michael@0 1032 #ifdef RELEASE_BUILD
michael@0 1033 pref("network.http.bypass-cachelock-threshold", 200000);
michael@0 1034 #else
michael@0 1035 pref("network.http.bypass-cachelock-threshold", 250);
michael@0 1036 #endif
michael@0 1037
michael@0 1038 // Try and use SPDY when using SSL
michael@0 1039 pref("network.http.spdy.enabled", true);
michael@0 1040 pref("network.http.spdy.enabled.v3", true);
michael@0 1041 pref("network.http.spdy.enabled.v3-1", true);
michael@0 1042 pref("network.http.spdy.enabled.http2draft", false);
michael@0 1043 pref("network.http.spdy.enforce-tls-profile", true);
michael@0 1044 pref("network.http.spdy.chunk-size", 16000);
michael@0 1045 pref("network.http.spdy.timeout", 180);
michael@0 1046 pref("network.http.spdy.coalesce-hostnames", true);
michael@0 1047 pref("network.http.spdy.persistent-settings", false);
michael@0 1048 pref("network.http.spdy.ping-threshold", 58);
michael@0 1049 pref("network.http.spdy.ping-timeout", 8);
michael@0 1050 pref("network.http.spdy.send-buffer-size", 131072);
michael@0 1051 pref("network.http.spdy.allow-push", true);
michael@0 1052 pref("network.http.spdy.push-allowance", 131072);
michael@0 1053
michael@0 1054 pref("network.http.diagnostics", false);
michael@0 1055
michael@0 1056 pref("network.http.pacing.requests.enabled", true);
michael@0 1057 pref("network.http.pacing.requests.min-parallelism", 6);
michael@0 1058 pref("network.http.pacing.requests.hz", 100);
michael@0 1059 pref("network.http.pacing.requests.burst", 32);
michael@0 1060
michael@0 1061 // TCP Keepalive config for HTTP connections.
michael@0 1062 pref("network.http.tcp_keepalive.short_lived_connections", true);
michael@0 1063 // Max time from initial request during which conns are considered short-lived.
michael@0 1064 pref("network.http.tcp_keepalive.short_lived_time", 60);
michael@0 1065 // Idle time of TCP connection until first keepalive probe sent.
michael@0 1066 pref("network.http.tcp_keepalive.short_lived_idle_time", 10);
michael@0 1067
michael@0 1068 pref("network.http.tcp_keepalive.long_lived_connections", true);
michael@0 1069 pref("network.http.tcp_keepalive.long_lived_idle_time", 600);
michael@0 1070
michael@0 1071 // default values for FTP
michael@0 1072 // in a DSCP environment this should be 40 (0x28, or AF11), per RFC-4594,
michael@0 1073 // Section 4.8 "High-Throughput Data Service Class", and 80 (0x50, or AF22)
michael@0 1074 // per Section 4.7 "Low-Latency Data Service Class".
michael@0 1075 pref("network.ftp.data.qos", 0);
michael@0 1076 pref("network.ftp.control.qos", 0);
michael@0 1077
michael@0 1078 // </http>
michael@0 1079
michael@0 1080 // <ws>: WebSocket
michael@0 1081 pref("network.websocket.enabled", true);
michael@0 1082
michael@0 1083 // 2147483647 == PR_INT32_MAX == ~2 GB
michael@0 1084 pref("network.websocket.max-message-size", 2147483647);
michael@0 1085
michael@0 1086 // Should we automatically follow http 3xx redirects during handshake
michael@0 1087 pref("network.websocket.auto-follow-http-redirects", false);
michael@0 1088
michael@0 1089 // the number of seconds to wait for websocket connection to be opened
michael@0 1090 pref("network.websocket.timeout.open", 20);
michael@0 1091
michael@0 1092 // the number of seconds to wait for a clean close after sending the client
michael@0 1093 // close message
michael@0 1094 pref("network.websocket.timeout.close", 20);
michael@0 1095
michael@0 1096 // the number of seconds of idle read activity to sustain before sending a
michael@0 1097 // ping probe. 0 to disable.
michael@0 1098 pref("network.websocket.timeout.ping.request", 0);
michael@0 1099
michael@0 1100 // the deadline, expressed in seconds, for some read activity to occur after
michael@0 1101 // generating a ping. If no activity happens then an error and unclean close
michael@0 1102 // event is sent to the javascript websockets application
michael@0 1103 pref("network.websocket.timeout.ping.response", 10);
michael@0 1104
michael@0 1105 // Defines whether or not to try and negotiate the stream-deflate compression
michael@0 1106 // extension with the websocket server. Stream-Deflate has been removed from
michael@0 1107 // the standards track document, but can still be used by servers who opt
michael@0 1108 // into it.
michael@0 1109 pref("network.websocket.extensions.stream-deflate", false);
michael@0 1110
michael@0 1111 // the maximum number of concurrent websocket sessions. By specification there
michael@0 1112 // is never more than one handshake oustanding to an individual host at
michael@0 1113 // one time.
michael@0 1114 pref("network.websocket.max-connections", 200);
michael@0 1115
michael@0 1116 // by default scripts loaded from a https:// origin can only open secure
michael@0 1117 // (i.e. wss://) websockets.
michael@0 1118 pref("network.websocket.allowInsecureFromHTTPS", false);
michael@0 1119
michael@0 1120 // by default we delay websocket reconnects to same host/port if previous
michael@0 1121 // connection failed, per RFC 6455 section 7.2.3
michael@0 1122 pref("network.websocket.delay-failed-reconnects", true);
michael@0 1123
michael@0 1124 // </ws>
michael@0 1125
michael@0 1126 // Server-Sent Events
michael@0 1127
michael@0 1128 pref("dom.server-events.enabled", true);
michael@0 1129 // Equal to the DEFAULT_RECONNECTION_TIME_VALUE value in nsEventSource.cpp
michael@0 1130 pref("dom.server-events.default-reconnection-time", 5000); // in milliseconds
michael@0 1131
michael@0 1132 // If false, remote JAR files that are served with a content type other than
michael@0 1133 // application/java-archive or application/x-jar will not be opened
michael@0 1134 // by the jar channel.
michael@0 1135 pref("network.jar.open-unsafe-types", false);
michael@0 1136
michael@0 1137 // This preference, if true, causes all UTF-8 domain names to be normalized to
michael@0 1138 // punycode. The intention is to allow UTF-8 domain names as input, but never
michael@0 1139 // generate them from punycode.
michael@0 1140 pref("network.IDN_show_punycode", false);
michael@0 1141
michael@0 1142 // If "network.IDN.use_whitelist" is set to true, TLDs with
michael@0 1143 // "network.IDN.whitelist.tld" explicitly set to true are treated as
michael@0 1144 // IDN-safe. Otherwise, they're treated as unsafe and punycode will be used
michael@0 1145 // for displaying them in the UI (e.g. URL bar), unless they conform to one of
michael@0 1146 // the profiles specified in
michael@0 1147 // http://www.unicode.org/reports/tr36/proposed.html#Security_Levels_and_Alerts
michael@0 1148 // If "network.IDN.restriction_profile" is "high", the Highly Restrictive
michael@0 1149 // profile is used.
michael@0 1150 // If "network.IDN.restriction_profile" is "moderate", the Moderately
michael@0 1151 // Restrictive profile is used.
michael@0 1152 // In all other cases, the ASCII-Only profile is used.
michael@0 1153 // Note that these preferences are referred to ONLY when
michael@0 1154 // "network.IDN_show_punycode" is false. In other words, all IDNs will be shown
michael@0 1155 // in punycode if "network.IDN_show_punycode" is true.
michael@0 1156 pref("network.IDN.restriction_profile", "moderate");
michael@0 1157 pref("network.IDN.use_whitelist", true);
michael@0 1158
michael@0 1159 // ccTLDs
michael@0 1160 pref("network.IDN.whitelist.ac", true);
michael@0 1161 pref("network.IDN.whitelist.ar", true);
michael@0 1162 pref("network.IDN.whitelist.at", true);
michael@0 1163 pref("network.IDN.whitelist.br", true);
michael@0 1164 pref("network.IDN.whitelist.ca", true);
michael@0 1165 pref("network.IDN.whitelist.ch", true);
michael@0 1166 pref("network.IDN.whitelist.cl", true);
michael@0 1167 pref("network.IDN.whitelist.cn", true);
michael@0 1168 pref("network.IDN.whitelist.de", true);
michael@0 1169 pref("network.IDN.whitelist.dk", true);
michael@0 1170 pref("network.IDN.whitelist.ee", true);
michael@0 1171 pref("network.IDN.whitelist.es", true);
michael@0 1172 pref("network.IDN.whitelist.fi", true);
michael@0 1173 pref("network.IDN.whitelist.fr", true);
michael@0 1174 pref("network.IDN.whitelist.gr", true);
michael@0 1175 pref("network.IDN.whitelist.gt", true);
michael@0 1176 pref("network.IDN.whitelist.hu", true);
michael@0 1177 pref("network.IDN.whitelist.il", true);
michael@0 1178 pref("network.IDN.whitelist.io", true);
michael@0 1179 pref("network.IDN.whitelist.ir", true);
michael@0 1180 pref("network.IDN.whitelist.is", true);
michael@0 1181 pref("network.IDN.whitelist.jp", true);
michael@0 1182 pref("network.IDN.whitelist.kr", true);
michael@0 1183 pref("network.IDN.whitelist.li", true);
michael@0 1184 pref("network.IDN.whitelist.lt", true);
michael@0 1185 pref("network.IDN.whitelist.lu", true);
michael@0 1186 pref("network.IDN.whitelist.lv", true);
michael@0 1187 pref("network.IDN.whitelist.no", true);
michael@0 1188 pref("network.IDN.whitelist.nu", true);
michael@0 1189 pref("network.IDN.whitelist.nz", true);
michael@0 1190 pref("network.IDN.whitelist.pl", true);
michael@0 1191 pref("network.IDN.whitelist.pm", true);
michael@0 1192 pref("network.IDN.whitelist.pr", true);
michael@0 1193 pref("network.IDN.whitelist.re", true);
michael@0 1194 pref("network.IDN.whitelist.se", true);
michael@0 1195 pref("network.IDN.whitelist.sh", true);
michael@0 1196 pref("network.IDN.whitelist.si", true);
michael@0 1197 pref("network.IDN.whitelist.tf", true);
michael@0 1198 pref("network.IDN.whitelist.th", true);
michael@0 1199 pref("network.IDN.whitelist.tm", true);
michael@0 1200 pref("network.IDN.whitelist.tw", true);
michael@0 1201 pref("network.IDN.whitelist.ua", true);
michael@0 1202 pref("network.IDN.whitelist.vn", true);
michael@0 1203 pref("network.IDN.whitelist.wf", true);
michael@0 1204 pref("network.IDN.whitelist.yt", true);
michael@0 1205
michael@0 1206 // IDN ccTLDs
michael@0 1207 // ae, UAE, .<Emarat>
michael@0 1208 pref("network.IDN.whitelist.xn--mgbaam7a8h", true);
michael@0 1209 // cn, China, .<China> with variants
michael@0 1210 pref("network.IDN.whitelist.xn--fiqz9s", true); // Traditional
michael@0 1211 pref("network.IDN.whitelist.xn--fiqs8s", true); // Simplified
michael@0 1212 // eg, Egypt, .<Masr>
michael@0 1213 pref("network.IDN.whitelist.xn--wgbh1c", true);
michael@0 1214 // hk, Hong Kong, .<Hong Kong>
michael@0 1215 pref("network.IDN.whitelist.xn--j6w193g", true);
michael@0 1216 // ir, Iran, <.Iran> with variants
michael@0 1217 pref("network.IDN.whitelist.xn--mgba3a4f16a", true);
michael@0 1218 pref("network.IDN.whitelist.xn--mgba3a4fra", true);
michael@0 1219 // jo, Jordan, .<Al-Ordon>
michael@0 1220 pref("network.IDN.whitelist.xn--mgbayh7gpa", true);
michael@0 1221 // lk, Sri Lanka, .<Lanka> and .<Ilangai>
michael@0 1222 pref("network.IDN.whitelist.xn--fzc2c9e2c", true);
michael@0 1223 pref("network.IDN.whitelist.xn--xkc2al3hye2a", true);
michael@0 1224 // qa, Qatar, .<Qatar>
michael@0 1225 pref("network.IDN.whitelist.xn--wgbl6a", true);
michael@0 1226 // rs, Serbia, .<Srb>
michael@0 1227 pref("network.IDN.whitelist.xn--90a3ac", true);
michael@0 1228 // ru, Russian Federation, .<RF>
michael@0 1229 pref("network.IDN.whitelist.xn--p1ai", true);
michael@0 1230 // sa, Saudi Arabia, .<al-Saudiah> with variants
michael@0 1231 pref("network.IDN.whitelist.xn--mgberp4a5d4ar", true);
michael@0 1232 pref("network.IDN.whitelist.xn--mgberp4a5d4a87g", true);
michael@0 1233 pref("network.IDN.whitelist.xn--mgbqly7c0a67fbc", true);
michael@0 1234 pref("network.IDN.whitelist.xn--mgbqly7cvafr", true);
michael@0 1235 // sy, Syria, .<Souria>
michael@0 1236 pref("network.IDN.whitelist.xn--ogbpf8fl", true);
michael@0 1237 // th, Thailand, .<Thai>
michael@0 1238 pref("network.IDN.whitelist.xn--o3cw4h", true);
michael@0 1239 // tw, Taiwan, <.Taiwan> with variants
michael@0 1240 pref("network.IDN.whitelist.xn--kpry57d", true); // Traditional
michael@0 1241 pref("network.IDN.whitelist.xn--kprw13d", true); // Simplified
michael@0 1242
michael@0 1243 // gTLDs
michael@0 1244 pref("network.IDN.whitelist.asia", true);
michael@0 1245 pref("network.IDN.whitelist.biz", true);
michael@0 1246 pref("network.IDN.whitelist.cat", true);
michael@0 1247 pref("network.IDN.whitelist.info", true);
michael@0 1248 pref("network.IDN.whitelist.museum", true);
michael@0 1249 pref("network.IDN.whitelist.org", true);
michael@0 1250 pref("network.IDN.whitelist.tel", true);
michael@0 1251
michael@0 1252 // NOTE: Before these can be removed, one of bug 414812's tests must be updated
michael@0 1253 // or it will likely fail! Please CC jwalden+bmo on the bug associated
michael@0 1254 // with removing these so he can provide a patch to make the necessary
michael@0 1255 // changes to avoid bustage.
michael@0 1256 // ".test" localised TLDs for ICANN's top-level IDN trial
michael@0 1257 pref("network.IDN.whitelist.xn--0zwm56d", true);
michael@0 1258 pref("network.IDN.whitelist.xn--11b5bs3a9aj6g", true);
michael@0 1259 pref("network.IDN.whitelist.xn--80akhbyknj4f", true);
michael@0 1260 pref("network.IDN.whitelist.xn--9t4b11yi5a", true);
michael@0 1261 pref("network.IDN.whitelist.xn--deba0ad", true);
michael@0 1262 pref("network.IDN.whitelist.xn--g6w251d", true);
michael@0 1263 pref("network.IDN.whitelist.xn--hgbk6aj7f53bba", true);
michael@0 1264 pref("network.IDN.whitelist.xn--hlcj6aya9esc7a", true);
michael@0 1265 pref("network.IDN.whitelist.xn--jxalpdlp", true);
michael@0 1266 pref("network.IDN.whitelist.xn--kgbechtv", true);
michael@0 1267 pref("network.IDN.whitelist.xn--zckzah", true);
michael@0 1268
michael@0 1269 // If a domain includes any of the following characters, it may be a spoof
michael@0 1270 // attempt and so we always display the domain name as punycode. This would
michael@0 1271 // override the settings "network.IDN_show_punycode" and
michael@0 1272 // "network.IDN.whitelist.*".
michael@0 1273 pref("network.IDN.blacklist_chars", "\u0020\u00A0\u00BC\u00BD\u00BE\u01C3\u02D0\u0337\u0338\u0589\u05C3\u05F4\u0609\u060A\u066A\u06D4\u0701\u0702\u0703\u0704\u115F\u1160\u1735\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u200B\u2024\u2027\u2028\u2029\u202F\u2039\u203A\u2041\u2044\u2052\u205F\u2153\u2154\u2155\u2156\u2157\u2158\u2159\u215A\u215B\u215C\u215D\u215E\u215F\u2215\u2236\u23AE\u2571\u29F6\u29F8\u2AFB\u2AFD\u2FF0\u2FF1\u2FF2\u2FF3\u2FF4\u2FF5\u2FF6\u2FF7\u2FF8\u2FF9\u2FFA\u2FFB\u3000\u3002\u3014\u3015\u3033\u3164\u321D\u321E\u33AE\u33AF\u33C6\u33DF\uA789\uFE14\uFE15\uFE3F\uFE5D\uFE5E\uFEFF\uFF0E\uFF0F\uFF61\uFFA0\uFFF9\uFFFA\uFFFB\uFFFC\uFFFD");
michael@0 1274
michael@0 1275 // This preference specifies a list of domains for which DNS lookups will be
michael@0 1276 // IPv4 only. Works around broken DNS servers which can't handle IPv6 lookups
michael@0 1277 // and/or allows the user to disable IPv6 on a per-domain basis. See bug 68796.
michael@0 1278 pref("network.dns.ipv4OnlyDomains", "");
michael@0 1279
michael@0 1280 // This preference can be used to turn off IPv6 name lookups. See bug 68796.
michael@0 1281 pref("network.dns.disableIPv6", false);
michael@0 1282
michael@0 1283 // This is the number of dns cache entries allowed
michael@0 1284 pref("network.dnsCacheEntries", 400);
michael@0 1285
michael@0 1286 // In the absence of OS TTLs, the DNS cache TTL value
michael@0 1287 pref("network.dnsCacheExpiration", 60);
michael@0 1288
michael@0 1289 // The grace period allows the DNS cache to use expired entries, while kicking off
michael@0 1290 // a revalidation in the background.
michael@0 1291 pref("network.dnsCacheExpirationGracePeriod", 60);
michael@0 1292
michael@0 1293 // This preference can be used to turn off DNS prefetch.
michael@0 1294 pref("network.dns.disablePrefetch", false);
michael@0 1295
michael@0 1296 // This preference controls whether or not URLs with UTF-8 characters are
michael@0 1297 // escaped. Set this preference to TRUE for strict RFC2396 conformance.
michael@0 1298 pref("network.standard-url.escape-utf8", true);
michael@0 1299
michael@0 1300 // This preference controls whether or not URLs are always encoded and sent as
michael@0 1301 // UTF-8.
michael@0 1302 pref("network.standard-url.encode-utf8", true);
michael@0 1303
michael@0 1304 // Idle timeout for ftp control connections - 5 minute default
michael@0 1305 pref("network.ftp.idleConnectionTimeout", 300);
michael@0 1306
michael@0 1307 // directory listing format
michael@0 1308 // 2: HTML
michael@0 1309 // 3: XUL directory viewer
michael@0 1310 // all other values are treated like 2
michael@0 1311 pref("network.dir.format", 2);
michael@0 1312
michael@0 1313 // enables the prefetch service (i.e., prefetching of <link rel="next"> URLs).
michael@0 1314 pref("network.prefetch-next", true);
michael@0 1315
michael@0 1316 // enables the predictive service
michael@0 1317 pref("network.seer.enabled", false);
michael@0 1318 pref("network.seer.enable-hover-on-ssl", false);
michael@0 1319 pref("network.seer.page-degradation.day", 0);
michael@0 1320 pref("network.seer.page-degradation.week", 5);
michael@0 1321 pref("network.seer.page-degradation.month", 10);
michael@0 1322 pref("network.seer.page-degradation.year", 25);
michael@0 1323 pref("network.seer.page-degradation.max", 50);
michael@0 1324 pref("network.seer.subresource-degradation.day", 1);
michael@0 1325 pref("network.seer.subresource-degradation.week", 10);
michael@0 1326 pref("network.seer.subresource-degradation.month", 25);
michael@0 1327 pref("network.seer.subresource-degradation.year", 50);
michael@0 1328 pref("network.seer.subresource-degradation.max", 100);
michael@0 1329 pref("network.seer.preconnect-min-confidence", 90);
michael@0 1330 pref("network.seer.preresolve-min-confidence", 60);
michael@0 1331 pref("network.seer.redirect-likely-confidence", 75);
michael@0 1332 pref("network.seer.max-queue-size", 50);
michael@0 1333 pref("network.seer.max-db-size", 157286400); // bytes
michael@0 1334 pref("network.seer.preserve", 80); // percentage of seer data to keep when cleaning up
michael@0 1335
michael@0 1336
michael@0 1337 // The following prefs pertain to the negotiate-auth extension (see bug 17578),
michael@0 1338 // which provides transparent Kerberos or NTLM authentication using the SPNEGO
michael@0 1339 // protocol. Each pref is a comma-separated list of keys, where each key has
michael@0 1340 // the format:
michael@0 1341 // [scheme "://"] [host [":" port]]
michael@0 1342 // For example, "foo.com" would match "http://www.foo.com/bar", etc.
michael@0 1343
michael@0 1344 // Allow insecure NTLMv1 when needed.
michael@0 1345 pref("network.negotiate-auth.allow-insecure-ntlm-v1", false);
michael@0 1346 // Allow insecure NTLMv1 for HTTPS protected sites by default.
michael@0 1347 pref("network.negotiate-auth.allow-insecure-ntlm-v1-https", true);
michael@0 1348
michael@0 1349 // This list controls which URIs can use the negotiate-auth protocol. This
michael@0 1350 // list should be limited to the servers you know you'll need to login to.
michael@0 1351 pref("network.negotiate-auth.trusted-uris", "");
michael@0 1352 // This list controls which URIs can support delegation.
michael@0 1353 pref("network.negotiate-auth.delegation-uris", "");
michael@0 1354
michael@0 1355 // Do not allow SPNEGO by default when challenged by a local server.
michael@0 1356 pref("network.negotiate-auth.allow-non-fqdn", false);
michael@0 1357
michael@0 1358 // Allow SPNEGO by default when challenged by a proxy server.
michael@0 1359 pref("network.negotiate-auth.allow-proxies", true);
michael@0 1360
michael@0 1361 // Path to a specific gssapi library
michael@0 1362 pref("network.negotiate-auth.gsslib", "");
michael@0 1363
michael@0 1364 // Specify if the gss lib comes standard with the OS
michael@0 1365 pref("network.negotiate-auth.using-native-gsslib", true);
michael@0 1366
michael@0 1367 #ifdef XP_WIN
michael@0 1368
michael@0 1369 // Default to using the SSPI intead of GSSAPI on windows
michael@0 1370 pref("network.auth.use-sspi", true);
michael@0 1371
michael@0 1372 #endif
michael@0 1373
michael@0 1374 // Controls which NTLM authentication implementation we default to. True forces
michael@0 1375 // the use of our generic (internal) NTLM authentication implementation vs. any
michael@0 1376 // native implementation provided by the os. This pref is for diagnosing issues
michael@0 1377 // with native NTLM. (See bug 520607 for details.) Using generic NTLM authentication
michael@0 1378 // can expose the user to reflection attack vulnerabilities. Do not change this
michael@0 1379 // unless you know what you're doing!
michael@0 1380 // This pref should be removed 6 months after the release of firefox 3.6.
michael@0 1381 pref("network.auth.force-generic-ntlm", false);
michael@0 1382
michael@0 1383 // The following prefs are used to enable automatic use of the operating
michael@0 1384 // system's NTLM implementation to silently authenticate the user with their
michael@0 1385 // Window's domain logon. The trusted-uris pref follows the format of the
michael@0 1386 // trusted-uris pref for negotiate authentication.
michael@0 1387 pref("network.automatic-ntlm-auth.allow-proxies", true);
michael@0 1388 pref("network.automatic-ntlm-auth.allow-non-fqdn", false);
michael@0 1389 pref("network.automatic-ntlm-auth.trusted-uris", "");
michael@0 1390
michael@0 1391 // This preference controls whether or not the LM hash will be included in
michael@0 1392 // response to a NTLM challenge. By default, this is disabled since servers
michael@0 1393 // should almost never need the LM hash, and the LM hash is what makes NTLM
michael@0 1394 // authentication less secure. See bug 250691 for further details.
michael@0 1395 // NOTE: automatic-ntlm-auth which leverages the OS-provided NTLM
michael@0 1396 // implementation will not be affected by this preference.
michael@0 1397 pref("network.ntlm.send-lm-response", false);
michael@0 1398
michael@0 1399 pref("permissions.default.image", 1); // 1-Accept, 2-Deny, 3-dontAcceptForeign
michael@0 1400
michael@0 1401 pref("network.proxy.type", 5);
michael@0 1402 pref("network.proxy.ftp", "");
michael@0 1403 pref("network.proxy.ftp_port", 0);
michael@0 1404 pref("network.proxy.http", "");
michael@0 1405 pref("network.proxy.http_port", 0);
michael@0 1406 pref("network.proxy.ssl", "");
michael@0 1407 pref("network.proxy.ssl_port", 0);
michael@0 1408 pref("network.proxy.socks", "");
michael@0 1409 pref("network.proxy.socks_port", 0);
michael@0 1410 pref("network.proxy.socks_version", 5);
michael@0 1411 pref("network.proxy.socks_remote_dns", false);
michael@0 1412 pref("network.proxy.no_proxies_on", "localhost, 127.0.0.1");
michael@0 1413 pref("network.proxy.failover_timeout", 1800); // 30 minutes
michael@0 1414 pref("network.online", true); //online/offline
michael@0 1415 #ifdef RELEASE_BUILD
michael@0 1416 pref("network.cookie.cookieBehavior", 0); // 0-Accept, 1-dontAcceptForeign, 2-dontUse, 3-limitForeign
michael@0 1417 #else
michael@0 1418 pref("network.cookie.cookieBehavior", 3); // 0-Accept, 1-dontAcceptForeign, 2-dontUse, 3-limitForeign
michael@0 1419 #endif
michael@0 1420 #ifdef ANDROID
michael@0 1421 pref("network.cookie.cookieBehavior", 0); // Keep the old default of accepting all cookies
michael@0 1422 #endif
michael@0 1423 #ifdef MOZ_WIDGET_GONK
michael@0 1424 pref("network.cookie.cookieBehavior", 0); // Keep the old default of accepting all cookies
michael@0 1425 #endif
michael@0 1426 pref("network.cookie.thirdparty.sessionOnly", false);
michael@0 1427 pref("network.cookie.lifetimePolicy", 0); // accept normally, 1-askBeforeAccepting, 2-acceptForSession,3-acceptForNDays
michael@0 1428 pref("network.cookie.alwaysAcceptSessionCookies", false);
michael@0 1429 pref("network.cookie.prefsMigrated", false);
michael@0 1430 pref("network.cookie.lifetime.days", 90);
michael@0 1431
michael@0 1432 // The PAC file to load. Ignored unless network.proxy.type is 2.
michael@0 1433 pref("network.proxy.autoconfig_url", "");
michael@0 1434
michael@0 1435 // If we cannot load the PAC file, then try again (doubling from interval_min
michael@0 1436 // until we reach interval_max or the PAC file is successfully loaded).
michael@0 1437 pref("network.proxy.autoconfig_retry_interval_min", 5); // 5 seconds
michael@0 1438 pref("network.proxy.autoconfig_retry_interval_max", 300); // 5 minutes
michael@0 1439
michael@0 1440 // Use the HSTS preload list by default
michael@0 1441 pref("network.stricttransportsecurity.preloadlist", true);
michael@0 1442
michael@0 1443 pref("converter.html2txt.structs", true); // Output structured phrases (strong, em, code, sub, sup, b, i, u)
michael@0 1444 pref("converter.html2txt.header_strategy", 1); // 0 = no indention; 1 = indention, increased with header level; 2 = numbering and slight indention
michael@0 1445
michael@0 1446 pref("intl.accept_languages", "chrome://global/locale/intl.properties");
michael@0 1447 pref("intl.menuitems.alwaysappendaccesskeys","chrome://global/locale/intl.properties");
michael@0 1448 pref("intl.menuitems.insertseparatorbeforeaccesskeys","chrome://global/locale/intl.properties");
michael@0 1449 pref("intl.charsetmenu.browser.static", "chrome://global/locale/intl.properties");
michael@0 1450 pref("intl.charsetmenu.browser.more1", "ISO-8859-1, ISO-8859-15, IBM850, macintosh, windows-1252, ISO-8859-14, ISO-8859-7, x-mac-greek, windows-1253, x-mac-icelandic, ISO-8859-10, ISO-8859-3");
michael@0 1451 pref("intl.charsetmenu.browser.more2", "ISO-8859-4, ISO-8859-13, windows-1257, IBM852, ISO-8859-2, x-mac-ce, windows-1250, x-mac-croatian, IBM855, ISO-8859-5, ISO-IR-111, KOI8-R, x-mac-cyrillic, windows-1251, IBM866, KOI8-U, x-mac-ukrainian, ISO-8859-16, x-mac-romanian");
michael@0 1452 pref("intl.charsetmenu.browser.more3", "GB2312, gbk, gb18030, HZ-GB-2312, ISO-2022-CN, Big5, Big5-HKSCS, x-euc-tw, EUC-JP, ISO-2022-JP, Shift_JIS, EUC-KR, x-johab, ISO-2022-KR");
michael@0 1453 pref("intl.charsetmenu.browser.more4", "armscii-8, TIS-620, ISO-8859-11, windows-874, IBM857, ISO-8859-9, x-mac-turkish, windows-1254, x-viet-tcvn5712, VISCII, x-viet-vps, windows-1258, x-mac-devanagari, x-mac-gujarati, x-mac-gurmukhi");
michael@0 1454 pref("intl.charsetmenu.browser.more5", "ISO-8859-6, windows-1256, ISO-8859-8-I, windows-1255, ISO-8859-8, IBM862");
michael@0 1455 pref("intl.charsetmenu.mailedit", "chrome://global/locale/intl.properties");
michael@0 1456 pref("intl.charsetmenu.browser.cache", "");
michael@0 1457 pref("intl.charsetmenu.mailview.cache", "");
michael@0 1458 pref("intl.charsetmenu.composer.cache", "");
michael@0 1459 pref("intl.charsetmenu.browser.cache.size", 5);
michael@0 1460 pref("intl.charset.detector", "chrome://global/locale/intl.properties");
michael@0 1461 pref("intl.charset.fallback.override", "");
michael@0 1462 pref("intl.charset.fallback.tld", true);
michael@0 1463 pref("intl.ellipsis", "chrome://global-platform/locale/intl.properties");
michael@0 1464 pref("intl.locale.matchOS", false);
michael@0 1465 // fallback charset list for Unicode conversion (converting from Unicode)
michael@0 1466 // currently used for mail send only to handle symbol characters (e.g Euro, trademark, smartquotes)
michael@0 1467 // for ISO-8859-1
michael@0 1468 pref("intl.fallbackCharsetList.ISO-8859-1", "windows-1252");
michael@0 1469 pref("font.language.group", "chrome://global/locale/intl.properties");
michael@0 1470
michael@0 1471 // these locales have right-to-left UI
michael@0 1472 pref("intl.uidirection.ar", "rtl");
michael@0 1473 pref("intl.uidirection.he", "rtl");
michael@0 1474 pref("intl.uidirection.fa", "rtl");
michael@0 1475 pref("intl.uidirection.ug", "rtl");
michael@0 1476 pref("intl.uidirection.ur", "rtl");
michael@0 1477
michael@0 1478 // use en-US hyphenation by default for content tagged with plain lang="en"
michael@0 1479 pref("intl.hyphenation-alias.en", "en-us");
michael@0 1480 // and for other subtags of en-*, if no specific patterns are available
michael@0 1481 pref("intl.hyphenation-alias.en-*", "en-us");
michael@0 1482
michael@0 1483 pref("intl.hyphenation-alias.af-*", "af");
michael@0 1484 pref("intl.hyphenation-alias.bg-*", "bg");
michael@0 1485 pref("intl.hyphenation-alias.ca-*", "ca");
michael@0 1486 pref("intl.hyphenation-alias.cy-*", "cy");
michael@0 1487 pref("intl.hyphenation-alias.da-*", "da");
michael@0 1488 pref("intl.hyphenation-alias.eo-*", "eo");
michael@0 1489 pref("intl.hyphenation-alias.es-*", "es");
michael@0 1490 pref("intl.hyphenation-alias.et-*", "et");
michael@0 1491 pref("intl.hyphenation-alias.fi-*", "fi");
michael@0 1492 pref("intl.hyphenation-alias.fr-*", "fr");
michael@0 1493 pref("intl.hyphenation-alias.gl-*", "gl");
michael@0 1494 pref("intl.hyphenation-alias.hr-*", "hr");
michael@0 1495 pref("intl.hyphenation-alias.hsb-*", "hsb");
michael@0 1496 pref("intl.hyphenation-alias.hu-*", "hu");
michael@0 1497 pref("intl.hyphenation-alias.ia-*", "ia");
michael@0 1498 pref("intl.hyphenation-alias.is-*", "is");
michael@0 1499 pref("intl.hyphenation-alias.it-*", "it");
michael@0 1500 pref("intl.hyphenation-alias.kmr-*", "kmr");
michael@0 1501 pref("intl.hyphenation-alias.la-*", "la");
michael@0 1502 pref("intl.hyphenation-alias.lt-*", "lt");
michael@0 1503 pref("intl.hyphenation-alias.mn-*", "mn");
michael@0 1504 pref("intl.hyphenation-alias.nl-*", "nl");
michael@0 1505 pref("intl.hyphenation-alias.pl-*", "pl");
michael@0 1506 pref("intl.hyphenation-alias.pt-*", "pt");
michael@0 1507 pref("intl.hyphenation-alias.ru-*", "ru");
michael@0 1508 pref("intl.hyphenation-alias.sl-*", "sl");
michael@0 1509 pref("intl.hyphenation-alias.sv-*", "sv");
michael@0 1510 pref("intl.hyphenation-alias.tr-*", "tr");
michael@0 1511 pref("intl.hyphenation-alias.uk-*", "uk");
michael@0 1512
michael@0 1513 // use reformed (1996) German patterns by default unless specifically tagged as de-1901
michael@0 1514 // (these prefs may soon be obsoleted by better BCP47-based tag matching, but for now...)
michael@0 1515 pref("intl.hyphenation-alias.de", "de-1996");
michael@0 1516 pref("intl.hyphenation-alias.de-*", "de-1996");
michael@0 1517 pref("intl.hyphenation-alias.de-AT-1901", "de-1901");
michael@0 1518 pref("intl.hyphenation-alias.de-DE-1901", "de-1901");
michael@0 1519 pref("intl.hyphenation-alias.de-CH-*", "de-CH");
michael@0 1520
michael@0 1521 // patterns from TeX are tagged as "sh" (Serbo-Croatian) macrolanguage;
michael@0 1522 // alias "sr" (Serbian) and "bs" (Bosnian) to those patterns
michael@0 1523 // (Croatian has its own separate patterns).
michael@0 1524 pref("intl.hyphenation-alias.sr", "sh");
michael@0 1525 pref("intl.hyphenation-alias.bs", "sh");
michael@0 1526 pref("intl.hyphenation-alias.sh-*", "sh");
michael@0 1527 pref("intl.hyphenation-alias.sr-*", "sh");
michael@0 1528 pref("intl.hyphenation-alias.bs-*", "sh");
michael@0 1529
michael@0 1530 // Norwegian has two forms, Bokmål and Nynorsk, with "no" as a macrolanguage encompassing both.
michael@0 1531 // For "no", we'll alias to "nb" (Bokmål) as that is the more widely used written form.
michael@0 1532 pref("intl.hyphenation-alias.no", "nb");
michael@0 1533 pref("intl.hyphenation-alias.no-*", "nb");
michael@0 1534 pref("intl.hyphenation-alias.nb-*", "nb");
michael@0 1535 pref("intl.hyphenation-alias.nn-*", "nn");
michael@0 1536
michael@0 1537 pref("font.mathfont-family", "Latin Modern Math, XITS Math, STIX Math, Cambria Math, Asana Math, TeX Gyre Bonum Math, TeX Gyre Pagella Math, TeX Gyre Termes Math, Neo Euler, Lucida Bright Math, MathJax_Main, STIXNonUnicode, STIXSizeOneSym, STIXGeneral, Standard Symbols L, DejaVu Sans");
michael@0 1538
michael@0 1539 // Some CJK fonts have bad underline offset, their CJK character glyphs are overlapped (or adjoined) to its underline.
michael@0 1540 // These fonts are ignored the underline offset, instead of it, the underline is lowered to bottom of its em descent.
michael@0 1541 pref("font.blacklist.underline_offset", "FangSong,Gulim,GulimChe,MingLiU,MingLiU-ExtB,MingLiU_HKSCS,MingLiU-HKSCS-ExtB,MS Gothic,MS Mincho,MS PGothic,MS PMincho,MS UI Gothic,PMingLiU,PMingLiU-ExtB,SimHei,SimSun,SimSun-ExtB,Hei,Kai,Apple LiGothic,Apple LiSung,Osaka");
michael@0 1542
michael@0 1543 #ifdef MOZ_WIDGET_GONK
michael@0 1544 // Whitelist of fonts that ship with B2G that do not include space lookups in
michael@0 1545 // default features. This allows us to skip analyzing the GSUB/GPOS tables
michael@0 1546 // unless features are explicitly enabled.
michael@0 1547 // Use NSPR_LOG_MODULES=fontinit:5 to dump out details of space lookups
michael@0 1548 pref("font.whitelist.skip_default_features_space_check", "Fira Sans OT,Fira Mono OT");
michael@0 1549 #endif
michael@0 1550
michael@0 1551 pref("images.dither", "auto");
michael@0 1552 pref("security.directory", "");
michael@0 1553
michael@0 1554 pref("signed.applets.codebase_principal_support", false);
michael@0 1555 pref("security.checkloaduri", true);
michael@0 1556 pref("security.xpconnect.plugin.unrestricted", true);
michael@0 1557 // security-sensitive dialogs should delay button enabling. In milliseconds.
michael@0 1558 pref("security.dialog_enable_delay", 1000);
michael@0 1559 pref("security.notification_enable_delay", 500);
michael@0 1560
michael@0 1561 pref("security.csp.enable", true);
michael@0 1562 pref("security.csp.debug", false);
michael@0 1563 pref("security.csp.experimentalEnabled", false);
michael@0 1564
michael@0 1565 // Mixed content blocking
michael@0 1566 pref("security.mixed_content.block_active_content", false);
michael@0 1567 pref("security.mixed_content.block_display_content", false);
michael@0 1568
michael@0 1569 // Disable pinning checks by default.
michael@0 1570 pref("security.cert_pinning.enforcement_level", 0);
michael@0 1571
michael@0 1572 // Modifier key prefs: default to Windows settings,
michael@0 1573 // menu access key = alt, accelerator key = control.
michael@0 1574 // Use 17 for Ctrl, 18 for Alt, 224 for Meta, 91 for Win, 0 for none. Mac settings in macprefs.js
michael@0 1575 pref("ui.key.accelKey", 17);
michael@0 1576 pref("ui.key.menuAccessKey", 18);
michael@0 1577 pref("ui.key.generalAccessKey", -1);
michael@0 1578
michael@0 1579 // If generalAccessKey is -1, use the following two prefs instead.
michael@0 1580 // Use 0 for disabled, 1 for Shift, 2 for Ctrl, 4 for Alt, 8 for Meta, 16 for Win
michael@0 1581 // (values can be combined, e.g. 5 for Alt+Shift)
michael@0 1582 pref("ui.key.chromeAccess", 4);
michael@0 1583 pref("ui.key.contentAccess", 5);
michael@0 1584
michael@0 1585 pref("ui.key.menuAccessKeyFocuses", false); // overridden below
michael@0 1586 pref("ui.key.saveLink.shift", true); // true = shift, false = meta
michael@0 1587
michael@0 1588 // Disable page loading activity cursor by default.
michael@0 1589 pref("ui.use_activity_cursor", false);
michael@0 1590
michael@0 1591 // Middle-mouse handling
michael@0 1592 pref("middlemouse.paste", false);
michael@0 1593 pref("middlemouse.openNewWindow", true);
michael@0 1594 pref("middlemouse.contentLoadURL", false);
michael@0 1595 pref("middlemouse.scrollbarPosition", false);
michael@0 1596
michael@0 1597 // Clipboard behavior
michael@0 1598 pref("clipboard.autocopy", false);
michael@0 1599
michael@0 1600 // mouse wheel scroll transaction period of time (in milliseconds)
michael@0 1601 pref("mousewheel.transaction.timeout", 1500);
michael@0 1602 // mouse wheel scroll transaction is held even if the mouse cursor is moved.
michael@0 1603 pref("mousewheel.transaction.ignoremovedelay", 100);
michael@0 1604
michael@0 1605 // prefs for app level mouse wheel scrolling acceleration.
michael@0 1606 // number of mousewheel clicks when acceleration starts
michael@0 1607 // acceleration can be turned off if pref is set to -1
michael@0 1608 pref("mousewheel.acceleration.start", -1);
michael@0 1609 // factor to be multiplied for constant acceleration
michael@0 1610 pref("mousewheel.acceleration.factor", 10);
michael@0 1611
michael@0 1612 // Prefs for override the system mouse wheel scrolling speed on the root
michael@0 1613 // content of the web pages. When
michael@0 1614 // "mousewheel.system_scroll_override_on_root_content.enabled" is true and the system
michael@0 1615 // scrolling speed isn't customized by the user, the root content scrolling
michael@0 1616 // speed is multiplied by the following factors. The value will be used as
michael@0 1617 // 1/100. E.g., 200 means 2.00.
michael@0 1618 // NOTE: Even if "mousewheel.system_scroll_override_on_root_content.enabled" is
michael@0 1619 // true, when Gecko detects the user customized the system scrolling speed
michael@0 1620 // settings, the override isn't executed.
michael@0 1621 pref("mousewheel.system_scroll_override_on_root_content.vertical.factor", 200);
michael@0 1622 pref("mousewheel.system_scroll_override_on_root_content.horizontal.factor", 200);
michael@0 1623
michael@0 1624 // mousewheel.*.action can specify the action when you use mosue wheel.
michael@0 1625 // When no modifier keys are pressed or two or more modifires are pressed,
michael@0 1626 // .default is used.
michael@0 1627 // 0: Nothing happens
michael@0 1628 // 1: Scrolling contents
michael@0 1629 // 2: Go back or go forward, in your history
michael@0 1630 // 3: Zoom in or out.
michael@0 1631 pref("mousewheel.default.action", 1);
michael@0 1632 pref("mousewheel.with_alt.action", 2);
michael@0 1633 pref("mousewheel.with_control.action", 3);
michael@0 1634 pref("mousewheel.with_meta.action", 1); // command key on Mac
michael@0 1635 pref("mousewheel.with_shift.action", 1);
michael@0 1636 pref("mousewheel.with_win.action", 1);
michael@0 1637
michael@0 1638 // mousewheel.*.action.override_x will override the action
michael@0 1639 // when the mouse wheel is rotated along the x direction.
michael@0 1640 // -1: Don't override the action.
michael@0 1641 // 0 to 3: Override the action with the specified value.
michael@0 1642 pref("mousewheel.default.action.override_x", -1);
michael@0 1643 pref("mousewheel.with_alt.action.override_x", -1);
michael@0 1644 pref("mousewheel.with_control.action.override_x", -1);
michael@0 1645 pref("mousewheel.with_meta.action.override_x", -1); // command key on Mac
michael@0 1646 pref("mousewheel.with_shift.action.override_x", -1);
michael@0 1647 pref("mousewheel.with_win.action.override_x", -1);
michael@0 1648
michael@0 1649 // mousewheel.*.delta_multiplier_* can specify the value muliplied by the delta
michael@0 1650 // value. The values will be used after divided by 100. I.e., 100 means 1.0,
michael@0 1651 // -100 means -1.0. If the values were negative, the direction would be
michael@0 1652 // reverted. The absolue value must be 100 or larger.
michael@0 1653 pref("mousewheel.default.delta_multiplier_x", 100);
michael@0 1654 pref("mousewheel.default.delta_multiplier_y", 100);
michael@0 1655 pref("mousewheel.default.delta_multiplier_z", 100);
michael@0 1656 pref("mousewheel.with_alt.delta_multiplier_x", 100);
michael@0 1657 pref("mousewheel.with_alt.delta_multiplier_y", 100);
michael@0 1658 pref("mousewheel.with_alt.delta_multiplier_z", 100);
michael@0 1659 pref("mousewheel.with_control.delta_multiplier_x", 100);
michael@0 1660 pref("mousewheel.with_control.delta_multiplier_y", 100);
michael@0 1661 pref("mousewheel.with_control.delta_multiplier_z", 100);
michael@0 1662 pref("mousewheel.with_meta.delta_multiplier_x", 100); // command key on Mac
michael@0 1663 pref("mousewheel.with_meta.delta_multiplier_y", 100); // command key on Mac
michael@0 1664 pref("mousewheel.with_meta.delta_multiplier_z", 100); // command key on Mac
michael@0 1665 pref("mousewheel.with_shift.delta_multiplier_x", 100);
michael@0 1666 pref("mousewheel.with_shift.delta_multiplier_y", 100);
michael@0 1667 pref("mousewheel.with_shift.delta_multiplier_z", 100);
michael@0 1668 pref("mousewheel.with_win.delta_multiplier_x", 100);
michael@0 1669 pref("mousewheel.with_win.delta_multiplier_y", 100);
michael@0 1670 pref("mousewheel.with_win.delta_multiplier_z", 100);
michael@0 1671
michael@0 1672 // If line-height is lower than this value (in device pixels), 1 line scroll
michael@0 1673 // scrolls this height.
michael@0 1674 pref("mousewheel.min_line_scroll_amount", 5);
michael@0 1675
michael@0 1676 // These define the smooth scroll behavior (min ms, max ms) for different triggers
michael@0 1677 // Some triggers:
michael@0 1678 // mouseWheel: Discrete mouse wheel events, Synaptics touchpads on windows (generate wheel events)
michael@0 1679 // Lines: Up/Down/Left/Right KB arrows
michael@0 1680 // Pages: Page up/down, Space
michael@0 1681 // Scrollbars: Clicking scrollbars arrows, clicking scrollbars tracks
michael@0 1682 // Note: Currently OS X trackpad and magic mouse don't use our smooth scrolling
michael@0 1683 // Note: These are relevant only when "general.smoothScroll" is enabled
michael@0 1684 pref("general.smoothScroll.mouseWheel.durationMinMS", 200);
michael@0 1685 pref("general.smoothScroll.mouseWheel.durationMaxMS", 400);
michael@0 1686 pref("general.smoothScroll.pixels.durationMinMS", 150);
michael@0 1687 pref("general.smoothScroll.pixels.durationMaxMS", 150);
michael@0 1688 pref("general.smoothScroll.lines.durationMinMS", 150);
michael@0 1689 pref("general.smoothScroll.lines.durationMaxMS", 150);
michael@0 1690 pref("general.smoothScroll.pages.durationMinMS", 150);
michael@0 1691 pref("general.smoothScroll.pages.durationMaxMS", 150);
michael@0 1692 pref("general.smoothScroll.scrollbars.durationMinMS", 150);
michael@0 1693 pref("general.smoothScroll.scrollbars.durationMaxMS", 150);
michael@0 1694 pref("general.smoothScroll.other.durationMinMS", 150);
michael@0 1695 pref("general.smoothScroll.other.durationMaxMS", 150);
michael@0 1696 // Enable disable smooth scrolling for different triggers (when "general.smoothScroll" is enabled)
michael@0 1697 pref("general.smoothScroll.mouseWheel", true);
michael@0 1698 pref("general.smoothScroll.pixels", true);
michael@0 1699 pref("general.smoothScroll.lines", true);
michael@0 1700 pref("general.smoothScroll.pages", true);
michael@0 1701 pref("general.smoothScroll.scrollbars", true);
michael@0 1702 pref("general.smoothScroll.other", true);
michael@0 1703 // To connect consecutive scroll events into a continuous flow, the animation's duration
michael@0 1704 // should be longer than scroll events intervals (or else the scroll will stop
michael@0 1705 // before the next event arrives - we're guessing next interval by averaging recent
michael@0 1706 // intervals).
michael@0 1707 // This defines how longer is the duration compared to events interval (percentage)
michael@0 1708 pref("general.smoothScroll.durationToIntervalRatio", 200);
michael@0 1709
michael@0 1710 pref("profile.confirm_automigration",true);
michael@0 1711 // profile.migration_behavior determines how the profiles root is set
michael@0 1712 // 0 - use NS_APP_USER_PROFILES_ROOT_DIR
michael@0 1713 // 1 - create one based on the NS4.x profile root
michael@0 1714 // 2 - use, if not empty, profile.migration_directory otherwise same as 0
michael@0 1715 pref("profile.migration_behavior",0);
michael@0 1716 pref("profile.migration_directory", "");
michael@0 1717
michael@0 1718 // the amount of time (in seconds) that must elapse
michael@0 1719 // before we think your mozilla profile is defunct
michael@0 1720 // and you'd benefit from re-migrating from 4.x
michael@0 1721 // see bug #137886 for more details
michael@0 1722 //
michael@0 1723 // if -1, we never think your profile is defunct
michael@0 1724 // and users will never see the remigrate UI.
michael@0 1725 pref("profile.seconds_until_defunct", -1);
michael@0 1726 // We can show it anytime from menus
michael@0 1727 pref("profile.manage_only_at_launch", false);
michael@0 1728
michael@0 1729 pref("prefs.converted-to-utf8",false);
michael@0 1730
michael@0 1731 // ------------------
michael@0 1732 // Text Direction
michael@0 1733 // ------------------
michael@0 1734 // 1 = directionLTRBidi *
michael@0 1735 // 2 = directionRTLBidi
michael@0 1736 pref("bidi.direction", 1);
michael@0 1737 // ------------------
michael@0 1738 // Text Type
michael@0 1739 // ------------------
michael@0 1740 // 1 = charsettexttypeBidi *
michael@0 1741 // 2 = logicaltexttypeBidi
michael@0 1742 // 3 = visualtexttypeBidi
michael@0 1743 pref("bidi.texttype", 1);
michael@0 1744 // ------------------
michael@0 1745 // Numeral Style
michael@0 1746 // ------------------
michael@0 1747 // 0 = nominalnumeralBidi *
michael@0 1748 // 1 = regularcontextnumeralBidi
michael@0 1749 // 2 = hindicontextnumeralBidi
michael@0 1750 // 3 = arabicnumeralBidi
michael@0 1751 // 4 = hindinumeralBidi
michael@0 1752 // 5 = persiancontextnumeralBidi
michael@0 1753 // 6 = persiannumeralBidi
michael@0 1754 pref("bidi.numeral", 0);
michael@0 1755 // ------------------
michael@0 1756 // Support Mode
michael@0 1757 // ------------------
michael@0 1758 // 1 = mozillaBidisupport *
michael@0 1759 // 2 = OsBidisupport
michael@0 1760 // 3 = disableBidisupport
michael@0 1761 pref("bidi.support", 1);
michael@0 1762 // Whether delete and backspace should immediately delete characters not
michael@0 1763 // visually adjacent to the caret, or adjust the visual position of the caret
michael@0 1764 // on the first keypress and delete the character on a second keypress
michael@0 1765 pref("bidi.edit.delete_immediately", false);
michael@0 1766
michael@0 1767 // Bidi caret movement style:
michael@0 1768 // 0 = logical
michael@0 1769 // 1 = visual
michael@0 1770 // 2 = visual, but logical during selection
michael@0 1771 pref("bidi.edit.caret_movement_style", 2);
michael@0 1772
michael@0 1773 // Setting this pref to |true| forces Bidi UI menu items and keyboard shortcuts
michael@0 1774 // to be exposed, and enables the directional caret hook. By default, only
michael@0 1775 // expose it for bidi-associated system locales.
michael@0 1776 pref("bidi.browser.ui", false);
michael@0 1777
michael@0 1778 // used for double-click word selection behavior. Win will override.
michael@0 1779 pref("layout.word_select.eat_space_to_next_word", false);
michael@0 1780 pref("layout.word_select.stop_at_punctuation", true);
michael@0 1781
michael@0 1782 // controls caret style and word-delete during text selection
michael@0 1783 // 0 = use platform default
michael@0 1784 // 1 = caret moves and blinks as when there is no selection; word
michael@0 1785 // delete deselects the selection and then deletes word
michael@0 1786 // 2 = caret moves to selection edge and is not visible during selection;
michael@0 1787 // word delete deletes the selection (Mac and Linux default)
michael@0 1788 // 3 = caret moves and blinks as when there is no selection; word delete
michael@0 1789 // deletes the selection
michael@0 1790 // Windows default is 1 for word delete behavior, the rest as for 2.
michael@0 1791 pref("layout.selection.caret_style", 0);
michael@0 1792
michael@0 1793 // pref to force frames to be resizable
michael@0 1794 pref("layout.frames.force_resizability", false);
michael@0 1795
michael@0 1796 // pref to report CSS errors to the error console
michael@0 1797 pref("layout.css.report_errors", true);
michael@0 1798
michael@0 1799 // Should the :visited selector ever match (otherwise :link matches instead)?
michael@0 1800 pref("layout.css.visited_links_enabled", true);
michael@0 1801
michael@0 1802 // Override DPI. A value of -1 means use the maximum of 96 and the system DPI.
michael@0 1803 // A value of 0 means use the system DPI. A positive value is used as the DPI.
michael@0 1804 // This sets the physical size of a device pixel and thus controls the
michael@0 1805 // interpretation of physical units such as "pt".
michael@0 1806 pref("layout.css.dpi", -1);
michael@0 1807
michael@0 1808 // Set the number of device pixels per CSS pixel. A value <= 0 means choose
michael@0 1809 // automatically based on user settings for the platform (e.g., "UI scale factor"
michael@0 1810 // on Mac). A positive value is used as-is. This effectively controls the size
michael@0 1811 // of a CSS "px". This is only used for windows on the screen, not for printing.
michael@0 1812 pref("layout.css.devPixelsPerPx", "-1.0");
michael@0 1813
michael@0 1814 // Is support for CSS Masking features enabled?
michael@0 1815 #ifdef RELEASE_BUILD
michael@0 1816 pref("layout.css.masking.enabled", false);
michael@0 1817 #else
michael@0 1818 pref("layout.css.masking.enabled", true);
michael@0 1819 #endif
michael@0 1820
michael@0 1821 // Is support for mix-blend-mode enabled?
michael@0 1822 pref("layout.css.mix-blend-mode.enabled", false);
michael@0 1823
michael@0 1824 // Is support for the the @supports rule enabled?
michael@0 1825 pref("layout.css.supports-rule.enabled", true);
michael@0 1826
michael@0 1827 // Is support for CSS Filters enabled?
michael@0 1828 pref("layout.css.filters.enabled", false);
michael@0 1829
michael@0 1830 // Is support for CSS sticky positioning enabled?
michael@0 1831 #ifdef RELEASE_BUILD
michael@0 1832 pref("layout.css.sticky.enabled", false);
michael@0 1833 #else
michael@0 1834 pref("layout.css.sticky.enabled", true);
michael@0 1835 #endif
michael@0 1836
michael@0 1837 // Is support for CSS "will-change" enabled?
michael@0 1838 pref("layout.css.will-change.enabled", false);
michael@0 1839
michael@0 1840 // Is support for DOMPoint enabled?
michael@0 1841 pref("layout.css.DOMPoint.enabled", true);
michael@0 1842
michael@0 1843 // Is support for DOMQuad enabled?
michael@0 1844 pref("layout.css.DOMQuad.enabled", true);
michael@0 1845
michael@0 1846 // Is support for GeometryUtils.getBoxQuads enabled?
michael@0 1847 #ifdef RELEASE_BUILD
michael@0 1848 pref("layout.css.getBoxQuads.enabled", false);
michael@0 1849 #else
michael@0 1850 pref("layout.css.getBoxQuads.enabled", true);
michael@0 1851 #endif
michael@0 1852
michael@0 1853 // Is support for GeometryUtils.getBoxQuads enabled?
michael@0 1854 #ifdef RELEASE_BUILD
michael@0 1855 pref("layout.css.convertFromNode.enabled", false);
michael@0 1856 #else
michael@0 1857 pref("layout.css.convertFromNode.enabled", true);
michael@0 1858 #endif
michael@0 1859
michael@0 1860 // Is support for CSS "text-align: true X" enabled?
michael@0 1861 pref("layout.css.text-align-true-value.enabled", false);
michael@0 1862
michael@0 1863 // Is support for the CSS4 image-orientation property enabled?
michael@0 1864 pref("layout.css.image-orientation.enabled", true);
michael@0 1865
michael@0 1866 // Is support for CSS3 Fonts features enabled?
michael@0 1867 // (includes font-variant-*, font-kerning, font-synthesis
michael@0 1868 // and the @font-feature-values rule)
michael@0 1869 // Note: with this enabled, font-feature-settings is aliased
michael@0 1870 // to -moz-font-feature-settings. When unprefixing, this should
michael@0 1871 // be reversed, -moz-font-feature-settings should alias to
michael@0 1872 // font-feature-settings.
michael@0 1873 #ifdef RELEASE_BUILD
michael@0 1874 pref("layout.css.font-features.enabled", false);
michael@0 1875 #else
michael@0 1876 pref("layout.css.font-features.enabled", true);
michael@0 1877 #endif
michael@0 1878
michael@0 1879 // Are sets of prefixed properties supported?
michael@0 1880 pref("layout.css.prefixes.border-image", true);
michael@0 1881 pref("layout.css.prefixes.transforms", true);
michael@0 1882 pref("layout.css.prefixes.transitions", true);
michael@0 1883 pref("layout.css.prefixes.animations", true);
michael@0 1884 pref("layout.css.prefixes.box-sizing", true);
michael@0 1885
michael@0 1886 // Is support for the :scope selector enabled?
michael@0 1887 #ifdef RELEASE_BUILD
michael@0 1888 pref("layout.css.scope-pseudo.enabled", false);
michael@0 1889 #else
michael@0 1890 pref("layout.css.scope-pseudo.enabled", true);
michael@0 1891 #endif
michael@0 1892
michael@0 1893 // Is support for background-blend-mode enabled?
michael@0 1894 pref("layout.css.background-blend-mode.enabled", true);
michael@0 1895
michael@0 1896 // Is support for CSS vertical text enabled?
michael@0 1897 pref("layout.css.vertical-text.enabled", false);
michael@0 1898
michael@0 1899 // Is -moz-osx-font-smoothing enabled?
michael@0 1900 // Only supported in OSX builds
michael@0 1901 #ifdef XP_MACOSX
michael@0 1902 pref("layout.css.osx-font-smoothing.enabled", true);
michael@0 1903 #else
michael@0 1904 pref("layout.css.osx-font-smoothing.enabled", false);
michael@0 1905 #endif
michael@0 1906
michael@0 1907 // Is support for the CSS-wide "unset" value enabled?
michael@0 1908 pref("layout.css.unset-value.enabled", true);
michael@0 1909
michael@0 1910 // Is support for the "all" shorthand enabled?
michael@0 1911 pref("layout.css.all-shorthand.enabled", true);
michael@0 1912
michael@0 1913 // Is support for CSS variables enabled?
michael@0 1914 pref("layout.css.variables.enabled", true);
michael@0 1915
michael@0 1916 // Is support for CSS overflow-clip-box enabled for non-UA sheets?
michael@0 1917 pref("layout.css.overflow-clip-box.enabled", false);
michael@0 1918
michael@0 1919 // pref for which side vertical scrollbars should be on
michael@0 1920 // 0 = end-side in UI direction
michael@0 1921 // 1 = end-side in document/content direction
michael@0 1922 // 2 = right
michael@0 1923 // 3 = left
michael@0 1924 pref("layout.scrollbar.side", 0);
michael@0 1925
michael@0 1926 // pref to stop overlay scrollbars from fading out, for testing purposes
michael@0 1927 pref("layout.testing.overlay-scrollbars.always-visible", false);
michael@0 1928
michael@0 1929 // Enable/disable interruptible reflow, which allows reflows to stop
michael@0 1930 // before completion (and display the partial results) when user events
michael@0 1931 // are pending.
michael@0 1932 pref("layout.interruptible-reflow.enabled", true);
michael@0 1933
michael@0 1934 // pref to control browser frame rate, in Hz. A value <= 0 means choose
michael@0 1935 // automatically based on knowledge of the platform (or 60Hz if no platform-
michael@0 1936 // specific information is available).
michael@0 1937 pref("layout.frame_rate", -1);
michael@0 1938
michael@0 1939 // pref to control precision of the frame rate timer. When true,
michael@0 1940 // we use a "precise" timer, which means each notification fires
michael@0 1941 // Nms after the start of the last notification. That means if the
michael@0 1942 // processing of the notification is slow, the timer can fire immediately
michael@0 1943 // after we've just finished processing the last notification, which might
michael@0 1944 // lead to starvation problems.
michael@0 1945 // When false, we use a "slack" timer which fires Nms after the *end*
michael@0 1946 // of the last notification. This can give less tight frame rates
michael@0 1947 // but provides more time for other operations when the browser is
michael@0 1948 // heavily loaded.
michael@0 1949 pref("layout.frame_rate.precise", false);
michael@0 1950
michael@0 1951 // pref to permit users to make verified SOAP calls by default
michael@0 1952 pref("capability.policy.default.SOAPCall.invokeVerifySourceHeader", "allAccess");
michael@0 1953
michael@0 1954 // if true, allow plug-ins to override internal imglib decoder mime types in full-page mode
michael@0 1955 pref("plugin.override_internal_types", false);
michael@0 1956
michael@0 1957 // See bug 136985. Gives embedders a pref to hook into to show
michael@0 1958 // a popup blocker if they choose.
michael@0 1959 pref("browser.popups.showPopupBlocker", true);
michael@0 1960
michael@0 1961 // Pref to control whether the viewmanager code does double-buffering or not
michael@0 1962 // See http://bugzilla.mozilla.org/show_bug.cgi?id=169483 for further details...
michael@0 1963 pref("viewmanager.do_doublebuffering", true);
michael@0 1964
michael@0 1965 // enable single finger gesture input (win7+ tablets)
michael@0 1966 pref("gestures.enable_single_finger_input", true);
michael@0 1967
michael@0 1968 pref("editor.resizing.preserve_ratio", true);
michael@0 1969 pref("editor.positioning.offset", 0);
michael@0 1970
michael@0 1971 pref("dom.use_watchdog", true);
michael@0 1972 pref("dom.max_chrome_script_run_time", 20);
michael@0 1973 pref("dom.max_script_run_time", 10);
michael@0 1974
michael@0 1975 // If true, ArchiveReader will be enabled
michael@0 1976 pref("dom.archivereader.enabled", false);
michael@0 1977
michael@0 1978 // Hang monitor timeout after which we kill the browser, in seconds
michael@0 1979 // (0 is disabled)
michael@0 1980 // Disabled on all platforms per bug 705748 until the found issues are
michael@0 1981 // resolved.
michael@0 1982 pref("hangmonitor.timeout", 0);
michael@0 1983
michael@0 1984 pref("plugins.load_appdir_plugins", false);
michael@0 1985 // If true, plugins will be click to play
michael@0 1986 pref("plugins.click_to_play", false);
michael@0 1987
michael@0 1988 // A comma-delimited list of plugin name prefixes matching plugins that will be
michael@0 1989 // exposed when enumerating navigator.plugins[]. For example, prefix "Shockwave"
michael@0 1990 // matches both Adobe Flash Player ("Shockwave Flash") and Adobe Shockwave
michael@0 1991 // Player ("Shockwave for Director"). To hide all plugins from enumeration, use
michael@0 1992 // the empty string "" to match no plugin names. To allow all plugins to be
michael@0 1993 // enumerated, use the string "*" to match all plugin names.
michael@0 1994 pref("plugins.enumerable_names", "*");
michael@0 1995
michael@0 1996 // The default value for nsIPluginTag.enabledState (STATE_ENABLED = 2)
michael@0 1997 pref("plugin.default.state", 2);
michael@0 1998
michael@0 1999 // The MIME type that should bind to legacy java-specific invocations like
michael@0 2000 // <applet> and <object data="java:foo">. Setting this to a non-java MIME type
michael@0 2001 // is undefined behavior.
michael@0 2002 pref("plugin.java.mime", "application/x-java-vm");
michael@0 2003
michael@0 2004 // How long in minutes we will allow a plugin to work after the user has chosen
michael@0 2005 // to allow it "now"
michael@0 2006 pref("plugin.sessionPermissionNow.intervalInMinutes", 60);
michael@0 2007 // How long in days we will allow a plugin to work after the user has chosen
michael@0 2008 // to allow it persistently.
michael@0 2009 pref("plugin.persistentPermissionAlways.intervalInDays", 90);
michael@0 2010
michael@0 2011 #ifndef DEBUG
michael@0 2012 // How long a plugin is allowed to process a synchronous IPC message
michael@0 2013 // before we consider it "hung".
michael@0 2014 pref("dom.ipc.plugins.timeoutSecs", 45);
michael@0 2015 // How long a plugin process will wait for a response from the parent
michael@0 2016 // to a synchronous request before terminating itself. After this
michael@0 2017 // point the child assumes the parent is hung. Currently disabled.
michael@0 2018 pref("dom.ipc.plugins.parentTimeoutSecs", 0);
michael@0 2019 // How long a plugin launch is allowed to take before
michael@0 2020 // we consider it failed.
michael@0 2021 pref("dom.ipc.plugins.processLaunchTimeoutSecs", 45);
michael@0 2022 #ifdef XP_WIN
michael@0 2023 // How long a plugin is allowed to process a synchronous IPC message
michael@0 2024 // before we display the plugin hang UI
michael@0 2025 pref("dom.ipc.plugins.hangUITimeoutSecs", 11);
michael@0 2026 // Minimum time that the plugin hang UI will be displayed
michael@0 2027 pref("dom.ipc.plugins.hangUIMinDisplaySecs", 10);
michael@0 2028 #endif
michael@0 2029 // How long a content process can take before closing its IPC channel
michael@0 2030 // after shutdown is initiated. If the process exceeds the timeout,
michael@0 2031 // we fear the worst and kill it.
michael@0 2032 pref("dom.ipc.tabs.shutdownTimeoutSecs", 5);
michael@0 2033 #else
michael@0 2034 // No timeout in DEBUG builds
michael@0 2035 pref("dom.ipc.plugins.timeoutSecs", 0);
michael@0 2036 pref("dom.ipc.plugins.processLaunchTimeoutSecs", 0);
michael@0 2037 pref("dom.ipc.plugins.parentTimeoutSecs", 0);
michael@0 2038 #ifdef XP_WIN
michael@0 2039 pref("dom.ipc.plugins.hangUITimeoutSecs", 0);
michael@0 2040 pref("dom.ipc.plugins.hangUIMinDisplaySecs", 0);
michael@0 2041 #endif
michael@0 2042 pref("dom.ipc.tabs.shutdownTimeoutSecs", 0);
michael@0 2043 #endif
michael@0 2044
michael@0 2045 #ifdef XP_WIN
michael@0 2046 // Disable oopp for java on windows. They run their own
michael@0 2047 // process isolation which conflicts with our implementation.
michael@0 2048 pref("dom.ipc.plugins.java.enabled", false);
michael@0 2049 #endif
michael@0 2050
michael@0 2051 pref("dom.ipc.plugins.flash.subprocess.crashreporter.enabled", true);
michael@0 2052 pref("dom.ipc.plugins.reportCrashURL", true);
michael@0 2053
michael@0 2054 pref("dom.ipc.processCount", 1);
michael@0 2055
michael@0 2056 // Enable the use of display-lists for SVG hit-testing and painting.
michael@0 2057 pref("svg.display-lists.hit-testing.enabled", true);
michael@0 2058 pref("svg.display-lists.painting.enabled", true);
michael@0 2059
michael@0 2060 // Is support for the SVG 2 paint-order property enabled?
michael@0 2061 pref("svg.paint-order.enabled", true);
michael@0 2062
michael@0 2063 // Is support for the new marker features from SVG 2 enabled? Currently
michael@0 2064 // this just includes <marker orient="auto-start-reverse">.
michael@0 2065 #ifdef RELEASE_BUILD
michael@0 2066 pref("svg.marker-improvements.enabled", false);
michael@0 2067 #else
michael@0 2068 pref("svg.marker-improvements.enabled", true);
michael@0 2069 #endif
michael@0 2070
michael@0 2071 pref("font.minimum-size.ar", 0);
michael@0 2072 pref("font.minimum-size.x-armn", 0);
michael@0 2073 pref("font.minimum-size.x-beng", 0);
michael@0 2074 pref("font.minimum-size.x-baltic", 0);
michael@0 2075 pref("font.minimum-size.x-central-euro", 0);
michael@0 2076 pref("font.minimum-size.zh-CN", 0);
michael@0 2077 pref("font.minimum-size.zh-HK", 0);
michael@0 2078 pref("font.minimum-size.zh-TW", 0);
michael@0 2079 pref("font.minimum-size.x-cyrillic", 0);
michael@0 2080 pref("font.minimum-size.x-devanagari", 0);
michael@0 2081 pref("font.minimum-size.x-ethi", 0);
michael@0 2082 pref("font.minimum-size.x-geor", 0);
michael@0 2083 pref("font.minimum-size.el", 0);
michael@0 2084 pref("font.minimum-size.x-gujr", 0);
michael@0 2085 pref("font.minimum-size.x-guru", 0);
michael@0 2086 pref("font.minimum-size.he", 0);
michael@0 2087 pref("font.minimum-size.ja", 0);
michael@0 2088 pref("font.minimum-size.x-knda", 0);
michael@0 2089 pref("font.minimum-size.x-khmr", 0);
michael@0 2090 pref("font.minimum-size.ko", 0);
michael@0 2091 pref("font.minimum-size.x-mlym", 0);
michael@0 2092 pref("font.minimum-size.x-orya", 0);
michael@0 2093 pref("font.minimum-size.x-sinh", 0);
michael@0 2094 pref("font.minimum-size.x-tamil", 0);
michael@0 2095 pref("font.minimum-size.x-telu", 0);
michael@0 2096 pref("font.minimum-size.x-tibt", 0);
michael@0 2097 pref("font.minimum-size.th", 0);
michael@0 2098 pref("font.minimum-size.tr", 0);
michael@0 2099 pref("font.minimum-size.x-cans", 0);
michael@0 2100 pref("font.minimum-size.x-western", 0);
michael@0 2101 pref("font.minimum-size.x-unicode", 0);
michael@0 2102
michael@0 2103 /*
michael@0 2104 * A value greater than zero enables font size inflation for
michael@0 2105 * pan-and-zoom UIs, so that the fonts in a block are at least the size
michael@0 2106 * that, if a block's width is scaled to match the device's width, the
michael@0 2107 * fonts in the block are big enough that at most the pref value ems of
michael@0 2108 * text fit in *the width of the device*.
michael@0 2109 *
michael@0 2110 * When both this pref and the next are set, the larger inflation is
michael@0 2111 * used.
michael@0 2112 */
michael@0 2113 pref("font.size.inflation.emPerLine", 0);
michael@0 2114 /*
michael@0 2115 * A value greater than zero enables font size inflation for
michael@0 2116 * pan-and-zoom UIs, so that if a block's width is scaled to match the
michael@0 2117 * device's width, the fonts in a block are at least the font size
michael@0 2118 * given. The value given is in twips, i.e., 1/20 of a point, or 1/1440
michael@0 2119 * of an inch.
michael@0 2120 *
michael@0 2121 * When both this pref and the previous are set, the larger inflation is
michael@0 2122 * used.
michael@0 2123 */
michael@0 2124 pref("font.size.inflation.minTwips", 0);
michael@0 2125 /*
michael@0 2126 * In products with multi-mode pan-and-zoom and non-pan-and-zoom UIs,
michael@0 2127 * this pref forces font inflation to always be enabled in all modes.
michael@0 2128 * That is, any heuristics used to detect pan-and-zoom
michael@0 2129 * vs. non-pan-and-zoom modes are disabled and all content is treated
michael@0 2130 * as pan-and-zoom mode wrt font inflation.
michael@0 2131 *
michael@0 2132 * This pref has no effect if font inflation is not enabled through
michael@0 2133 * either of the prefs above. It has no meaning in single-mode UIs.
michael@0 2134 */
michael@0 2135 pref("font.size.inflation.forceEnabled", false);
michael@0 2136 /*
michael@0 2137 * In products with multi-mode pan-and-zoom and non-pan-and-zoom UIs,
michael@0 2138 * this pref disables font inflation in master-process contexts where
michael@0 2139 * existing heuristics can't be used determine enabled-ness.
michael@0 2140 *
michael@0 2141 * This pref has no effect if font inflation is not enabled through
michael@0 2142 * either of the prefs above. The "forceEnabled" pref above overrides
michael@0 2143 * this pref.
michael@0 2144 */
michael@0 2145 pref("font.size.inflation.disabledInMasterProcess", false);
michael@0 2146 /*
michael@0 2147 * Since the goal of font size inflation is to avoid having to
michael@0 2148 * repeatedly scroll side to side to read a block of text, and there are
michael@0 2149 * a number of page layouts where a relatively small chunk of text is
michael@0 2150 * better of not being inflated according to the same algorithm we use
michael@0 2151 * for larger chunks of text, we want a threshold for an amount of text
michael@0 2152 * that triggers font size inflation. This preference controls that
michael@0 2153 * threshold.
michael@0 2154 *
michael@0 2155 * It controls the threshold used within an *approximation* of the
michael@0 2156 * number of lines of text we use. In particular, if we assume that
michael@0 2157 * each character (collapsing collapsible whitespace) has a width the
michael@0 2158 * same as the em-size of the font (when, normally, it's actually quite
michael@0 2159 * a bit smaller on average), this preference gives the percentage of a
michael@0 2160 * number of lines of text we'd need to trigger inflation. This means
michael@0 2161 * that a percentage of 100 means that we'd need a number of characters
michael@0 2162 * (we know the font size and the width) equivalent to one line of
michael@0 2163 * square text (which is actually a lot less than a real line of text).
michael@0 2164 *
michael@0 2165 * A value of 0 means there's no character length threshold.
michael@0 2166 */
michael@0 2167 pref("font.size.inflation.lineThreshold", 400);
michael@0 2168
michael@0 2169 /*
michael@0 2170 * Defines the font size inflation mapping intercept parameter.
michael@0 2171 *
michael@0 2172 * Font size inflation computes a minimum font size, m, based on
michael@0 2173 * other preferences (see font.size.inflation.minTwips and
michael@0 2174 * font.size.inflation.emPerLine, above) and the width of the
michael@0 2175 * frame in which the text resides. Using this minimum, a specified
michael@0 2176 * font size, s, is mapped to an inflated font size, i, using an
michael@0 2177 * equation that varies depending on the value of the font size
michael@0 2178 * inflation mapping intercept parameter, P:
michael@0 2179 *
michael@0 2180 * If the intercept parameter is negative, then the following mapping
michael@0 2181 * function is used:
michael@0 2182 *
michael@0 2183 * i = m + s
michael@0 2184 *
michael@0 2185 * If the intercept parameter is non-negative, then the mapping function
michael@0 2186 * is a function such that its graph meets the graph of i = s at the
michael@0 2187 * point where both i and s are (1 + P/2) * m for values of s that are
michael@0 2188 * large enough. This means that when s=0, i is always equal to m.
michael@0 2189 */
michael@0 2190 pref("font.size.inflation.mappingIntercept", 1);
michael@0 2191
michael@0 2192
michael@0 2193 /*
michael@0 2194 * This controls the percentage that fonts will be inflated, if font
michael@0 2195 * size inflation is enabled. Essentially, if we have a specified font
michael@0 2196 * size, s, and an inflated font size, i, this specifies that the ratio
michael@0 2197 * i/s * 100 should never exceed the value of this preference.
michael@0 2198 *
michael@0 2199 * In order for this preference to have any effect, its value must be
michael@0 2200 * greater than 100, since font inflation can never decrease the ratio
michael@0 2201 * i/s.
michael@0 2202 */
michael@0 2203 pref("font.size.inflation.maxRatio", 0);
michael@0 2204
michael@0 2205 /*
michael@0 2206 * When enabled, the touch.radius and mouse.radius prefs allow events to be dispatched
michael@0 2207 * to nearby elements that are sensitive to the event. See PositionedEventTargeting.cpp.
michael@0 2208 * The 'mm' prefs define a rectangle around the nominal event target point within which
michael@0 2209 * we will search for suitable elements. 'visitedWeight' is a percentage weight;
michael@0 2210 * a value > 100 makes a visited link be treated as further away from the event target
michael@0 2211 * than it really is, while a value < 100 makes a visited link be treated as closer
michael@0 2212 * to the event target than it really is.
michael@0 2213 */
michael@0 2214 pref("ui.touch.radius.enabled", false);
michael@0 2215 pref("ui.touch.radius.leftmm", 8);
michael@0 2216 pref("ui.touch.radius.topmm", 12);
michael@0 2217 pref("ui.touch.radius.rightmm", 8);
michael@0 2218 pref("ui.touch.radius.bottommm", 4);
michael@0 2219 pref("ui.touch.radius.visitedWeight", 120);
michael@0 2220
michael@0 2221 pref("ui.mouse.radius.enabled", false);
michael@0 2222 pref("ui.mouse.radius.leftmm", 8);
michael@0 2223 pref("ui.mouse.radius.topmm", 12);
michael@0 2224 pref("ui.mouse.radius.rightmm", 8);
michael@0 2225 pref("ui.mouse.radius.bottommm", 4);
michael@0 2226 pref("ui.mouse.radius.visitedWeight", 120);
michael@0 2227
michael@0 2228 // When true, the ui.mouse.radius.* prefs will only affect simulated mouse events generated by touch input.
michael@0 2229 // When false, the prefs will be used for all mouse events.
michael@0 2230 pref("ui.mouse.radius.inputSource.touchOnly", true);
michael@0 2231
michael@0 2232 #ifdef XP_WIN
michael@0 2233
michael@0 2234 pref("font.name.serif.ar", "Times New Roman");
michael@0 2235 pref("font.name.sans-serif.ar", "Arial");
michael@0 2236 pref("font.name.monospace.ar", "Courier New");
michael@0 2237 pref("font.name.cursive.ar", "Comic Sans MS");
michael@0 2238
michael@0 2239 pref("font.name.serif.el", "Times New Roman");
michael@0 2240 pref("font.name.sans-serif.el", "Arial");
michael@0 2241 pref("font.name.monospace.el", "Courier New");
michael@0 2242 pref("font.name.cursive.el", "Comic Sans MS");
michael@0 2243
michael@0 2244 pref("font.name.serif.he", "Narkisim");
michael@0 2245 pref("font.name.sans-serif.he", "Arial");
michael@0 2246 pref("font.name.monospace.he", "Fixed Miriam Transparent");
michael@0 2247 pref("font.name.cursive.he", "Guttman Yad");
michael@0 2248 pref("font.name-list.serif.he", "Narkisim, David");
michael@0 2249 pref("font.name-list.monospace.he", "Fixed Miriam Transparent, Miriam Fixed, Rod, Courier New");
michael@0 2250 pref("font.name-list.cursive.he", "Guttman Yad, Ktav, Arial");
michael@0 2251
michael@0 2252 pref("font.name.serif.ja", "MS PMincho");
michael@0 2253 pref("font.name.sans-serif.ja", "MS PGothic");
michael@0 2254 pref("font.name.monospace.ja", "MS Gothic");
michael@0 2255 pref("font.name-list.serif.ja", "MS PMincho, MS Mincho, MS PGothic, MS Gothic,Meiryo");
michael@0 2256 pref("font.name-list.sans-serif.ja", "MS PGothic, MS Gothic, MS PMincho, MS Mincho,Meiryo");
michael@0 2257 pref("font.name-list.monospace.ja", "MS Gothic, MS Mincho, MS PGothic, MS PMincho,Meiryo");
michael@0 2258
michael@0 2259 pref("font.name.serif.ko", "Batang");
michael@0 2260 pref("font.name.sans-serif.ko", "Gulim");
michael@0 2261 pref("font.name.monospace.ko", "GulimChe");
michael@0 2262 pref("font.name.cursive.ko", "Gungsuh");
michael@0 2263
michael@0 2264 pref("font.name-list.serif.ko", "Batang, Gulim");
michael@0 2265 pref("font.name-list.sans-serif.ko", "Gulim");
michael@0 2266 pref("font.name-list.monospace.ko", "GulimChe");
michael@0 2267 pref("font.name-list.cursive.ko", "Gungsuh");
michael@0 2268
michael@0 2269 pref("font.name.serif.th", "Tahoma");
michael@0 2270 pref("font.name.sans-serif.th", "Tahoma");
michael@0 2271 pref("font.name.monospace.th", "Tahoma");
michael@0 2272 pref("font.name.cursive.th", "Tahoma");
michael@0 2273
michael@0 2274 pref("font.name.serif.tr", "Times New Roman");
michael@0 2275 pref("font.name.sans-serif.tr", "Arial");
michael@0 2276 pref("font.name.monospace.tr", "Courier New");
michael@0 2277 pref("font.name.cursive.tr", "Comic Sans MS");
michael@0 2278
michael@0 2279 pref("font.name.serif.x-baltic", "Times New Roman");
michael@0 2280 pref("font.name.sans-serif.x-baltic", "Arial");
michael@0 2281 pref("font.name.monospace.x-baltic", "Courier New");
michael@0 2282 pref("font.name.cursive.x-baltic", "Comic Sans MS");
michael@0 2283
michael@0 2284 pref("font.name.serif.x-central-euro", "Times New Roman");
michael@0 2285 pref("font.name.sans-serif.x-central-euro", "Arial");
michael@0 2286 pref("font.name.monospace.x-central-euro", "Courier New");
michael@0 2287 pref("font.name.cursive.x-central-euro", "Comic Sans MS");
michael@0 2288
michael@0 2289 pref("font.name.serif.x-cyrillic", "Times New Roman");
michael@0 2290 pref("font.name.sans-serif.x-cyrillic", "Arial");
michael@0 2291 pref("font.name.monospace.x-cyrillic", "Courier New");
michael@0 2292 pref("font.name.cursive.x-cyrillic", "Comic Sans MS");
michael@0 2293
michael@0 2294 pref("font.name.serif.x-unicode", "Times New Roman");
michael@0 2295 pref("font.name.sans-serif.x-unicode", "Arial");
michael@0 2296 pref("font.name.monospace.x-unicode", "Courier New");
michael@0 2297 pref("font.name.cursive.x-unicode", "Comic Sans MS");
michael@0 2298
michael@0 2299 pref("font.name.serif.x-western", "Times New Roman");
michael@0 2300 pref("font.name.sans-serif.x-western", "Arial");
michael@0 2301 pref("font.name.monospace.x-western", "Courier New");
michael@0 2302 pref("font.name.cursive.x-western", "Comic Sans MS");
michael@0 2303
michael@0 2304 pref("font.name.serif.zh-CN", "SimSun");
michael@0 2305 pref("font.name.sans-serif.zh-CN", "SimSun");
michael@0 2306 pref("font.name.monospace.zh-CN", "SimSun");
michael@0 2307 pref("font.name-list.serif.zh-CN", "MS Song, SimSun, SimSun-ExtB");
michael@0 2308 pref("font.name-list.sans-serif.zh-CN", "MS Song, SimSun, SimSun-ExtB");
michael@0 2309 pref("font.name-list.monospace.zh-CN", "MS Song, SimSun, SimSun-ExtB");
michael@0 2310
michael@0 2311 // Per Taiwanese users' demand. They don't want to use TC fonts for
michael@0 2312 // rendering Latin letters. (bug 88579)
michael@0 2313 pref("font.name.serif.zh-TW", "Times New Roman");
michael@0 2314 pref("font.name.sans-serif.zh-TW", "Arial");
michael@0 2315 pref("font.name.monospace.zh-TW", "MingLiU");
michael@0 2316 pref("font.name-list.serif.zh-TW", "PMingLiu, MingLiU, MingLiU-ExtB");
michael@0 2317 pref("font.name-list.sans-serif.zh-TW", "PMingLiU, MingLiU, MingLiU-ExtB");
michael@0 2318 pref("font.name-list.monospace.zh-TW", "MingLiU, MingLiU-ExtB");
michael@0 2319
michael@0 2320 // hkscsm3u.ttf (HKSCS-2001) : http://www.microsoft.com/hk/hkscs
michael@0 2321 // Hong Kong users have the same demand about glyphs for Latin letters (bug 88579)
michael@0 2322 pref("font.name.serif.zh-HK", "Times New Roman");
michael@0 2323 pref("font.name.sans-serif.zh-HK", "Arial");
michael@0 2324 pref("font.name.monospace.zh-HK", "MingLiu_HKSCS");
michael@0 2325 pref("font.name-list.serif.zh-HK", "MingLiu_HKSCS, Ming(for ISO10646), MingLiU, MingLiU_HKSCS-ExtB");
michael@0 2326 pref("font.name-list.sans-serif.zh-HK", "MingLiU_HKSCS, Ming(for ISO10646), MingLiU, MingLiU_HKSCS-ExtB");
michael@0 2327 pref("font.name-list.monospace.zh-HK", "MingLiU_HKSCS, Ming(for ISO10646), MingLiU, MingLiU_HKSCS-ExtB");
michael@0 2328
michael@0 2329 pref("font.name.serif.x-devanagari", "Kokila");
michael@0 2330 pref("font.name.sans-serif.x-devanagari", "Nirmala UI");
michael@0 2331 pref("font.name.monospace.x-devanagari", "Mangal");
michael@0 2332 pref("font.name-list.serif.x-devanagari", "Kokila, Raghindi");
michael@0 2333 pref("font.name-list.sans-serif.x-devanagari", "Nirmala UI, Mangal");
michael@0 2334 pref("font.name-list.monospace.x-devanagari", "Mangal, Nirmala UI");
michael@0 2335
michael@0 2336 pref("font.name.serif.x-tamil", "Latha");
michael@0 2337 pref("font.name.sans-serif.x-tamil", "Code2000");
michael@0 2338 pref("font.name.monospace.x-tamil", "Latha");
michael@0 2339 pref("font.name-list.serif.x-tamil", "Latha, Code2000");
michael@0 2340 pref("font.name-list.monospace.x-tamil", "Latha, Code2000");
michael@0 2341
michael@0 2342 # http://www.alanwood.net/unicode/fonts.html
michael@0 2343
michael@0 2344 pref("font.name.serif.x-armn", "Sylfaen");
michael@0 2345 pref("font.name.sans-serif.x-armn", "Arial AMU");
michael@0 2346 pref("font.name.monospace.x-armn", "Arial AMU");
michael@0 2347 pref("font.name-list.serif.x-armn", "Sylfaen,Arial Unicode MS, Code2000");
michael@0 2348 pref("font.name-list.monospace.x-armn", "Arial AMU, Arial Unicode MS, Code2000");
michael@0 2349
michael@0 2350 pref("font.name.serif.x-beng", "Vrinda");
michael@0 2351 pref("font.name.sans-serif.x-beng", "Vrinda");
michael@0 2352 pref("font.name.monospace.x-beng", "Mitra Mono");
michael@0 2353 pref("font.name-list.serif.x-beng", "Vrinda, Akaash, Likhan, Ekushey Punarbhaba, Code2000, Arial Unicode MS");
michael@0 2354 pref("font.name-list.sans-serif.x-beng", "Vrinda, Akaash, Likhan, Ekushey Punarbhaba, Code2000, Arial Unicode MS");
michael@0 2355 pref("font.name-list.monospace.x-beng", "Likhan, Mukti Narrow, Code2000, Arial Unicode MS");
michael@0 2356
michael@0 2357 pref("font.name.serif.x-cans", "Aboriginal Serif");
michael@0 2358 pref("font.name.sans-serif.x-cans", "Aboriginal Sans");
michael@0 2359 pref("font.name.monospace.x-cans", "Aboriginal Sans");
michael@0 2360 pref("font.name-list.serif.x-cans", "Aboriginal Serif, BJCree Uni");
michael@0 2361 pref("font.name-list.monospace.x-cans", "Aboriginal Sans, OskiDakelh, Pigiarniq, Uqammaq");
michael@0 2362
michael@0 2363 pref("font.name.serif.x-ethi", "Visual Geez Unicode");
michael@0 2364 pref("font.name.sans-serif.x-ethi", "GF Zemen Unicode");
michael@0 2365 pref("font.name.cursive.x-ethi", "Visual Geez Unicode Title");
michael@0 2366 pref("font.name.monospace.x-ethi", "Ethiopia Jiret");
michael@0 2367 pref("font.name-list.serif.x-ethi", "Visual Geez Unicode, Visual Geez Unicode Agazian, Code2000");
michael@0 2368 pref("font.name-list.monospace.x-ethi", "Ethiopia Jiret, Code2000");
michael@0 2369
michael@0 2370 pref("font.name.serif.x-geor", "Sylfaen");
michael@0 2371 pref("font.name.sans-serif.x-geor", "BPG Classic 99U");
michael@0 2372 pref("font.name.monospace.x-geor", "Code2000");
michael@0 2373 pref("font.name-list.serif.x-geor", "Sylfaen, BPG Paata Khutsuri U, TITUS Cyberbit Basic");
michael@0 2374 pref("font.name-list.monospace.x-geor", "BPG Classic 99U, Code2000, Arial Unicode MS");
michael@0 2375
michael@0 2376 pref("font.name.serif.x-gujr", "Shruti");
michael@0 2377 pref("font.name.sans-serif.x-gujr", "Shruti");
michael@0 2378 pref("font.name.monospace.x-gujr", "Code2000");
michael@0 2379 pref("font.name-list.serif.x-gujr", "Shruti, Code2000, Arial Unicode MS");
michael@0 2380 pref("font.name-list.monospace.x-gujr", "Code2000, Shruti, Arial Unicode MS");
michael@0 2381
michael@0 2382 pref("font.name.serif.x-guru", "Raavi");
michael@0 2383 pref("font.name.sans-serif.x-guru", "Code2000");
michael@0 2384 pref("font.name.monospace.x-guru", "Code2000");
michael@0 2385 pref("font.name-list.serif.x-guru", "Raavi, Saab, Code2000, Arial Unicode MS");
michael@0 2386 pref("font.name-list.monospace.x-guru", "Code2000, Raavi, Saab, Arial Unicode MS");
michael@0 2387
michael@0 2388 pref("font.name.serif.x-khmr", "PhnomPenh OT");
michael@0 2389 pref("font.name.sans-serif.x-khmr", "Khmer OS");
michael@0 2390 pref("font.name.monospace.x-khmr", "Code2000");
michael@0 2391 pref("font.name-list.serif.x-khmr", "PhnomPenh OT,.Mondulkiri U GR 1.5, Khmer OS");
michael@0 2392 pref("font.name-list.monospace.x-khmr", "Code2000, Khmer OS, Khmer OS System");
michael@0 2393
michael@0 2394 pref("font.name.serif.x-mlym", "Rachana_w01");
michael@0 2395 pref("font.name.sans-serif.x-mlym", "Rachana_w01");
michael@0 2396 pref("font.name.monospace.x-mlym", "Rachana_w01");
michael@0 2397 pref("font.name-list.serif.x-mlym", "AnjaliOldLipi, Kartika, ThoolikaUnicode, Code2000, Arial Unicode MS");
michael@0 2398 pref("font.name-list.sans-serif.x-mlym", "AnjaliOldLipi, Kartika, ThoolikaUnicode, Code2000, Arial Unicode MS");
michael@0 2399 pref("font.name-list.monospace.x-mlym", "AnjaliOldLipi, Kartika, ThoolikaUnicode, Code2000, Arial Unicode MS");
michael@0 2400
michael@0 2401 pref("font.name.serif.x-orya", "ori1Uni");
michael@0 2402 pref("font.name.sans-serif.x-orya", "ori1Uni");
michael@0 2403 pref("font.name.monospace.x-orya", "ori1Uni");
michael@0 2404 pref("font.name-list.serif.x-orya", "Kalinga, ori1Uni, Code2000, Arial Unicode MS");
michael@0 2405 pref("font.name-list.sans-serif.x-orya", "Kalinga, ori1Uni, Code2000, Arial Unicode MS");
michael@0 2406 pref("font.name-list.monospace.x-orya", "Kalinga, ori1Uni, Code2000, Arial Unicode MS");
michael@0 2407
michael@0 2408 pref("font.name.serif.x-telu", "Gautami");
michael@0 2409 pref("font.name.sans-serif.x-telu", "Gautami");
michael@0 2410 pref("font.name.monospace.x-telu", "Gautami");
michael@0 2411 pref("font.name-list.serif.x-telu", "Gautami, Akshar Unicode, Code2000, Arial Unicode MS");
michael@0 2412 pref("font.name-list.sans-serif.x-telu", "Gautami, Akshar Unicode, Code2000, Arial Unicode MS");
michael@0 2413 pref("font.name-list.monospace.x-telu", "Gautami, Akshar Unicode, Code2000, Arial Unicode MS");
michael@0 2414
michael@0 2415 pref("font.name.serif.x-knda", "Tunga");
michael@0 2416 pref("font.name.sans-serif.x-knda", "Tunga");
michael@0 2417 pref("font.name.monospace.x-knda", "Tunga");
michael@0 2418 pref("font.name-list.serif.x-knda", "Tunga, AksharUnicode, Code2000, Arial Unicode MS");
michael@0 2419 pref("font.name-list.sans-serif.x-knda", "Tunga, AksharUnicode, Code2000, Arial Unicode MS");
michael@0 2420 pref("font.name-list.monospace.x-knda", "Tunga, AksharUnicode, Code2000, Arial Unicode MS");
michael@0 2421
michael@0 2422 pref("font.name.serif.x-sinh", "Iskoola Pota");
michael@0 2423 pref("font.name.sans-serif.x-sinh", "Iskoola Pota");
michael@0 2424 pref("font.name.monospace.x-sinh", "Iskoola Pota");
michael@0 2425 pref("font.name-list.serif.x-sinh", "Iskoola Pota, AksharUnicode");
michael@0 2426 pref("font.name-list.sans-serif.x-sinh", "Iskoola Pota, AksharUnicode");
michael@0 2427 pref("font.name-list.monospace.x-sinh", "Iskoola Pota, AksharUnicode");
michael@0 2428
michael@0 2429 pref("font.name.serif.x-tibt", "Tibetan Machine Uni");
michael@0 2430 pref("font.name.sans-serif.x-tibt", "Tibetan Machine Uni");
michael@0 2431 pref("font.name.monospace.x-tibt", "Tibetan Machine Uni");
michael@0 2432 pref("font.name-list.serif.x-tibt", "Tibetan Machine Uni, Jomolhari, Microsoft Himalaya");
michael@0 2433 pref("font.name-list.sans-serif.x-tibt", "Tibetan Machine Uni, Jomolhari, Microsoft Himalaya");
michael@0 2434 pref("font.name-list.monospace.x-tibt", "Tibetan Machine Uni, Jomolhari, Microsoft Himalaya");
michael@0 2435
michael@0 2436 pref("font.default.ar", "sans-serif");
michael@0 2437 pref("font.size.variable.ar", 16);
michael@0 2438 pref("font.size.fixed.ar", 13);
michael@0 2439
michael@0 2440 pref("font.default.el", "serif");
michael@0 2441 pref("font.size.variable.el", 16);
michael@0 2442 pref("font.size.fixed.el", 13);
michael@0 2443
michael@0 2444 pref("font.default.he", "sans-serif");
michael@0 2445 pref("font.size.variable.he", 16);
michael@0 2446 pref("font.size.fixed.he", 13);
michael@0 2447
michael@0 2448 pref("font.default.ja", "sans-serif");
michael@0 2449 pref("font.size.variable.ja", 16);
michael@0 2450 pref("font.size.fixed.ja", 16);
michael@0 2451
michael@0 2452 pref("font.default.ko", "sans-serif");
michael@0 2453 pref("font.size.variable.ko", 16);
michael@0 2454 pref("font.size.fixed.ko", 16);
michael@0 2455
michael@0 2456 pref("font.default.th", "serif");
michael@0 2457 pref("font.size.variable.th", 16);
michael@0 2458 pref("font.size.fixed.th", 13);
michael@0 2459 pref("font.minimum-size.th", 10);
michael@0 2460
michael@0 2461 pref("font.default.tr", "serif");
michael@0 2462 pref("font.size.variable.tr", 16);
michael@0 2463 pref("font.size.fixed.tr", 13);
michael@0 2464
michael@0 2465 pref("font.default.x-baltic", "serif");
michael@0 2466 pref("font.size.variable.x-baltic", 16);
michael@0 2467 pref("font.size.fixed.x-baltic", 13);
michael@0 2468
michael@0 2469 pref("font.default.x-central-euro", "serif");
michael@0 2470 pref("font.size.variable.x-central-euro", 16);
michael@0 2471 pref("font.size.fixed.x-central-euro", 13);
michael@0 2472
michael@0 2473 pref("font.default.x-cyrillic", "serif");
michael@0 2474 pref("font.size.variable.x-cyrillic", 16);
michael@0 2475 pref("font.size.fixed.x-cyrillic", 13);
michael@0 2476
michael@0 2477 pref("font.default.x-devanagari", "sans-serif");
michael@0 2478 pref("font.size.variable.x-devanagari", 16);
michael@0 2479 pref("font.size.fixed.x-devanagari", 13);
michael@0 2480
michael@0 2481 pref("font.default.x-tamil", "serif");
michael@0 2482 pref("font.size.variable.x-tamil", 16);
michael@0 2483 pref("font.size.fixed.x-tamil", 13);
michael@0 2484
michael@0 2485 pref("font.default.x-armn", "serif");
michael@0 2486 pref("font.size.variable.x-armn", 16);
michael@0 2487 pref("font.size.fixed.x-armn", 13);
michael@0 2488
michael@0 2489 pref("font.default.x-beng", "serif");
michael@0 2490 pref("font.size.variable.x-beng", 16);
michael@0 2491 pref("font.size.fixed.x-beng", 13);
michael@0 2492
michael@0 2493 pref("font.default.x-cans", "serif");
michael@0 2494 pref("font.size.variable.x-cans", 16);
michael@0 2495 pref("font.size.fixed.x-cans", 13);
michael@0 2496
michael@0 2497 pref("font.default.x-ethi", "serif");
michael@0 2498 pref("font.size.variable.x-ethi", 16);
michael@0 2499 pref("font.size.fixed.x-ethi", 13);
michael@0 2500
michael@0 2501 pref("font.default.x-geor", "serif");
michael@0 2502 pref("font.size.variable.x-geor", 16);
michael@0 2503 pref("font.size.fixed.x-geor", 13);
michael@0 2504
michael@0 2505 pref("font.default.x-gujr", "serif");
michael@0 2506 pref("font.size.variable.x-gujr", 16);
michael@0 2507 pref("font.size.fixed.x-gujr", 13);
michael@0 2508
michael@0 2509 pref("font.default.x-guru", "serif");
michael@0 2510 pref("font.size.variable.x-guru", 16);
michael@0 2511 pref("font.size.fixed.x-guru", 13);
michael@0 2512
michael@0 2513 pref("font.default.x-khmr", "serif");
michael@0 2514 pref("font.size.variable.x-khmr", 16);
michael@0 2515 pref("font.size.fixed.x-khmr", 13);
michael@0 2516
michael@0 2517 pref("font.default.x-mlym", "serif");
michael@0 2518 pref("font.size.variable.x-mlym", 16);
michael@0 2519 pref("font.size.fixed.x-mlym", 13);
michael@0 2520
michael@0 2521 pref("font.default.x-orya", "serif");
michael@0 2522 pref("font.size.variable.x-orya", 16);
michael@0 2523 pref("font.size.fixed.x-orya", 13);
michael@0 2524
michael@0 2525 pref("font.default.x-telu", "serif");
michael@0 2526 pref("font.size.variable.x-telu", 16);
michael@0 2527 pref("font.size.fixed.x-telu", 13);
michael@0 2528
michael@0 2529 pref("font.default.x-knda", "serif");
michael@0 2530 pref("font.size.variable.x-knda", 16);
michael@0 2531 pref("font.size.fixed.x-knda", 13);
michael@0 2532
michael@0 2533 pref("font.default.x-sinh", "serif");
michael@0 2534 pref("font.size.variable.x-sinh", 16);
michael@0 2535 pref("font.size.fixed.x-sinh", 13);
michael@0 2536
michael@0 2537 pref("font.default.x-tibt", "serif");
michael@0 2538 pref("font.size.variable.x-tibt", 16);
michael@0 2539 pref("font.size.fixed.x-tibt", 13);
michael@0 2540
michael@0 2541 pref("font.default.x-unicode", "serif");
michael@0 2542 pref("font.size.variable.x-unicode", 16);
michael@0 2543 pref("font.size.fixed.x-unicode", 13);
michael@0 2544
michael@0 2545 pref("font.default.x-western", "serif");
michael@0 2546 pref("font.size.variable.x-western", 16);
michael@0 2547 pref("font.size.fixed.x-western", 13);
michael@0 2548
michael@0 2549 pref("font.default.zh-CN", "sans-serif");
michael@0 2550 pref("font.size.variable.zh-CN", 16);
michael@0 2551 pref("font.size.fixed.zh-CN", 16);
michael@0 2552
michael@0 2553 pref("font.default.zh-TW", "sans-serif");
michael@0 2554 pref("font.size.variable.zh-TW", 16);
michael@0 2555 pref("font.size.fixed.zh-TW", 16);
michael@0 2556
michael@0 2557 pref("font.default.zh-HK", "sans-serif");
michael@0 2558 pref("font.size.variable.zh-HK", 16);
michael@0 2559 pref("font.size.fixed.zh-HK", 16);
michael@0 2560
michael@0 2561 // We have special support for Monotype Symbol on Windows.
michael@0 2562 pref("font.mathfont-family", "MathJax_Main, STIXNonUnicode, STIXSizeOneSym, STIXGeneral, Asana Math, Symbol, DejaVu Sans, Cambria Math");
michael@0 2563
michael@0 2564 // cleartype settings - false implies default system settings
michael@0 2565
michael@0 2566 // use cleartype rendering for downloadable fonts (win xp only)
michael@0 2567 pref("gfx.font_rendering.cleartype.use_for_downloadable_fonts", true);
michael@0 2568
michael@0 2569 // use cleartype rendering for all fonts always (win xp only)
michael@0 2570 pref("gfx.font_rendering.cleartype.always_use_for_content", false);
michael@0 2571
michael@0 2572 // ClearType tuning parameters for directwrite/d2d.
michael@0 2573 //
michael@0 2574 // Allows overriding of underlying registry values in:
michael@0 2575 // HKCU/Software/Microsoft/Avalon.Graphics/<display> (contrast and level)
michael@0 2576 // HKLM/Software/Microsoft/Avalon.Graphics/<display> (gamma, pixel structure)
michael@0 2577 // and selection of the ClearType/antialiasing mode.
michael@0 2578 //
michael@0 2579 // A value of -1 implies use the default value, otherwise value ranges
michael@0 2580 // follow registry settings:
michael@0 2581 // gamma [1000, 2200] default: based on screen, typically 2200 (== 2.2)
michael@0 2582 // enhanced contrast [0, 1000] default: 50
michael@0 2583 // cleartype level [0, 100] default: 100
michael@0 2584 // pixel structure [0, 2] default: 0 (flat/RGB/BGR)
michael@0 2585 // rendering mode [0, 5] default: 0
michael@0 2586 // 0 = use default for font & size;
michael@0 2587 // 1 = aliased;
michael@0 2588 // 2 = GDI Classic;
michael@0 2589 // 3 = GDI Natural Widths;
michael@0 2590 // 4 = Natural;
michael@0 2591 // 5 = Natural Symmetric
michael@0 2592 //
michael@0 2593 // See:
michael@0 2594 // http://msdn.microsoft.com/en-us/library/aa970267.aspx
michael@0 2595 // http://msdn.microsoft.com/en-us/library/dd368190%28v=VS.85%29.aspx
michael@0 2596 // Note: DirectWrite uses the "Enhanced Contrast Level" value rather than the
michael@0 2597 // "Text Contrast Level" value
michael@0 2598
michael@0 2599 pref("gfx.font_rendering.cleartype_params.gamma", -1);
michael@0 2600 pref("gfx.font_rendering.cleartype_params.enhanced_contrast", -1);
michael@0 2601 pref("gfx.font_rendering.cleartype_params.cleartype_level", -1);
michael@0 2602 pref("gfx.font_rendering.cleartype_params.pixel_structure", -1);
michael@0 2603 pref("gfx.font_rendering.cleartype_params.rendering_mode", -1);
michael@0 2604
michael@0 2605 // A comma-separated list of font family names. Fonts in these families will
michael@0 2606 // be forced to use "GDI Classic" ClearType mode, provided the value
michael@0 2607 // of gfx.font_rendering.cleartype_params.rendering_mode is -1
michael@0 2608 // (i.e. a specific rendering_mode has not been explicitly set).
michael@0 2609 // Currently we apply this setting to the sans-serif Microsoft "core Web fonts".
michael@0 2610 pref("gfx.font_rendering.cleartype_params.force_gdi_classic_for_families",
michael@0 2611 "Arial,Consolas,Courier New,Microsoft Sans Serif,Segoe UI,Tahoma,Trebuchet MS,Verdana");
michael@0 2612 // The maximum size at which we will force GDI classic mode using
michael@0 2613 // force_gdi_classic_for_families.
michael@0 2614 pref("gfx.font_rendering.cleartype_params.force_gdi_classic_max_size", 15);
michael@0 2615
michael@0 2616 pref("ui.key.menuAccessKeyFocuses", true);
michael@0 2617
michael@0 2618 // override double-click word selection behavior.
michael@0 2619 pref("layout.word_select.eat_space_to_next_word", true);
michael@0 2620
michael@0 2621 // scrollbar snapping region
michael@0 2622 pref("slider.snapMultiplier", 6);
michael@0 2623
michael@0 2624 // print_extra_margin enables platforms to specify an extra gap or margin
michael@0 2625 // around the content of the page for Print Preview only
michael@0 2626 pref("print.print_extra_margin", 90); // twips (90 twips is an eigth of an inch)
michael@0 2627
michael@0 2628 // Whether to extend the native dialog with information on printing frames.
michael@0 2629 pref("print.extend_native_print_dialog", true);
michael@0 2630
michael@0 2631 // Locate plugins by scanning the Adobe Acrobat installation directory with a minimum version
michael@0 2632 pref("plugin.scan.Acrobat", "5.0");
michael@0 2633
michael@0 2634 // Locate plugins by scanning the Quicktime installation directory with a minimum version
michael@0 2635 pref("plugin.scan.Quicktime", "5.0");
michael@0 2636
michael@0 2637 // Locate and scan the Window Media Player installation directory for plugins with a minimum version
michael@0 2638 pref("plugin.scan.WindowsMediaPlayer", "7.0");
michael@0 2639
michael@0 2640 // Locate plugins by the directories specified in the Windows registry for PLIDs
michael@0 2641 // Which is currently HKLM\Software\MozillaPlugins\xxxPLIDxxx\Path
michael@0 2642 pref("plugin.scan.plid.all", true);
michael@0 2643
michael@0 2644 // Allow the new AsyncDrawing mode to be used for plugins.
michael@0 2645 pref("plugin.allow.asyncdrawing", false);
michael@0 2646
michael@0 2647 // Help Windows NT, 2000, and XP dialup a RAS connection
michael@0 2648 // when a network address is unreachable.
michael@0 2649 pref("network.autodial-helper.enabled", true);
michael@0 2650
michael@0 2651 // Switch the keyboard layout per window
michael@0 2652 pref("intl.keyboard.per_window_layout", false);
michael@0 2653
michael@0 2654 #ifdef NS_ENABLE_TSF
michael@0 2655 // Enable/Disable TSF support
michael@0 2656 pref("intl.tsf.enable", false);
michael@0 2657
michael@0 2658 // Support IMEs implemented with IMM in TSF mode.
michael@0 2659 pref("intl.tsf.support_imm", true);
michael@0 2660
michael@0 2661 // Enables/Disables hack for specific TIP.
michael@0 2662
michael@0 2663 // Whether creates native caret for ATOK or not.
michael@0 2664 pref("intl.tsf.hack.atok.create_native_caret", true);
michael@0 2665 #endif
michael@0 2666
michael@0 2667 // See bug 448927, on topmost panel, some IMEs are not usable on Windows.
michael@0 2668 pref("ui.panel.default_level_parent", false);
michael@0 2669
michael@0 2670 pref("mousewheel.system_scroll_override_on_root_content.enabled", true);
michael@0 2671
michael@0 2672 // High resolution scrolling with supported mouse drivers on Vista or later.
michael@0 2673 pref("mousewheel.enable_pixel_scrolling", true);
michael@0 2674
michael@0 2675 // If your mouse drive sends WM_*SCROLL messages when you turn your mouse wheel,
michael@0 2676 // set this to true. Then, gecko processes them as mouse wheel messages.
michael@0 2677 pref("mousewheel.emulate_at_wm_scroll", false);
michael@0 2678
michael@0 2679 // Enables or disabled the TrackPoint hack, -1 is autodetect, 0 is off,
michael@0 2680 // and 1 is on. Set this to 1 if TrackPoint scrolling is not working.
michael@0 2681 pref("ui.trackpoint_hack.enabled", -1);
michael@0 2682
michael@0 2683 // Setting this to a non-empty string overrides the Win32 "window class" used
michael@0 2684 // for "normal" windows. Setting this to MozillaUIWindowClass might make
michael@0 2685 // some trackpad drivers behave better.
michael@0 2686 pref("ui.window_class_override", "");
michael@0 2687
michael@0 2688 // Enables or disables the Elantech gesture hacks. -1 is autodetect, 0 is off,
michael@0 2689 // and 1 is on. Set this to 1 if three-finger swipe gestures do not cause
michael@0 2690 // page back/forward actions, or if pinch-to-zoom does not work.
michael@0 2691 pref("ui.elantech_gesture_hacks.enabled", -1);
michael@0 2692
michael@0 2693 # XP_WIN
michael@0 2694 #endif
michael@0 2695
michael@0 2696 #ifdef XP_MACOSX
michael@0 2697 // Mac specific preference defaults
michael@0 2698 pref("browser.drag_out_of_frame_style", 1);
michael@0 2699 pref("ui.key.saveLink.shift", false); // true = shift, false = meta
michael@0 2700
michael@0 2701 // default fonts (in UTF8 and using canonical names)
michael@0 2702 // to determine canonical font names, use a debug build and
michael@0 2703 // enable NSPR logging for module fontInfoLog:5
michael@0 2704 // canonical names immediately follow '(fontinit) family:' in the log
michael@0 2705
michael@0 2706 pref("font.name.serif.ar", "Al Bayan");
michael@0 2707 pref("font.name.sans-serif.ar", "Geeza Pro");
michael@0 2708 pref("font.name.monospace.ar", "Geeza Pro");
michael@0 2709 pref("font.name.cursive.ar", "DecoType Naskh");
michael@0 2710 pref("font.name.fantasy.ar", "KufiStandardGK");
michael@0 2711 pref("font.name-list.serif.ar", "Al Bayan");
michael@0 2712 pref("font.name-list.sans-serif.ar", "Geeza Pro");
michael@0 2713 pref("font.name-list.monospace.ar", "Geeza Pro");
michael@0 2714 pref("font.name-list.cursive.ar", "DecoType Naskh");
michael@0 2715 pref("font.name-list.fantasy.ar", "KufiStandardGK");
michael@0 2716
michael@0 2717 pref("font.name.serif.el", "Times");
michael@0 2718 pref("font.name.sans-serif.el", "Helvetica");
michael@0 2719 pref("font.name.monospace.el", "Courier New");
michael@0 2720 pref("font.name.cursive.el", "Lucida Grande");
michael@0 2721 pref("font.name.fantasy.el", "Lucida Grande");
michael@0 2722 pref("font.name-list.serif.el", "Times,Times New Roman");
michael@0 2723 pref("font.name-list.sans-serif.el", "Helvetica,Lucida Grande");
michael@0 2724 pref("font.name-list.monospace.el", "Courier New,Lucida Grande");
michael@0 2725 pref("font.name-list.cursive.el", "Times,Lucida Grande");
michael@0 2726 pref("font.name-list.fantasy.el", "Times,Lucida Grande");
michael@0 2727
michael@0 2728 pref("font.name.serif.he", "Times New Roman");
michael@0 2729 pref("font.name.sans-serif.he", "Arial");
michael@0 2730 pref("font.name.monospace.he", "Courier New");
michael@0 2731 pref("font.name.cursive.he", "Times New Roman");
michael@0 2732 pref("font.name.fantasy.he", "Times New Roman");
michael@0 2733 pref("font.name-list.serif.he", "Times New Roman");
michael@0 2734 pref("font.name-list.sans-serif.he", "Arial");
michael@0 2735 pref("font.name-list.monospace.he", "Courier New");
michael@0 2736 pref("font.name-list.cursive.he", "Times New Roman");
michael@0 2737 pref("font.name-list.fantasy.he", "Times New Roman");
michael@0 2738
michael@0 2739 pref("font.name.serif.ja", "Hiragino Mincho ProN");
michael@0 2740 pref("font.name.sans-serif.ja", "Hiragino Kaku Gothic ProN");
michael@0 2741 pref("font.name.monospace.ja", "Osaka-Mono");
michael@0 2742 pref("font.name-list.serif.ja", "Hiragino Mincho ProN,Hiragino Mincho Pro");
michael@0 2743 pref("font.name-list.sans-serif.ja", "Hiragino Kaku Gothic ProN,Hiragino Kaku Gothic Pro");
michael@0 2744 pref("font.name-list.monospace.ja", "Osaka-Mono");
michael@0 2745
michael@0 2746 pref("font.name.serif.ko", "AppleMyungjo");
michael@0 2747 pref("font.name.sans-serif.ko", "Apple SD Gothic Neo");
michael@0 2748 pref("font.name.monospace.ko", "Apple SD Gothic Neo");
michael@0 2749 pref("font.name-list.serif.ko", "AppleMyungjo");
michael@0 2750 pref("font.name-list.sans-serif.ko", "Apple SD Gothic Neo,AppleGothic");
michael@0 2751 pref("font.name-list.monospace.ko", "Apple SD Gothic Neo,AppleGothic");
michael@0 2752
michael@0 2753 pref("font.name.serif.th", "Thonburi");
michael@0 2754 pref("font.name.sans-serif.th", "Thonburi");
michael@0 2755 pref("font.name.monospace.th", "Ayuthaya");
michael@0 2756 pref("font.name-list.serif.th", "Thonburi");
michael@0 2757 pref("font.name-list.sans-serif.th", "Thonburi");
michael@0 2758 pref("font.name-list.monospace.th", "Ayuthaya");
michael@0 2759
michael@0 2760 pref("font.name.serif.tr", "Times");
michael@0 2761 pref("font.name.sans-serif.tr", "Helvetica");
michael@0 2762 pref("font.name.monospace.tr", "Courier");
michael@0 2763 pref("font.name.cursive.tr", "Apple Chancery");
michael@0 2764 pref("font.name.fantasy.tr", "Papyrus");
michael@0 2765 pref("font.name-list.serif.tr", "Times");
michael@0 2766 pref("font.name-list.sans-serif.tr", "Helvetica");
michael@0 2767 pref("font.name-list.monospace.tr", "Courier");
michael@0 2768 pref("font.name-list.cursive.tr", "Apple Chancery");
michael@0 2769 pref("font.name-list.fantasy.tr", "Papyrus");
michael@0 2770
michael@0 2771 pref("font.name.serif.x-armn", "Mshtakan");
michael@0 2772 pref("font.name.sans-serif.x-armn", "Mshtakan");
michael@0 2773 pref("font.name.monospace.x-armn", "Mshtakan");
michael@0 2774 pref("font.name-list.serif.x-armn", "Mshtakan");
michael@0 2775 pref("font.name-list.sans-serif.x-armn", "Mshtakan");
michael@0 2776 pref("font.name-list.monospace.x-armn", "Mshtakan");
michael@0 2777
michael@0 2778 pref("font.name.serif.x-baltic", "Times");
michael@0 2779 pref("font.name.sans-serif.x-baltic", "Helvetica");
michael@0 2780 pref("font.name.monospace.x-baltic", "Courier");
michael@0 2781 pref("font.name.cursive.x-baltic", "Apple Chancery");
michael@0 2782 pref("font.name.fantasy.x-baltic", "Papyrus");
michael@0 2783 pref("font.name-list.serif.x-baltic", "Times");
michael@0 2784 pref("font.name-list.sans-serif.x-baltic", "Helvetica");
michael@0 2785 pref("font.name-list.monospace.x-baltic", "Courier");
michael@0 2786 pref("font.name-list.cursive.x-baltic", "Apple Chancery");
michael@0 2787 pref("font.name-list.fantasy.x-baltic", "Papyrus");
michael@0 2788
michael@0 2789 // SolaimanLipi, Rupali http://ekushey.org/?page/mac_download
michael@0 2790 pref("font.name.serif.x-beng", "Bangla MN");
michael@0 2791 pref("font.name.sans-serif.x-beng", "Bangla Sangam MN");
michael@0 2792 pref("font.name.monospace.x-beng", "Bangla Sangam MN");
michael@0 2793 pref("font.name-list.serif.x-beng", "Bangla MN");
michael@0 2794 pref("font.name-list.sans-serif.x-beng", "Bangla Sangam MN");
michael@0 2795 pref("font.name-list.monospace.x-beng", "Bangla Sangam MN");
michael@0 2796
michael@0 2797 pref("font.name.serif.x-cans", "Euphemia UCAS");
michael@0 2798 pref("font.name.sans-serif.x-cans", "Euphemia UCAS");
michael@0 2799 pref("font.name.monospace.x-cans", "Euphemia UCAS");
michael@0 2800 pref("font.name-list.serif.x-cans", "Euphemia UCAS");
michael@0 2801 pref("font.name-list.sans-serif.x-cans", "Euphemia UCAS");
michael@0 2802 pref("font.name-list.monospace.x-cans", "Euphemia UCAS");
michael@0 2803
michael@0 2804 pref("font.name.serif.x-central-euro", "Times");
michael@0 2805 pref("font.name.sans-serif.x-central-euro", "Helvetica");
michael@0 2806 pref("font.name.monospace.x-central-euro", "Courier");
michael@0 2807 pref("font.name.cursive.x-central-euro", "Apple Chancery");
michael@0 2808 pref("font.name.fantasy.x-central-euro", "Papyrus");
michael@0 2809 pref("font.name-list.serif.x-central-euro", "Times");
michael@0 2810 pref("font.name-list.sans-serif.x-central-euro", "Helvetica");
michael@0 2811 pref("font.name-list.monospace.x-central-euro", "Courier");
michael@0 2812 pref("font.name-list.cursive.x-central-euro", "Apple Chancery");
michael@0 2813 pref("font.name-list.fantasy.x-central-euro", "Papyrus");
michael@0 2814
michael@0 2815 pref("font.name.serif.x-cyrillic", "Times");
michael@0 2816 pref("font.name.sans-serif.x-cyrillic", "Helvetica");
michael@0 2817 pref("font.name.monospace.x-cyrillic", "Monaco");
michael@0 2818 pref("font.name.cursive.x-cyrillic", "Geneva");
michael@0 2819 pref("font.name.fantasy.x-cyrillic", "Charcoal CY");
michael@0 2820 pref("font.name-list.serif.x-cyrillic", "Times,Times New Roman");
michael@0 2821 pref("font.name-list.sans-serif.x-cyrillic", "Helvetica,Arial");
michael@0 2822 pref("font.name-list.monospace.x-cyrillic", "Monaco,Courier New");
michael@0 2823 pref("font.name-list.cursive.x-cyrillic", "Geneva");
michael@0 2824 pref("font.name-list.fantasy.x-cyrillic", "Charcoal CY");
michael@0 2825
michael@0 2826 pref("font.name.serif.x-devanagari", "Devanagari MT");
michael@0 2827 pref("font.name.sans-serif.x-devanagari", "Devanagari Sangam MN");
michael@0 2828 pref("font.name.monospace.x-devanagari", "Devanagari Sangam MN");
michael@0 2829 pref("font.name-list.serif.x-devanagari", "Devanagari MT");
michael@0 2830 pref("font.name-list.sans-serif.x-devanagari", "Devanagari Sangam MN,Devanagari MT");
michael@0 2831 pref("font.name-list.monospace.x-devanagari", "Devanagari Sangam MN,Devanagari MT");
michael@0 2832
michael@0 2833 // Abyssinica SIL http://scripts.sil.org/AbyssinicaSIL_Download
michael@0 2834 pref("font.name.serif.x-ethi", "Kefa");
michael@0 2835 pref("font.name.sans-serif.x-ethi", "Kefa");
michael@0 2836 pref("font.name.monospace.x-ethi", "Kefa");
michael@0 2837 pref("font.name-list.serif.x-ethi", "Kefa,Abyssinica SIL");
michael@0 2838 pref("font.name-list.sans-serif.x-ethi", "Kefa,Abyssinica SIL");
michael@0 2839 pref("font.name-list.monospace.x-ethi", "Kefa,Abyssinica SIL");
michael@0 2840
michael@0 2841 // no suitable fonts for georgian ship with mac os x
michael@0 2842 // however some can be freely downloaded
michael@0 2843 // TITUS Cyberbit Basic http://titus.fkidg1.uni-frankfurt.de/unicode/tituut.asp
michael@0 2844 // Zuzumbo http://homepage.mac.com/rsiradze/FileSharing91.html
michael@0 2845 pref("font.name.serif.x-geor", "TITUS Cyberbit Basic");
michael@0 2846 pref("font.name.sans-serif.x-geor", "Zuzumbo");
michael@0 2847 pref("font.name.monospace.x-geor", "Zuzumbo");
michael@0 2848 pref("font.name-list.serif.x-geor", "TITUS Cyberbit Basic");
michael@0 2849 pref("font.name-list.sans-serif.x-geor", "Zuzumbo");
michael@0 2850 pref("font.name-list.monospace.x-geor", "Zuzumbo");
michael@0 2851
michael@0 2852 pref("font.name.serif.x-gujr", "Gujarati MT");
michael@0 2853 pref("font.name.sans-serif.x-gujr", "Gujarati Sangam MN");
michael@0 2854 pref("font.name.monospace.x-gujr", "Gujarati Sangam MN");
michael@0 2855 pref("font.name-list.serif.x-gujr", "Gujarati MT");
michael@0 2856 pref("font.name-list.sans-serif.x-gujr", "Gujarati Sangam MN,Gujarati MT");
michael@0 2857 pref("font.name-list.monospace.x-gujr", "Gujarati Sangam MN,Gujarati MT");
michael@0 2858
michael@0 2859 pref("font.name.serif.x-guru", "Gurmukhi MT");
michael@0 2860 pref("font.name.sans-serif.x-guru", "Gurmukhi MT");
michael@0 2861 pref("font.name.monospace.x-guru", "Gurmukhi MT");
michael@0 2862 pref("font.name-list.serif.x-guru", "Gurmukhi MT");
michael@0 2863 pref("font.name-list.sans-serif.x-guru", "Gurmukhi MT");
michael@0 2864 pref("font.name-list.monospace.x-guru", "Gurmukhi MT");
michael@0 2865
michael@0 2866 pref("font.name.serif.x-khmr", "Khmer MN");
michael@0 2867 pref("font.name.sans-serif.x-khmr", "Khmer Sangam MN");
michael@0 2868 pref("font.name.monospace.x-khmr", "Khmer Sangam MN");
michael@0 2869 pref("font.name-list.serif.x-khmr", "Khmer MN");
michael@0 2870 pref("font.name-list.sans-serif.x-khmr", "Khmer Sangam MN");
michael@0 2871 pref("font.name-list.monospace.x-khmr", "Khmer Sangam MN");
michael@0 2872
michael@0 2873 pref("font.name.serif.x-mlym", "Malayalam MN");
michael@0 2874 pref("font.name.sans-serif.x-mlym", "Malayalam Sangam MN");
michael@0 2875 pref("font.name.monospace.x-mlym", "Malayalam Sangam MN");
michael@0 2876 pref("font.name-list.serif.x-mlym", "Malayalam MN");
michael@0 2877 pref("font.name-list.sans-serif.x-mlym", "Malayalam Sangam MN");
michael@0 2878 pref("font.name-list.monospace.x-mlym", "Malayalam Sangam MN");
michael@0 2879
michael@0 2880 pref("font.name.serif.x-orya", "Oriya MN");
michael@0 2881 pref("font.name.sans-serif.x-orya", "Oriya Sangam MN");
michael@0 2882 pref("font.name.monospace.x-orya", "Oriya Sangam MN");
michael@0 2883 pref("font.name-list.serif.x-orya", "Oriya MN");
michael@0 2884 pref("font.name-list.sans-serif.x-orya", "Oriya Sangam MN");
michael@0 2885 pref("font.name-list.monospace.x-orya", "Oriya Sangam MN");
michael@0 2886
michael@0 2887 // Pothana http://web.nickshanks.com/typography/telugu/
michael@0 2888 pref("font.name.serif.x-telu", "Telugu MN");
michael@0 2889 pref("font.name.sans-serif.x-telu", "Telugu Sangam MN");
michael@0 2890 pref("font.name.monospace.x-telu", "Telugu Sangam MN");
michael@0 2891 pref("font.name-list.serif.x-telu", "Telugu MN,Pothana");
michael@0 2892 pref("font.name-list.sans-serif.x-telu", "Telugu Sangam MN,Pothana");
michael@0 2893 pref("font.name-list.monospace.x-telu", "Telugu Sangam MN,Pothana");
michael@0 2894
michael@0 2895 // Kedage http://web.nickshanks.com/typography/kannada/
michael@0 2896 pref("font.name.serif.x-knda", "Kannada MN");
michael@0 2897 pref("font.name.sans-serif.x-knda", "Kannada Sangam MN");
michael@0 2898 pref("font.name.monospace.x-knda", "Kannada Sangam MN");
michael@0 2899 pref("font.name-list.serif.x-knda", "Kannada MN,Kedage");
michael@0 2900 pref("font.name-list.sans-serif.x-knda", "Kannada Sangam MN,Kedage");
michael@0 2901 pref("font.name-list.monospace.x-knda", "Kannada Sangam MN,Kedage");
michael@0 2902
michael@0 2903 pref("font.name.serif.x-sinh", "Sinhala MN");
michael@0 2904 pref("font.name.sans-serif.x-sinh", "Sinhala Sangam MN");
michael@0 2905 pref("font.name.monospace.x-sinh", "Sinhala Sangam MN");
michael@0 2906 pref("font.name-list.serif.x-sinh", "Sinhala MN");
michael@0 2907 pref("font.name-list.sans-serif.x-sinh", "Sinhala Sangam MN");
michael@0 2908 pref("font.name-list.monospace.x-sinh", "Sinhala Sangam MN");
michael@0 2909
michael@0 2910 pref("font.name.serif.x-tamil", "InaiMathi");
michael@0 2911 pref("font.name.sans-serif.x-tamil", "InaiMathi");
michael@0 2912 pref("font.name.monospace.x-tamil", "InaiMathi");
michael@0 2913 pref("font.name-list.serif.x-tamil", "InaiMathi");
michael@0 2914 pref("font.name-list.sans-serif.x-tamil", "InaiMathi");
michael@0 2915 pref("font.name-list.monospace.x-tamil", "InaiMathi");
michael@0 2916
michael@0 2917 // Kailasa ships with mac os x >= 10.5
michael@0 2918 pref("font.name.serif.x-tibt", "Kailasa");
michael@0 2919 pref("font.name.sans-serif.x-tibt", "Kailasa");
michael@0 2920 pref("font.name.monospace.x-tibt", "Kailasa");
michael@0 2921 pref("font.name-list.serif.x-tibt", "Kailasa");
michael@0 2922 pref("font.name-list.sans-serif.x-tibt", "Kailasa");
michael@0 2923 pref("font.name-list.monospace.x-tibt", "Kailasa");
michael@0 2924
michael@0 2925 pref("font.name.serif.x-unicode", "Times");
michael@0 2926 pref("font.name.sans-serif.x-unicode", "Helvetica");
michael@0 2927 pref("font.name.monospace.x-unicode", "Courier");
michael@0 2928 pref("font.name.cursive.x-unicode", "Apple Chancery");
michael@0 2929 pref("font.name.fantasy.x-unicode", "Papyrus");
michael@0 2930 pref("font.name-list.serif.x-unicode", "Times");
michael@0 2931 pref("font.name-list.sans-serif.x-unicode", "Helvetica");
michael@0 2932 pref("font.name-list.monospace.x-unicode", "Courier");
michael@0 2933 pref("font.name-list.cursive.x-unicode", "Apple Chancery");
michael@0 2934 pref("font.name-list.fantasy.x-unicode", "Papyrus");
michael@0 2935
michael@0 2936 pref("font.name.serif.x-western", "Times");
michael@0 2937 pref("font.name.sans-serif.x-western", "Helvetica");
michael@0 2938 pref("font.name.monospace.x-western", "Courier");
michael@0 2939 pref("font.name.cursive.x-western", "Apple Chancery");
michael@0 2940 pref("font.name.fantasy.x-western", "Papyrus");
michael@0 2941 pref("font.name-list.serif.x-western", "Times,Times New Roman");
michael@0 2942 pref("font.name-list.sans-serif.x-western", "Helvetica,Arial");
michael@0 2943 pref("font.name-list.monospace.x-western", "Courier,Courier New");
michael@0 2944 pref("font.name-list.cursive.x-western", "Apple Chancery");
michael@0 2945 pref("font.name-list.fantasy.x-western", "Papyrus");
michael@0 2946
michael@0 2947 pref("font.name.serif.zh-CN", "Times");
michael@0 2948 pref("font.name.sans-serif.zh-CN", "Helvetica");
michael@0 2949 pref("font.name.monospace.zh-CN", "Courier");
michael@0 2950 pref("font.name-list.serif.zh-CN", "Times,STSong,Heiti SC");
michael@0 2951 pref("font.name-list.sans-serif.zh-CN", "Helvetica,STHeiti,Heiti SC");
michael@0 2952 pref("font.name-list.monospace.zh-CN", "Courier,STHeiti,Heiti SC");
michael@0 2953
michael@0 2954 pref("font.name.serif.zh-TW", "Times");
michael@0 2955 pref("font.name.sans-serif.zh-TW", "Helvetica");
michael@0 2956 pref("font.name.monospace.zh-TW", "Courier");
michael@0 2957 pref("font.name-list.serif.zh-TW", "Times,LiSong Pro,Heiti TC");
michael@0 2958 pref("font.name-list.sans-serif.zh-TW", "Helvetica,Heiti TC,LiHei Pro");
michael@0 2959 pref("font.name-list.monospace.zh-TW", "Courier,Heiti TC,LiHei Pro");
michael@0 2960
michael@0 2961 pref("font.name.serif.zh-HK", "Times");
michael@0 2962 pref("font.name.sans-serif.zh-HK", "Helvetica");
michael@0 2963 pref("font.name.monospace.zh-HK", "Courier");
michael@0 2964 pref("font.name-list.serif.zh-HK", "Times,LiSong Pro,Heiti TC");
michael@0 2965 pref("font.name-list.sans-serif.zh-HK", "Helvetica,Heiti TC,LiHei Pro");
michael@0 2966 pref("font.name-list.monospace.zh-HK", "Courier,Heiti TC,LiHei Pro");
michael@0 2967
michael@0 2968 pref("font.default.ar", "sans-serif");
michael@0 2969 pref("font.size.variable.ar", 16);
michael@0 2970 pref("font.size.fixed.ar", 13);
michael@0 2971
michael@0 2972 pref("font.default.el", "serif");
michael@0 2973 pref("font.size.variable.el", 16);
michael@0 2974 pref("font.size.fixed.el", 13);
michael@0 2975
michael@0 2976 pref("font.default.he", "sans-serif");
michael@0 2977 pref("font.size.variable.he", 16);
michael@0 2978 pref("font.size.fixed.he", 13);
michael@0 2979
michael@0 2980 pref("font.default.ja", "sans-serif");
michael@0 2981 pref("font.size.variable.ja", 16);
michael@0 2982 pref("font.size.fixed.ja", 16);
michael@0 2983
michael@0 2984 pref("font.default.ko", "sans-serif");
michael@0 2985 pref("font.size.variable.ko", 16);
michael@0 2986 pref("font.size.fixed.ko", 16);
michael@0 2987
michael@0 2988 pref("font.default.th", "serif");
michael@0 2989 pref("font.size.variable.th", 16);
michael@0 2990 pref("font.size.fixed.th", 13);
michael@0 2991 pref("font.minimum-size.th", 10);
michael@0 2992
michael@0 2993 pref("font.default.tr", "serif");
michael@0 2994 pref("font.size.variable.tr", 16);
michael@0 2995 pref("font.size.fixed.tr", 13);
michael@0 2996
michael@0 2997 pref("font.default.x-armn", "serif");
michael@0 2998 pref("font.size.variable.x-armn", 16);
michael@0 2999 pref("font.size.fixed.x-armn", 13);
michael@0 3000
michael@0 3001 pref("font.default.x-baltic", "serif");
michael@0 3002 pref("font.size.variable.x-baltic", 16);
michael@0 3003 pref("font.size.fixed.x-baltic", 13);
michael@0 3004
michael@0 3005 pref("font.default.x-beng", "serif");
michael@0 3006 pref("font.size.variable.x-beng", 16);
michael@0 3007 pref("font.size.fixed.x-beng", 13);
michael@0 3008
michael@0 3009 pref("font.default.x-cans", "serif");
michael@0 3010 pref("font.size.variable.x-cans", 16);
michael@0 3011 pref("font.size.fixed.x-cans", 13);
michael@0 3012
michael@0 3013 pref("font.default.x-central-euro", "serif");
michael@0 3014 pref("font.size.variable.x-central-euro", 16);
michael@0 3015 pref("font.size.fixed.x-central-euro", 13);
michael@0 3016
michael@0 3017 pref("font.default.x-cyrillic", "serif");
michael@0 3018 pref("font.size.variable.x-cyrillic", 16);
michael@0 3019 pref("font.size.fixed.x-cyrillic", 13);
michael@0 3020
michael@0 3021 pref("font.default.x-devanagari", "serif");
michael@0 3022 pref("font.size.variable.x-devanagari", 16);
michael@0 3023 pref("font.size.fixed.x-devanagari", 13);
michael@0 3024
michael@0 3025 pref("font.default.x-ethi", "serif");
michael@0 3026 pref("font.size.variable.x-ethi", 16);
michael@0 3027 pref("font.size.fixed.x-ethi", 13);
michael@0 3028
michael@0 3029 pref("font.default.x-geor", "serif");
michael@0 3030 pref("font.size.variable.x-geor", 16);
michael@0 3031 pref("font.size.fixed.x-geor", 13);
michael@0 3032
michael@0 3033 pref("font.default.x-gujr", "serif");
michael@0 3034 pref("font.size.variable.x-gujr", 16);
michael@0 3035 pref("font.size.fixed.x-gujr", 13);
michael@0 3036
michael@0 3037 pref("font.default.x-guru", "serif");
michael@0 3038 pref("font.size.variable.x-guru", 16);
michael@0 3039 pref("font.size.fixed.x-guru", 13);
michael@0 3040
michael@0 3041 pref("font.default.x-khmr", "serif");
michael@0 3042 pref("font.size.variable.x-khmr", 16);
michael@0 3043 pref("font.size.fixed.x-khmr", 13);
michael@0 3044
michael@0 3045 pref("font.default.x-mlym", "serif");
michael@0 3046 pref("font.size.variable.x-mlym", 16);
michael@0 3047 pref("font.size.fixed.x-mlym", 13);
michael@0 3048
michael@0 3049 pref("font.default.x-tamil", "serif");
michael@0 3050 pref("font.size.variable.x-tamil", 16);
michael@0 3051 pref("font.size.fixed.x-tamil", 13);
michael@0 3052
michael@0 3053 pref("font.default.x-orya", "serif");
michael@0 3054 pref("font.size.variable.x-orya", 16);
michael@0 3055 pref("font.size.fixed.x-orya", 13);
michael@0 3056
michael@0 3057 pref("font.default.x-telu", "serif");
michael@0 3058 pref("font.size.variable.x-telu", 16);
michael@0 3059 pref("font.size.fixed.x-telu", 13);
michael@0 3060
michael@0 3061 pref("font.default.x-knda", "serif");
michael@0 3062 pref("font.size.variable.x-knda", 16);
michael@0 3063 pref("font.size.fixed.x-knda", 13);
michael@0 3064
michael@0 3065 pref("font.default.x-sinh", "serif");
michael@0 3066 pref("font.size.variable.x-sinh", 16);
michael@0 3067 pref("font.size.fixed.x-sinh", 13);
michael@0 3068
michael@0 3069 pref("font.default.x-tibt", "serif");
michael@0 3070 pref("font.size.variable.x-tibt", 16);
michael@0 3071 pref("font.size.fixed.x-tibt", 13);
michael@0 3072
michael@0 3073 pref("font.default.x-unicode", "serif");
michael@0 3074 pref("font.size.variable.x-unicode", 16);
michael@0 3075 pref("font.size.fixed.x-unicode", 13);
michael@0 3076
michael@0 3077 pref("font.default.x-western", "serif");
michael@0 3078 pref("font.size.variable.x-western", 16);
michael@0 3079 pref("font.size.fixed.x-western", 13);
michael@0 3080
michael@0 3081 pref("font.default.zh-CN", "sans-serif");
michael@0 3082 pref("font.size.variable.zh-CN", 15);
michael@0 3083 pref("font.size.fixed.zh-CN", 16);
michael@0 3084
michael@0 3085 pref("font.default.zh-TW", "sans-serif");
michael@0 3086 pref("font.size.variable.zh-TW", 15);
michael@0 3087 pref("font.size.fixed.zh-TW", 16);
michael@0 3088
michael@0 3089 pref("font.default.zh-HK", "sans-serif");
michael@0 3090 pref("font.size.variable.zh-HK", 15);
michael@0 3091 pref("font.size.fixed.zh-HK", 16);
michael@0 3092
michael@0 3093 // Apple's Symbol is Unicode so use it
michael@0 3094 pref("font.mathfont-family", "Latin Modern Math, XITS Math, STIX Math, Cambria Math, Asana Math, TeX Gyre Bonum Math, TeX Gyre Pagella Math, TeX Gyre Termes Math, Neo Euler, Lucida Bright Math, MathJax_Main, STIXNonUnicode, STIXSizeOneSym, STIXGeneral, Symbol, DejaVu Sans");
michael@0 3095
michael@0 3096 // individual font faces to be treated as independent families
michael@0 3097 // names are Postscript names of each face
michael@0 3098 pref("font.single-face-list", "Osaka-Mono");
michael@0 3099
michael@0 3100 // optimization hint for fonts with localized names to be read in at startup, otherwise read in at lookup miss
michael@0 3101 // names are canonical family names (typically English names)
michael@0 3102 pref("font.preload-names-list", "Hiragino Kaku Gothic ProN,Hiragino Mincho ProN,STSong");
michael@0 3103
michael@0 3104 // Override font-weight values for some problematic families Apple ships
michael@0 3105 // (see bug 931426).
michael@0 3106 // The name here is the font's PostScript name, which can be checked in
michael@0 3107 // the Font Book utility or other tools.
michael@0 3108 pref("font.weight-override.AppleSDGothicNeo-Thin", 100); // Ensure Thin < UltraLight < Light
michael@0 3109 pref("font.weight-override.AppleSDGothicNeo-UltraLight", 200);
michael@0 3110 pref("font.weight-override.AppleSDGothicNeo-Light", 300);
michael@0 3111 pref("font.weight-override.AppleSDGothicNeo-Heavy", 900); // Ensure Heavy > ExtraBold (800)
michael@0 3112
michael@0 3113 pref("font.weight-override.Avenir-Book", 300); // Ensure Book < Roman (400)
michael@0 3114 pref("font.weight-override.Avenir-BookOblique", 300);
michael@0 3115 pref("font.weight-override.Avenir-MediumOblique", 500); // Harmonize MediumOblique with Medium
michael@0 3116 pref("font.weight-override.Avenir-Black", 900); // Ensure Black > Heavy (800)
michael@0 3117 pref("font.weight-override.Avenir-BlackOblique", 900);
michael@0 3118
michael@0 3119 pref("font.weight-override.AvenirNext-MediumItalic", 500); // Harmonize MediumItalic with Medium
michael@0 3120 pref("font.weight-override.AvenirNextCondensed-MediumItalic", 500);
michael@0 3121
michael@0 3122 pref("font.weight-override.HelveticaNeue-Light", 300); // Ensure Light > Thin (200)
michael@0 3123 pref("font.weight-override.HelveticaNeue-LightItalic", 300);
michael@0 3124 pref("font.weight-override.HelveticaNeue-MediumItalic", 500); // Harmonize MediumItalic with Medium
michael@0 3125
michael@0 3126 // Override the Windows settings: no menu key, meta accelerator key. ctrl for general access key in HTML/XUL
michael@0 3127 // Use 17 for Ctrl, 18 for Option, 224 for Cmd, 0 for none
michael@0 3128 pref("ui.key.menuAccessKey", 0);
michael@0 3129 pref("ui.key.accelKey", 224);
michael@0 3130 // (pinkerton, joki, saari) IE5 for mac uses Control for access keys. The HTML4 spec
michael@0 3131 // suggests to use command on mac, but this really sucks (imagine someone having a "q"
michael@0 3132 // as an access key and not letting you quit the app!). As a result, we've made a
michael@0 3133 // command decision 1 day before tree lockdown to change it to the control key.
michael@0 3134 pref("ui.key.generalAccessKey", -1);
michael@0 3135
michael@0 3136 // If generalAccessKey is -1, use the following two prefs instead.
michael@0 3137 // Use 0 for disabled, 1 for Shift, 2 for Ctrl, 4 for Alt, 8 for Meta (Cmd)
michael@0 3138 // (values can be combined, e.g. 3 for Ctrl+Shift)
michael@0 3139 pref("ui.key.chromeAccess", 2);
michael@0 3140 pref("ui.key.contentAccess", 6);
michael@0 3141
michael@0 3142 // print_extra_margin enables platforms to specify an extra gap or margin
michael@0 3143 // around the content of the page for Print Preview only
michael@0 3144 pref("print.print_extra_margin", 90); // twips (90 twips is an eigth of an inch)
michael@0 3145
michael@0 3146 // See bug 404131, topmost <panel> element wins to Dashboard on MacOSX.
michael@0 3147 pref("ui.panel.default_level_parent", false);
michael@0 3148
michael@0 3149 pref("ui.plugin.cancel_composition_at_input_source_changed", false);
michael@0 3150
michael@0 3151 // The min width of composition window for plugins
michael@0 3152 pref("ui.plugin.panel.min-width", 500);
michael@0 3153
michael@0 3154 pref("mousewheel.system_scroll_override_on_root_content.enabled", false);
michael@0 3155
michael@0 3156 // Macbook touchpad two finger pixel scrolling
michael@0 3157 pref("mousewheel.enable_pixel_scrolling", true);
michael@0 3158
michael@0 3159 # XP_MACOSX
michael@0 3160 #endif
michael@0 3161
michael@0 3162 #ifdef ANDROID
michael@0 3163 // Handled differently under Mac/Windows
michael@0 3164 pref("network.protocol-handler.warn-external.file", false);
michael@0 3165 pref("browser.drag_out_of_frame_style", 1);
michael@0 3166
michael@0 3167 // Middle-mouse handling
michael@0 3168 pref("middlemouse.paste", true);
michael@0 3169 pref("middlemouse.contentLoadURL", true);
michael@0 3170 pref("middlemouse.openNewWindow", true);
michael@0 3171 pref("middlemouse.scrollbarPosition", true);
michael@0 3172
michael@0 3173 pref("browser.urlbar.clickSelectsAll", false);
michael@0 3174
michael@0 3175 // Tab focus model bit field:
michael@0 3176 // 1 focuses text controls, 2 focuses other form elements, 4 adds links.
michael@0 3177 // Leave this at the default, 7, to match mozilla1.0-era user expectations.
michael@0 3178 // pref("accessibility.tabfocus", 1);
michael@0 3179
michael@0 3180 // autocomplete keyboard grab workaround
michael@0 3181 pref("autocomplete.grab_during_popup", true);
michael@0 3182 pref("autocomplete.ungrab_during_mode_switch", true);
michael@0 3183
michael@0 3184 // Default to using the system filepicker if possible, but allow
michael@0 3185 // toggling to use the XUL filepicker
michael@0 3186 pref("ui.allow_platform_file_picker", true);
michael@0 3187
michael@0 3188 pref("helpers.global_mime_types_file", "/etc/mime.types");
michael@0 3189 pref("helpers.global_mailcap_file", "/etc/mailcap");
michael@0 3190 pref("helpers.private_mime_types_file", "~/.mime.types");
michael@0 3191 pref("helpers.private_mailcap_file", "~/.mailcap");
michael@0 3192 pref("print.print_command", "lpr ${MOZ_PRINTER_NAME:+-P\"$MOZ_PRINTER_NAME\"}");
michael@0 3193 pref("print.printer_list", ""); // list of printers, separated by spaces
michael@0 3194 pref("print.print_reversed", false);
michael@0 3195 pref("print.print_color", true);
michael@0 3196 pref("print.print_landscape", false);
michael@0 3197 pref("print.print_paper_size", 0);
michael@0 3198
michael@0 3199 // print_extra_margin enables platforms to specify an extra gap or margin
michael@0 3200 // around the content of the page for Print Preview only
michael@0 3201 pref("print.print_extra_margin", 0); // twips
michael@0 3202
michael@0 3203 # ANDROID
michael@0 3204 #endif
michael@0 3205
michael@0 3206 #if defined(ANDROID) || defined(FXOS_SIMULATOR)
michael@0 3207 // font names
michael@0 3208
michael@0 3209 pref("font.alias-list", "sans,sans-serif,serif,monospace");
michael@0 3210
michael@0 3211 // Gonk (along with FxOS Simulator) and Android ship different sets of fonts
michael@0 3212 #if defined(MOZ_WIDGET_GONK) || defined(FXOS_SIMULATOR)
michael@0 3213
michael@0 3214 // TODO: some entries could probably be cleaned up.
michael@0 3215
michael@0 3216 // ar
michael@0 3217
michael@0 3218 pref("font.name.serif.el", "Droid Serif");
michael@0 3219 pref("font.name.sans-serif.el", "Roboto"); // To be updated once the Greek letters in Fira are revised
michael@0 3220 pref("font.name.monospace.el", "Droid Sans Mono");
michael@0 3221
michael@0 3222 pref("font.name.serif.he", "Charis SIL Compact");
michael@0 3223 pref("font.name.sans-serif.he", "Fira Sans OT");
michael@0 3224 pref("font.name.monospace.he", "Fira Mono OT");
michael@0 3225 pref("font.name-list.sans-serif.he", "Droid Sans Hebrew, Fira Sans OT");
michael@0 3226
michael@0 3227 pref("font.name.serif.ja", "Charis SIL Compact");
michael@0 3228 pref("font.name.sans-serif.ja", "Fira Sans OT");
michael@0 3229 pref("font.name.monospace.ja", "MotoyaLMaru");
michael@0 3230 pref("font.name-list.sans-serif.ja", "Fira Sans OT, MotoyaLMaru, MotoyaLCedar, Droid Sans Japanese");
michael@0 3231 pref("font.name-list.monospace.ja", "MotoyaLMaru, MotoyaLCedar, Fira Mono OT");
michael@0 3232
michael@0 3233 pref("font.name.serif.ko", "Charis SIL Compact");
michael@0 3234 pref("font.name.sans-serif.ko", "Fira Sans OT");
michael@0 3235 pref("font.name.monospace.ko", "Fira Mono OT");
michael@0 3236
michael@0 3237 pref("font.name.serif.th", "Charis SIL Compact");
michael@0 3238 pref("font.name.sans-serif.th", "Fira Sans OT");
michael@0 3239 pref("font.name.monospace.th", "Fira Mono OT");
michael@0 3240 pref("font.name-list.sans-serif.th", "Fira Sans OT, Droid Sans Thai");
michael@0 3241
michael@0 3242 pref("font.name.serif.tr", "Charis SIL Compact");
michael@0 3243 pref("font.name.sans-serif.tr", "Fira Sans OT");
michael@0 3244 pref("font.name.monospace.tr", "Fira Mono OT");
michael@0 3245
michael@0 3246 pref("font.name.serif.x-baltic", "Charis SIL Compact");
michael@0 3247 pref("font.name.sans-serif.x-baltic", "Fira Sans OT");
michael@0 3248 pref("font.name.monospace.x-baltic", "Fira Mono OT");
michael@0 3249
michael@0 3250 pref("font.name.serif.x-central-euro", "Charis SIL Compact");
michael@0 3251 pref("font.name.sans-serif.x-central-euro", "Fira Sans OT");
michael@0 3252 pref("font.name.monospace.x-central-euro", "Fira Mono OT");
michael@0 3253
michael@0 3254 pref("font.name.serif.x-cyrillic", "Charis SIL Compact");
michael@0 3255 pref("font.name.sans-serif.x-cyrillic", "Fira Sans OT");
michael@0 3256 pref("font.name.monospace.x-cyrillic", "Fira Mono OT");
michael@0 3257
michael@0 3258 pref("font.name.serif.x-unicode", "Charis SIL Compact");
michael@0 3259 pref("font.name.sans-serif.x-unicode", "Fira Sans OT");
michael@0 3260 pref("font.name.monospace.x-unicode", "Fira Mono OT");
michael@0 3261
michael@0 3262 pref("font.name.serif.x-western", "Charis SIL Compact");
michael@0 3263 pref("font.name.sans-serif.x-western", "Fira Sans OT");
michael@0 3264 pref("font.name.monospace.x-western", "Fira Mono OT");
michael@0 3265
michael@0 3266 pref("font.name.serif.zh-CN", "Charis SIL Compact");
michael@0 3267 pref("font.name.sans-serif.zh-CN", "Fira Sans OT");
michael@0 3268 pref("font.name.monospace.zh-CN", "Fira Mono OT");
michael@0 3269
michael@0 3270 pref("font.name.serif.zh-HK", "Charis SIL Compact");
michael@0 3271 pref("font.name.sans-serif.zh-HK", "Fira Sans OT");
michael@0 3272 pref("font.name.monospace.zh-HK", "Fira Mono OT");
michael@0 3273
michael@0 3274 pref("font.name.serif.zh-TW", "Charis SIL Compact");
michael@0 3275 pref("font.name.sans-serif.zh-TW", "Fira Sans OT");
michael@0 3276 pref("font.name.monospace.zh-TW", "Fira Mono OT");
michael@0 3277
michael@0 3278 #else
michael@0 3279
michael@0 3280 // not MOZ_WIDGET_GONK / FXOS_SIMULATOR
michael@0 3281 // (i.e. this is Firefox for Android) - here, we use the bundled fonts
michael@0 3282
michael@0 3283 // ar
michael@0 3284
michael@0 3285 pref("font.name.serif.el", "Droid Serif"); // not Charis SIL Compact, only has a few Greek chars
michael@0 3286 pref("font.name.sans-serif.el", "Clear Sans");
michael@0 3287 pref("font.name.monospace.el", "Droid Sans Mono");
michael@0 3288 pref("font.name-list.sans-serif.el", "Clear Sans, Roboto, Droid Sans");
michael@0 3289
michael@0 3290 pref("font.name.serif.he", "Droid Serif");
michael@0 3291 pref("font.name.sans-serif.he", "Clear Sans");
michael@0 3292 pref("font.name.monospace.he", "Droid Sans Mono");
michael@0 3293 pref("font.name-list.sans-serif.he", "Droid Sans Hebrew, Clear Sans, Droid Sans");
michael@0 3294
michael@0 3295 pref("font.name.serif.ja", "Charis SIL Compact");
michael@0 3296 pref("font.name.sans-serif.ja", "Clear Sans");
michael@0 3297 pref("font.name.monospace.ja", "MotoyaLMaru");
michael@0 3298 pref("font.name-list.serif.ja", "Droid Serif");
michael@0 3299 pref("font.name-list.sans-serif.ja", "Clear Sans, Roboto, Droid Sans, MotoyaLMaru, MotoyaLCedar, Droid Sans Japanese");
michael@0 3300 pref("font.name-list.monospace.ja", "MotoyaLMaru, MotoyaLCedar, Droid Sans Mono");
michael@0 3301
michael@0 3302 pref("font.name.serif.ko", "Charis SIL Compact");
michael@0 3303 pref("font.name.sans-serif.ko", "Clear Sans");
michael@0 3304 pref("font.name.monospace.ko", "Droid Sans Mono");
michael@0 3305 pref("font.name-list.serif.ko", "Droid Serif, HYSerif");
michael@0 3306 pref("font.name-list.sans-serif.ko", "SmartGothic, NanumGothic, DroidSansFallback, Droid Sans Fallback");
michael@0 3307
michael@0 3308 pref("font.name.serif.th", "Charis SIL Compact");
michael@0 3309 pref("font.name.sans-serif.th", "Clear Sans");
michael@0 3310 pref("font.name.monospace.th", "Droid Sans Mono");
michael@0 3311 pref("font.name-list.serif.th", "Droid Serif");
michael@0 3312 pref("font.name-list.sans-serif.th", "Droid Sans Thai, Clear Sans, Droid Sans");
michael@0 3313
michael@0 3314 pref("font.name.serif.tr", "Charis SIL Compact");
michael@0 3315 pref("font.name.sans-serif.tr", "Clear Sans");
michael@0 3316 pref("font.name.monospace.tr", "Droid Sans Mono");
michael@0 3317 pref("font.name-list.serif.tr", "Droid Serif");
michael@0 3318 pref("font.name-list.sans-serif.tr", "Clear Sans, Roboto, Droid Sans");
michael@0 3319
michael@0 3320 pref("font.name.serif.x-baltic", "Charis SIL Compact");
michael@0 3321 pref("font.name.sans-serif.x-baltic", "Clear Sans");
michael@0 3322 pref("font.name.monospace.x-baltic", "Droid Sans Mono");
michael@0 3323 pref("font.name-list.serif.x-baltic", "Droid Serif");
michael@0 3324 pref("font.name-list.sans-serif.x-baltic", "Clear Sans, Roboto, Droid Sans");
michael@0 3325
michael@0 3326 pref("font.name.serif.x-central-euro", "Charis SIL Compact");
michael@0 3327 pref("font.name.sans-serif.x-central-euro", "Clear Sans");
michael@0 3328 pref("font.name.monospace.x-central-euro", "Droid Sans Mono");
michael@0 3329 pref("font.name-list.serif.x-central-euro", "Droid Serif");
michael@0 3330 pref("font.name-list.sans-serif.x-central-euro", "Clear Sans, Roboto, Droid Sans");
michael@0 3331
michael@0 3332 pref("font.name.serif.x-cyrillic", "Charis SIL Compact");
michael@0 3333 pref("font.name.sans-serif.x-cyrillic", "Clear Sans");
michael@0 3334 pref("font.name.monospace.x-cyrillic", "Droid Sans Mono");
michael@0 3335 pref("font.name-list.serif.x-cyrillic", "Droid Serif");
michael@0 3336 pref("font.name-list.sans-serif.x-cyrillic", "Clear Sans, Roboto, Droid Sans");
michael@0 3337
michael@0 3338 pref("font.name.serif.x-unicode", "Charis SIL Compact");
michael@0 3339 pref("font.name.sans-serif.x-unicode", "Clear Sans");
michael@0 3340 pref("font.name.monospace.x-unicode", "Droid Sans Mono");
michael@0 3341 pref("font.name-list.serif.x-unicode", "Droid Serif");
michael@0 3342 pref("font.name-list.sans-serif.x-unicode", "Clear Sans, Roboto, Droid Sans");
michael@0 3343
michael@0 3344 pref("font.name.serif.x-western", "Charis SIL Compact");
michael@0 3345 pref("font.name.sans-serif.x-western", "Clear Sans");
michael@0 3346 pref("font.name.monospace.x-western", "Droid Sans Mono");
michael@0 3347 pref("font.name-list.serif.x-western", "Droid Serif");
michael@0 3348 pref("font.name-list.sans-serif.x-western", "Clear Sans, Roboto, Droid Sans");
michael@0 3349
michael@0 3350 pref("font.name.serif.zh-CN", "Charis SIL Compact");
michael@0 3351 pref("font.name.sans-serif.zh-CN", "Clear Sans");
michael@0 3352 pref("font.name.monospace.zh-CN", "Droid Sans Mono");
michael@0 3353 pref("font.name-list.serif.zh-CN", "Droid Serif, Droid Sans Fallback");
michael@0 3354 pref("font.name-list.sans-serif.zh-CN", "Roboto, Droid Sans, Droid Sans Fallback");
michael@0 3355 pref("font.name-list.monospace.zh-CN", "Droid Sans Fallback");
michael@0 3356
michael@0 3357 pref("font.name.serif.zh-HK", "Charis SIL Compact");
michael@0 3358 pref("font.name.sans-serif.zh-HK", "Clear Sans");
michael@0 3359 pref("font.name.monospace.zh-HK", "Droid Sans Mono");
michael@0 3360 pref("font.name-list.serif.zh-HK", "Droid Serif, Droid Sans Fallback");
michael@0 3361 pref("font.name-list.sans-serif.zh-HK", "Roboto, Droid Sans, Droid Sans Fallback");
michael@0 3362 pref("font.name-list.monospace.zh-HK", "Droid Sans Fallback");
michael@0 3363
michael@0 3364 pref("font.name.serif.zh-TW", "Charis SIL Compact");
michael@0 3365 pref("font.name.sans-serif.zh-TW", "Clear Sans");
michael@0 3366 pref("font.name.monospace.zh-TW", "Droid Sans Mono");
michael@0 3367 pref("font.name-list.serif.zh-TW", "Droid Serif, Droid Sans Fallback");
michael@0 3368 pref("font.name-list.sans-serif.zh-TW", "Roboto, Droid Sans, Droid Sans Fallback");
michael@0 3369 pref("font.name-list.monospace.zh-TW", "Droid Sans Fallback");
michael@0 3370
michael@0 3371 // end ! (MOZ_WIDGET_GONK || FXOS_SIMULATOR)
michael@0 3372
michael@0 3373 #endif
michael@0 3374
michael@0 3375 pref("font.default.ar", "sans-serif");
michael@0 3376 pref("font.size.variable.ar", 16);
michael@0 3377 pref("font.size.fixed.ar", 12);
michael@0 3378
michael@0 3379 pref("font.default.el", "sans-serif");
michael@0 3380 pref("font.size.variable.el", 16);
michael@0 3381 pref("font.size.fixed.el", 12);
michael@0 3382
michael@0 3383 pref("font.default.he", "sans-serif");
michael@0 3384 pref("font.size.variable.he", 16);
michael@0 3385 pref("font.size.fixed.he", 12);
michael@0 3386
michael@0 3387 pref("font.default.ja", "sans-serif");
michael@0 3388 pref("font.size.variable.ja", 16);
michael@0 3389 pref("font.size.fixed.ja", 16);
michael@0 3390
michael@0 3391 pref("font.default.ko", "sans-serif");
michael@0 3392 pref("font.size.variable.ko", 16);
michael@0 3393 pref("font.size.fixed.ko", 16);
michael@0 3394
michael@0 3395 pref("font.default.th", "serif");
michael@0 3396 pref("font.size.variable.th", 16);
michael@0 3397 pref("font.size.fixed.th", 13);
michael@0 3398 pref("font.minimum-size.th", 13);
michael@0 3399
michael@0 3400 pref("font.default.tr", "sans-serif");
michael@0 3401 pref("font.size.variable.tr", 16);
michael@0 3402 pref("font.size.fixed.tr", 12);
michael@0 3403
michael@0 3404 pref("font.default.x-baltic", "sans-serif");
michael@0 3405 pref("font.size.variable.x-baltic", 16);
michael@0 3406 pref("font.size.fixed.x-baltic", 12);
michael@0 3407
michael@0 3408 pref("font.default.x-central-euro", "sans-serif");
michael@0 3409 pref("font.size.variable.x-central-euro", 16);
michael@0 3410 pref("font.size.fixed.x-central-euro", 12);
michael@0 3411
michael@0 3412 pref("font.default.x-cyrillic", "sans-serif");
michael@0 3413 pref("font.size.variable.x-cyrillic", 16);
michael@0 3414 pref("font.size.fixed.x-cyrillic", 12);
michael@0 3415
michael@0 3416 pref("font.default.x-unicode", "sans-serif");
michael@0 3417 pref("font.size.variable.x-unicode", 16);
michael@0 3418 pref("font.size.fixed.x-unicode", 12);
michael@0 3419
michael@0 3420 pref("font.default.x-western", "sans-serif");
michael@0 3421 pref("font.size.variable.x-western", 16);
michael@0 3422 pref("font.size.fixed.x-western", 12);
michael@0 3423
michael@0 3424 pref("font.default.zh-CN", "sans-serif");
michael@0 3425 pref("font.size.variable.zh-CN", 16);
michael@0 3426 pref("font.size.fixed.zh-CN", 16);
michael@0 3427
michael@0 3428 pref("font.default.zh-TW", "sans-serif");
michael@0 3429 pref("font.size.variable.zh-TW", 16);
michael@0 3430 pref("font.size.fixed.zh-TW", 16);
michael@0 3431
michael@0 3432 pref("font.default.zh-HK", "sans-serif");
michael@0 3433 pref("font.size.variable.zh-HK", 16);
michael@0 3434 pref("font.size.fixed.zh-HK", 16);
michael@0 3435
michael@0 3436 pref("font.default.x-devanagari", "serif");
michael@0 3437 pref("font.size.variable.x-devanagari", 16);
michael@0 3438 pref("font.size.fixed.x-devanagari", 13);
michael@0 3439
michael@0 3440 pref("font.default.x-tamil", "serif");
michael@0 3441 pref("font.size.variable.x-tamil", 16);
michael@0 3442 pref("font.size.fixed.x-tamil", 13);
michael@0 3443
michael@0 3444 pref("font.default.x-armn", "serif");
michael@0 3445 pref("font.size.variable.x-armn", 16);
michael@0 3446 pref("font.size.fixed.x-armn", 13);
michael@0 3447
michael@0 3448 pref("font.default.x-beng", "serif");
michael@0 3449 pref("font.size.variable.x-beng", 16);
michael@0 3450 pref("font.size.fixed.x-beng", 13);
michael@0 3451
michael@0 3452 pref("font.default.x-cans", "serif");
michael@0 3453 pref("font.size.variable.x-cans", 16);
michael@0 3454 pref("font.size.fixed.x-cans", 13);
michael@0 3455
michael@0 3456 pref("font.default.x-ethi", "serif");
michael@0 3457 pref("font.size.variable.x-ethi", 16);
michael@0 3458 pref("font.size.fixed.x-ethi", 13);
michael@0 3459
michael@0 3460 pref("font.default.x-geor", "serif");
michael@0 3461 pref("font.size.variable.x-geor", 16);
michael@0 3462 pref("font.size.fixed.x-geor", 13);
michael@0 3463
michael@0 3464 pref("font.default.x-gujr", "serif");
michael@0 3465 pref("font.size.variable.x-gujr", 16);
michael@0 3466 pref("font.size.fixed.x-gujr", 13);
michael@0 3467
michael@0 3468 pref("font.default.x-guru", "serif");
michael@0 3469 pref("font.size.variable.x-guru", 16);
michael@0 3470 pref("font.size.fixed.x-guru", 13);
michael@0 3471
michael@0 3472 pref("font.default.x-khmr", "serif");
michael@0 3473 pref("font.size.variable.x-khmr", 16);
michael@0 3474 pref("font.size.fixed.x-khmr", 13);
michael@0 3475
michael@0 3476 pref("font.default.x-mlym", "serif");
michael@0 3477 pref("font.size.variable.x-mlym", 16);
michael@0 3478 pref("font.size.fixed.x-mlym", 13);
michael@0 3479
michael@0 3480 pref("font.default.x-orya", "serif");
michael@0 3481 pref("font.size.variable.x-orya", 16);
michael@0 3482 pref("font.size.fixed.x-orya", 13);
michael@0 3483
michael@0 3484 pref("font.default.x-telu", "serif");
michael@0 3485 pref("font.size.variable.x-telu", 16);
michael@0 3486 pref("font.size.fixed.x-telu", 13);
michael@0 3487
michael@0 3488 pref("font.default.x-knda", "serif");
michael@0 3489 pref("font.size.variable.x-knda", 16);
michael@0 3490 pref("font.size.fixed.x-knda", 13);
michael@0 3491
michael@0 3492 pref("font.default.x-sinh", "serif");
michael@0 3493 pref("font.size.variable.x-sinh", 16);
michael@0 3494 pref("font.size.fixed.x-sinh", 13);
michael@0 3495
michael@0 3496 pref("font.default.x-tibt", "serif");
michael@0 3497 pref("font.size.variable.x-tibt", 16);
michael@0 3498 pref("font.size.fixed.x-tibt", 13);
michael@0 3499
michael@0 3500 # ANDROID || FXOS_SIMUALTOR
michael@0 3501 #endif
michael@0 3502
michael@0 3503 #ifdef ANDROID
michael@0 3504 /* PostScript print module prefs */
michael@0 3505 // pref("print.postscript.enabled", true);
michael@0 3506 pref("print.postscript.paper_size", "letter");
michael@0 3507 pref("print.postscript.orientation", "portrait");
michael@0 3508 pref("print.postscript.print_command", "lpr ${MOZ_PRINTER_NAME:+-P\"$MOZ_PRINTER_NAME\"}");
michael@0 3509
michael@0 3510 // Setting default_level_parent to true makes the default level for popup
michael@0 3511 // windows "top" instead of "parent". On GTK2 platform, this is implemented
michael@0 3512 // with override-redirect windows which is the normal way to implement
michael@0 3513 // temporary popup windows. Setting this to false would make the default
michael@0 3514 // level "parent" which is implemented with managed windows.
michael@0 3515 // A problem with using managed windows is that metacity sometimes deactivates
michael@0 3516 // the parent window when the managed popup is shown.
michael@0 3517 pref("ui.panel.default_level_parent", true);
michael@0 3518
michael@0 3519 pref("mousewheel.system_scroll_override_on_root_content.enabled", false);
michael@0 3520
michael@0 3521 # ANDROID
michael@0 3522 #endif
michael@0 3523
michael@0 3524 #ifndef ANDROID
michael@0 3525 #ifndef XP_MACOSX
michael@0 3526 #ifdef XP_UNIX
michael@0 3527 // Handled differently under Mac/Windows
michael@0 3528 pref("network.protocol-handler.warn-external.file", false);
michael@0 3529 pref("browser.drag_out_of_frame_style", 1);
michael@0 3530
michael@0 3531 // Middle-mouse handling
michael@0 3532 pref("middlemouse.paste", true);
michael@0 3533 pref("middlemouse.contentLoadURL", true);
michael@0 3534 pref("middlemouse.openNewWindow", true);
michael@0 3535 pref("middlemouse.scrollbarPosition", true);
michael@0 3536
michael@0 3537 // Clipboard behavior
michael@0 3538 pref("clipboard.autocopy", true);
michael@0 3539
michael@0 3540 pref("browser.urlbar.clickSelectsAll", false);
michael@0 3541
michael@0 3542 // Tab focus model bit field:
michael@0 3543 // 1 focuses text controls, 2 focuses other form elements, 4 adds links.
michael@0 3544 // Leave this at the default, 7, to match mozilla1.0-era user expectations.
michael@0 3545 // pref("accessibility.tabfocus", 1);
michael@0 3546
michael@0 3547 // autocomplete keyboard grab workaround
michael@0 3548 pref("autocomplete.grab_during_popup", true);
michael@0 3549 pref("autocomplete.ungrab_during_mode_switch", true);
michael@0 3550
michael@0 3551 // Default to using the system filepicker if possible, but allow
michael@0 3552 // toggling to use the XUL filepicker
michael@0 3553 pref("ui.allow_platform_file_picker", true);
michael@0 3554
michael@0 3555 pref("helpers.global_mime_types_file", "/etc/mime.types");
michael@0 3556 pref("helpers.global_mailcap_file", "/etc/mailcap");
michael@0 3557 pref("helpers.private_mime_types_file", "~/.mime.types");
michael@0 3558 pref("helpers.private_mailcap_file", "~/.mailcap");
michael@0 3559 pref("print.print_command", "lpr ${MOZ_PRINTER_NAME:+-P\"$MOZ_PRINTER_NAME\"}");
michael@0 3560 pref("print.printer_list", ""); // list of printers, separated by spaces
michael@0 3561 pref("print.print_reversed", false);
michael@0 3562 pref("print.print_color", true);
michael@0 3563 pref("print.print_landscape", false);
michael@0 3564 pref("print.print_paper_size", 0);
michael@0 3565
michael@0 3566 // print_extra_margin enables platforms to specify an extra gap or margin
michael@0 3567 // around the content of the page for Print Preview only
michael@0 3568 pref("print.print_extra_margin", 0); // twips
michael@0 3569
michael@0 3570 // font names
michael@0 3571
michael@0 3572 pref("font.alias-list", "sans,sans-serif,serif,monospace");
michael@0 3573
michael@0 3574 // ar
michael@0 3575
michael@0 3576 pref("font.name.serif.el", "serif");
michael@0 3577 pref("font.name.sans-serif.el", "sans-serif");
michael@0 3578 pref("font.name.monospace.el", "monospace");
michael@0 3579
michael@0 3580 pref("font.name.serif.he", "serif");
michael@0 3581 pref("font.name.sans-serif.he", "sans-serif");
michael@0 3582 pref("font.name.monospace.he", "monospace");
michael@0 3583
michael@0 3584 pref("font.name.serif.ja", "serif");
michael@0 3585 pref("font.name.sans-serif.ja", "sans-serif");
michael@0 3586 pref("font.name.monospace.ja", "monospace");
michael@0 3587
michael@0 3588 pref("font.name.serif.ko", "serif");
michael@0 3589 pref("font.name.sans-serif.ko", "sans-serif");
michael@0 3590 pref("font.name.monospace.ko", "monospace");
michael@0 3591
michael@0 3592 pref("font.name.serif.th", "serif");
michael@0 3593 pref("font.name.sans-serif.th", "sans-serif");
michael@0 3594 pref("font.name.monospace.th", "monospace");
michael@0 3595
michael@0 3596 pref("font.name.serif.tr", "serif");
michael@0 3597 pref("font.name.sans-serif.tr", "sans-serif");
michael@0 3598 pref("font.name.monospace.tr", "monospace");
michael@0 3599
michael@0 3600 pref("font.name.serif.x-baltic", "serif");
michael@0 3601 pref("font.name.sans-serif.x-baltic", "sans-serif");
michael@0 3602 pref("font.name.monospace.x-baltic", "monospace");
michael@0 3603
michael@0 3604 pref("font.name.serif.x-central-euro", "serif");
michael@0 3605 pref("font.name.sans-serif.x-central-euro", "sans-serif");
michael@0 3606 pref("font.name.monospace.x-central-euro", "monospace");
michael@0 3607
michael@0 3608 pref("font.name.serif.x-cyrillic", "serif");
michael@0 3609 pref("font.name.sans-serif.x-cyrillic", "sans-serif");
michael@0 3610 pref("font.name.monospace.x-cyrillic", "monospace");
michael@0 3611
michael@0 3612 pref("font.name.serif.x-unicode", "serif");
michael@0 3613 pref("font.name.sans-serif.x-unicode", "sans-serif");
michael@0 3614 pref("font.name.monospace.x-unicode", "monospace");
michael@0 3615
michael@0 3616 pref("font.name.serif.x-western", "serif");
michael@0 3617 pref("font.name.sans-serif.x-western", "sans-serif");
michael@0 3618 pref("font.name.monospace.x-western", "monospace");
michael@0 3619
michael@0 3620 pref("font.name.serif.zh-CN", "serif");
michael@0 3621 pref("font.name.sans-serif.zh-CN", "sans-serif");
michael@0 3622 pref("font.name.monospace.zh-CN", "monospace");
michael@0 3623
michael@0 3624 // ming_uni.ttf (HKSCS-2001)
michael@0 3625 // http://www.info.gov.hk/digital21/eng/hkscs/download/uime.exe
michael@0 3626 pref("font.name.serif.zh-HK", "serif");
michael@0 3627 pref("font.name.sans-serif.zh-HK", "sans-serif");
michael@0 3628 pref("font.name.monospace.zh-HK", "monospace");
michael@0 3629
michael@0 3630 // zh-TW
michael@0 3631
michael@0 3632 pref("font.default.ar", "sans-serif");
michael@0 3633 pref("font.size.variable.ar", 16);
michael@0 3634 pref("font.size.fixed.ar", 12);
michael@0 3635
michael@0 3636 pref("font.default.el", "serif");
michael@0 3637 pref("font.size.variable.el", 16);
michael@0 3638 pref("font.size.fixed.el", 12);
michael@0 3639
michael@0 3640 pref("font.default.he", "sans-serif");
michael@0 3641 pref("font.size.variable.he", 16);
michael@0 3642 pref("font.size.fixed.he", 12);
michael@0 3643
michael@0 3644 pref("font.default.ja", "sans-serif");
michael@0 3645 pref("font.size.variable.ja", 16);
michael@0 3646 pref("font.size.fixed.ja", 16);
michael@0 3647
michael@0 3648 pref("font.default.ko", "sans-serif");
michael@0 3649 pref("font.size.variable.ko", 16);
michael@0 3650 pref("font.size.fixed.ko", 16);
michael@0 3651
michael@0 3652 pref("font.default.th", "serif");
michael@0 3653 pref("font.size.variable.th", 16);
michael@0 3654 pref("font.size.fixed.th", 13);
michael@0 3655 pref("font.minimum-size.th", 13);
michael@0 3656
michael@0 3657 pref("font.default.tr", "serif");
michael@0 3658 pref("font.size.variable.tr", 16);
michael@0 3659 pref("font.size.fixed.tr", 12);
michael@0 3660
michael@0 3661 pref("font.default.x-baltic", "serif");
michael@0 3662 pref("font.size.variable.x-baltic", 16);
michael@0 3663 pref("font.size.fixed.x-baltic", 12);
michael@0 3664
michael@0 3665 pref("font.default.x-central-euro", "serif");
michael@0 3666 pref("font.size.variable.x-central-euro", 16);
michael@0 3667 pref("font.size.fixed.x-central-euro", 12);
michael@0 3668
michael@0 3669 pref("font.default.x-cyrillic", "serif");
michael@0 3670 pref("font.size.variable.x-cyrillic", 16);
michael@0 3671 pref("font.size.fixed.x-cyrillic", 12);
michael@0 3672
michael@0 3673 pref("font.default.x-unicode", "serif");
michael@0 3674 pref("font.size.variable.x-unicode", 16);
michael@0 3675 pref("font.size.fixed.x-unicode", 12);
michael@0 3676
michael@0 3677 pref("font.default.x-western", "serif");
michael@0 3678 pref("font.size.variable.x-western", 16);
michael@0 3679 pref("font.size.fixed.x-western", 12);
michael@0 3680
michael@0 3681 pref("font.default.zh-CN", "sans-serif");
michael@0 3682 pref("font.size.variable.zh-CN", 16);
michael@0 3683 pref("font.size.fixed.zh-CN", 16);
michael@0 3684
michael@0 3685 pref("font.default.zh-TW", "sans-serif");
michael@0 3686 pref("font.size.variable.zh-TW", 16);
michael@0 3687 pref("font.size.fixed.zh-TW", 16);
michael@0 3688
michael@0 3689 pref("font.default.zh-HK", "sans-serif");
michael@0 3690 pref("font.size.variable.zh-HK", 16);
michael@0 3691 pref("font.size.fixed.zh-HK", 16);
michael@0 3692
michael@0 3693 pref("font.default.x-devanagari", "serif");
michael@0 3694 pref("font.size.variable.x-devanagari", 16);
michael@0 3695 pref("font.size.fixed.x-devanagari", 13);
michael@0 3696
michael@0 3697 pref("font.default.x-tamil", "serif");
michael@0 3698 pref("font.size.variable.x-tamil", 16);
michael@0 3699 pref("font.size.fixed.x-tamil", 13);
michael@0 3700
michael@0 3701 pref("font.default.x-armn", "serif");
michael@0 3702 pref("font.size.variable.x-armn", 16);
michael@0 3703 pref("font.size.fixed.x-armn", 13);
michael@0 3704
michael@0 3705 pref("font.default.x-beng", "serif");
michael@0 3706 pref("font.size.variable.x-beng", 16);
michael@0 3707 pref("font.size.fixed.x-beng", 13);
michael@0 3708
michael@0 3709 pref("font.default.x-cans", "serif");
michael@0 3710 pref("font.size.variable.x-cans", 16);
michael@0 3711 pref("font.size.fixed.x-cans", 13);
michael@0 3712
michael@0 3713 pref("font.default.x-ethi", "serif");
michael@0 3714 pref("font.size.variable.x-ethi", 16);
michael@0 3715 pref("font.size.fixed.x-ethi", 13);
michael@0 3716
michael@0 3717 pref("font.default.x-geor", "serif");
michael@0 3718 pref("font.size.variable.x-geor", 16);
michael@0 3719 pref("font.size.fixed.x-geor", 13);
michael@0 3720
michael@0 3721 pref("font.default.x-gujr", "serif");
michael@0 3722 pref("font.size.variable.x-gujr", 16);
michael@0 3723 pref("font.size.fixed.x-gujr", 13);
michael@0 3724
michael@0 3725 pref("font.default.x-guru", "serif");
michael@0 3726 pref("font.size.variable.x-guru", 16);
michael@0 3727 pref("font.size.fixed.x-guru", 13);
michael@0 3728
michael@0 3729 pref("font.default.x-khmr", "serif");
michael@0 3730 pref("font.size.variable.x-khmr", 16);
michael@0 3731 pref("font.size.fixed.x-khmr", 13);
michael@0 3732
michael@0 3733 pref("font.default.x-mlym", "serif");
michael@0 3734 pref("font.size.variable.x-mlym", 16);
michael@0 3735 pref("font.size.fixed.x-mlym", 13);
michael@0 3736
michael@0 3737 pref("font.default.x-orya", "serif");
michael@0 3738 pref("font.size.variable.x-orya", 16);
michael@0 3739 pref("font.size.fixed.x-orya", 13);
michael@0 3740
michael@0 3741 pref("font.default.x-telu", "serif");
michael@0 3742 pref("font.size.variable.x-telu", 16);
michael@0 3743 pref("font.size.fixed.x-telu", 13);
michael@0 3744
michael@0 3745 pref("font.default.x-knda", "serif");
michael@0 3746 pref("font.size.variable.x-knda", 16);
michael@0 3747 pref("font.size.fixed.x-knda", 13);
michael@0 3748
michael@0 3749 pref("font.default.x-sinh", "serif");
michael@0 3750 pref("font.size.variable.x-sinh", 16);
michael@0 3751 pref("font.size.fixed.x-sinh", 13);
michael@0 3752
michael@0 3753 pref("font.default.x-tibt", "serif");
michael@0 3754 pref("font.size.variable.x-tibt", 16);
michael@0 3755 pref("font.size.fixed.x-tibt", 13);
michael@0 3756
michael@0 3757 /* PostScript print module prefs */
michael@0 3758 // pref("print.postscript.enabled", true);
michael@0 3759 pref("print.postscript.paper_size", "letter");
michael@0 3760 pref("print.postscript.orientation", "portrait");
michael@0 3761 pref("print.postscript.print_command", "lpr ${MOZ_PRINTER_NAME:+-P\"$MOZ_PRINTER_NAME\"}");
michael@0 3762
michael@0 3763 // On GTK2 platform, we should use topmost window level for the default window
michael@0 3764 // level of <panel> element of XUL. GTK2 has only two window types. One is
michael@0 3765 // normal top level window, other is popup window. The popup window is always
michael@0 3766 // topmost window level, therefore, we are using normal top level window for
michael@0 3767 // non-topmost panel, but it is pretty hacky. On some Window Managers, we have
michael@0 3768 // 2 problems:
michael@0 3769 // 1. The non-topmost panel steals focus from its parent window at showing.
michael@0 3770 // 2. The parent of non-topmost panel is not activated when the panel is hidden.
michael@0 3771 // So, we have no reasons we should use non-toplevel window for popup.
michael@0 3772 pref("ui.panel.default_level_parent", true);
michael@0 3773
michael@0 3774 pref("mousewheel.system_scroll_override_on_root_content.enabled", false);
michael@0 3775
michael@0 3776 #if MOZ_WIDGET_GTK == 2
michael@0 3777 pref("intl.ime.use_simple_context_on_password_field", true);
michael@0 3778 #else
michael@0 3779 pref("intl.ime.use_simple_context_on_password_field", false);
michael@0 3780 #endif
michael@0 3781
michael@0 3782 # XP_UNIX
michael@0 3783 #endif
michael@0 3784 #endif
michael@0 3785 #endif
michael@0 3786
michael@0 3787 #if OS_ARCH==AIX
michael@0 3788
michael@0 3789 // Override default Japanese fonts
michael@0 3790 pref("font.name.serif.ja", "dt-interface system-jisx0208.1983-0");
michael@0 3791 pref("font.name.sans-serif.ja", "dt-interface system-jisx0208.1983-0");
michael@0 3792 pref("font.name.monospace.ja", "dt-interface user-jisx0208.1983-0");
michael@0 3793
michael@0 3794 // Override default Cyrillic fonts
michael@0 3795 pref("font.name.serif.x-cyrillic", "dt-interface system-iso8859-5");
michael@0 3796 pref("font.name.sans-serif.x-cyrillic", "dt-interface system-iso8859-5");
michael@0 3797 pref("font.name.monospace.x-cyrillic", "dt-interface user-iso8859-5");
michael@0 3798
michael@0 3799 // Override default Unicode fonts
michael@0 3800 pref("font.name.serif.x-unicode", "dt-interface system-ucs2.cjk_japan-0");
michael@0 3801 pref("font.name.sans-serif.x-unicode", "dt-interface system-ucs2.cjk_japan-0");
michael@0 3802 pref("font.name.monospace.x-unicode", "dt-interface user-ucs2.cjk_japan-0");
michael@0 3803
michael@0 3804 # AIX
michael@0 3805 #endif
michael@0 3806
michael@0 3807 #ifdef SOLARIS
michael@0 3808
michael@0 3809 pref("print.postscript.print_command", "lp -c -s ${MOZ_PRINTER_NAME:+-d\"$MOZ_PRINTER_NAME\"}");
michael@0 3810 pref("print.print_command", "lp -c -s ${MOZ_PRINTER_NAME:+-d\"$MOZ_PRINTER_NAME\"}");
michael@0 3811
michael@0 3812 # Solaris
michael@0 3813 #endif
michael@0 3814
michael@0 3815 // Login Manager prefs
michael@0 3816 pref("signon.rememberSignons", true);
michael@0 3817 pref("signon.autofillForms", true);
michael@0 3818 pref("signon.autologin.proxy", false);
michael@0 3819 pref("signon.storeWhenAutocompleteOff", true);
michael@0 3820 pref("signon.debug", false);
michael@0 3821
michael@0 3822 // Satchel (Form Manager) prefs
michael@0 3823 pref("browser.formfill.debug", false);
michael@0 3824 pref("browser.formfill.enable", true);
michael@0 3825 pref("browser.formfill.expire_days", 180);
michael@0 3826 pref("browser.formfill.saveHttpsForms", true);
michael@0 3827 pref("browser.formfill.agedWeight", 2);
michael@0 3828 pref("browser.formfill.bucketSize", 1);
michael@0 3829 pref("browser.formfill.maxTimeGroupings", 25);
michael@0 3830 pref("browser.formfill.timeGroupingSize", 604800);
michael@0 3831 pref("browser.formfill.boundaryWeight", 25);
michael@0 3832 pref("browser.formfill.prefixWeight", 5);
michael@0 3833
michael@0 3834 // Zoom prefs
michael@0 3835 pref("browser.zoom.full", false);
michael@0 3836 pref("zoom.minPercent", 30);
michael@0 3837 pref("zoom.maxPercent", 300);
michael@0 3838 pref("toolkit.zoomManager.zoomValues", ".3,.5,.67,.8,.9,1,1.1,1.2,1.33,1.5,1.7,2,2.4,3");
michael@0 3839
michael@0 3840 /**
michael@0 3841 * Specify whether or not the browser should generate a reflow event on zoom.
michael@0 3842 * For a pan-and-zoom ui on mobile, it is sometimes desirable for a zoom event
michael@0 3843 * to limit the max line box width of text in order to enable easier reading
michael@0 3844 * of large amounts of text.
michael@0 3845 *
michael@0 3846 * If enabled, this will limit the max line box width of all text on a page to
michael@0 3847 * the viewport width (also generating a reflow), after a zoom event occurs.
michael@0 3848 *
michael@0 3849 * By default, this is not enabled.
michael@0 3850 */
michael@0 3851 pref("browser.zoom.reflowOnZoom", false);
michael@0 3852
michael@0 3853 /**
michael@0 3854 * Specifies the number of milliseconds to wait after a given reflow-on-zoom
michael@0 3855 * operation has completed before allowing another one to be triggered. This
michael@0 3856 * is to prevent a buildup of reflow-zoom events.
michael@0 3857 */
michael@0 3858 pref("browser.zoom.reflowZoom.reflowTimeout", 500);
michael@0 3859
michael@0 3860 /**
michael@0 3861 * Controls whether or not the reflow-on-zoom behavior happens on page load.
michael@0 3862 * This can be enabled in conjunction with the above preference (reflowOnZoom),
michael@0 3863 * but has no effect if browser.zoom.reflowOnZoom is disabled.
michael@0 3864 *
michael@0 3865 * Note that this should be turned off only in cases where debugging of the
michael@0 3866 * reflow-on-zoom feature is necessary, and enabling the feature during
michael@0 3867 * a page load inhbits this debugging.
michael@0 3868 */
michael@0 3869 pref("browser.zoom.reflowZoom.reflowTextOnPageLoad", true);
michael@0 3870
michael@0 3871 // Image-related prefs
michael@0 3872 // The maximum size, in bytes, of the decoded images we cache
michael@0 3873 pref("image.cache.size", 5242880);
michael@0 3874 // A weight, from 0-1000, to place on time when comparing to size.
michael@0 3875 // Size is given a weight of 1000 - timeweight.
michael@0 3876 pref("image.cache.timeweight", 500);
michael@0 3877
michael@0 3878 // The default Accept header sent for images loaded over HTTP(S)
michael@0 3879 pref("image.http.accept", "image/png,image/*;q=0.8,*/*;q=0.5");
michael@0 3880
michael@0 3881 // Whether we do high-quality image downscaling. OS X natively supports
michael@0 3882 // high-quality image scaling.
michael@0 3883 #ifdef XP_MACOSX
michael@0 3884 pref("image.high_quality_downscaling.enabled", false);
michael@0 3885 #else
michael@0 3886 pref("image.high_quality_downscaling.enabled", true);
michael@0 3887 #endif
michael@0 3888
michael@0 3889 // The minimum percent downscaling we'll use high-quality downscaling on,
michael@0 3890 // interpreted as a floating-point number / 1000.
michael@0 3891 pref("image.high_quality_downscaling.min_factor", 1000);
michael@0 3892
michael@0 3893 // The maximum memory size which we'll use high-quality uspcaling on,
michael@0 3894 // interpreted as number of decoded bytes.
michael@0 3895 pref("image.high_quality_upscaling.max_size", 20971520);
michael@0 3896
michael@0 3897 //
michael@0 3898 // Image memory management prefs
michael@0 3899 //
michael@0 3900
michael@0 3901 // Discards inactive image frames and re-decodes them on demand from
michael@0 3902 // compressed data.
michael@0 3903 pref("image.mem.discardable", true);
michael@0 3904
michael@0 3905 // Prevents images from automatically being decoded on load, instead allowing
michael@0 3906 // them to be decoded on demand when they are drawn.
michael@0 3907 pref("image.mem.decodeondraw", true);
michael@0 3908
michael@0 3909 // Allows image locking of decoded image data in content processes.
michael@0 3910 pref("image.mem.allow_locking_in_content_processes", true);
michael@0 3911
michael@0 3912 // Minimum timeout for image discarding (in milliseconds). The actual time in
michael@0 3913 // which an image must inactive for it to be discarded will vary between this
michael@0 3914 // value and twice this value.
michael@0 3915 //
michael@0 3916 // This used to be 120 seconds, but having it that high causes our working
michael@0 3917 // set to grow very large. Switching it back to 10 seconds will hopefully
michael@0 3918 // be better.
michael@0 3919 pref("image.mem.min_discard_timeout_ms", 10000);
michael@0 3920
michael@0 3921 // Chunk size for calls to the image decoders
michael@0 3922 pref("image.mem.decode_bytes_at_a_time", 16384);
michael@0 3923
michael@0 3924 // The longest time we can spend in an iteration of an async decode
michael@0 3925 pref("image.mem.max_ms_before_yield", 5);
michael@0 3926
michael@0 3927 // The maximum amount of decoded image data we'll willingly keep around (we
michael@0 3928 // might keep around more than this, but we'll try to get down to this value).
michael@0 3929 pref("image.mem.max_decoded_image_kb", 51200);
michael@0 3930
michael@0 3931 // Hard limit for the amount of decoded image data, 0 means we don't have the
michael@0 3932 // hard limit for it.
michael@0 3933 pref("image.mem.hard_limit_decoded_image_kb", 0);
michael@0 3934
michael@0 3935 // Minimum timeout for expiring unused images from the surface cache, in
michael@0 3936 // milliseconds. This controls how long we store cached temporary surfaces.
michael@0 3937 pref("image.mem.surfacecache.min_expiration_ms", 60000); // 60ms
michael@0 3938
michael@0 3939 // Maximum size for the surface cache, in kilobytes.
michael@0 3940 pref("image.mem.surfacecache.max_size_kb", 102400); // 100MB
michael@0 3941
michael@0 3942 // The surface cache's size, within the constraints of the maximum size set
michael@0 3943 // above, is determined using a formula based on system capabilities like memory
michael@0 3944 // size. The size factor is used to tune this formula. Larger size factors
michael@0 3945 // result in smaller caches. The default should be a good balance for most
michael@0 3946 // systems.
michael@0 3947 pref("image.mem.surfacecache.size_factor", 64);
michael@0 3948
michael@0 3949 // Whether we decode images on multiple background threads rather than the
michael@0 3950 // foreground thread.
michael@0 3951 pref("image.multithreaded_decoding.enabled", true);
michael@0 3952
michael@0 3953 // How many threads we'll use for multithreaded decoding. If < 0, will be
michael@0 3954 // automatically determined based on the system's number of cores.
michael@0 3955 pref("image.multithreaded_decoding.limit", -1);
michael@0 3956
michael@0 3957 // Limit for the canvas image cache. 0 means we don't limit the size of the
michael@0 3958 // cache.
michael@0 3959 pref("canvas.image.cache.limit", 0);
michael@0 3960
michael@0 3961 // How many images to eagerly decode on a given page. 0 means "no limit".
michael@0 3962 pref("image.onload.decode.limit", 0);
michael@0 3963
michael@0 3964 // WebGL prefs
michael@0 3965 pref("gl.msaa-level", 2);
michael@0 3966 pref("webgl.force-enabled", false);
michael@0 3967 pref("webgl.disabled", false);
michael@0 3968 pref("webgl.shader_validator", true);
michael@0 3969 pref("webgl.prefer-native-gl", false);
michael@0 3970 pref("webgl.min_capability_mode", false);
michael@0 3971 pref("webgl.disable-extensions", false);
michael@0 3972 pref("webgl.msaa-force", false);
michael@0 3973 pref("webgl.prefer-16bpp", false);
michael@0 3974 pref("webgl.default-no-alpha", false);
michael@0 3975 pref("webgl.force-layers-readback", false);
michael@0 3976 pref("webgl.lose-context-on-heap-minimize", false);
michael@0 3977 pref("webgl.can-lose-context-in-foreground", true);
michael@0 3978 pref("webgl.max-warnings-per-context", 32);
michael@0 3979 pref("webgl.enable-draft-extensions", false);
michael@0 3980 pref("webgl.enable-privileged-extensions", false);
michael@0 3981 #ifdef MOZ_WIDGET_GONK
michael@0 3982 pref("gfx.gralloc.fence-with-readpixels", false);
michael@0 3983 #endif
michael@0 3984
michael@0 3985
michael@0 3986 // Stagefright prefs
michael@0 3987 pref("stagefright.force-enabled", false);
michael@0 3988 pref("stagefright.disabled", false);
michael@0 3989
michael@0 3990 #ifdef XP_WIN
michael@0 3991 // The default TCP send window on Windows is too small, and autotuning only occurs on receive
michael@0 3992 pref("network.tcp.sendbuffer", 131072);
michael@0 3993 #endif
michael@0 3994 // TCP Keepalive
michael@0 3995 pref("network.tcp.keepalive.enabled", true);
michael@0 3996 // Default idle time before first TCP keepalive probe; same time for interval
michael@0 3997 // between successful probes. Can be overridden in socket transport API.
michael@0 3998 // Win, Linux and Mac.
michael@0 3999 pref("network.tcp.keepalive.idle_time", 600); // seconds; 10 mins
michael@0 4000 // Default timeout for retransmission of unack'd keepalive probes.
michael@0 4001 // Win and Linux only; not configurable on Mac.
michael@0 4002 #if defined(XP_UNIX) && !defined(XP_MACOSX) || defined(XP_WIN)
michael@0 4003 pref("network.tcp.keepalive.retry_interval", 1); // seconds
michael@0 4004 #endif
michael@0 4005 // Default maximum probe retransmissions.
michael@0 4006 // Linux only; not configurable on Win and Mac; fixed at 10 and 8 respectively.
michael@0 4007 #ifdef XP_UNIX && !defined(XP_MACOSX)
michael@0 4008 pref("network.tcp.keepalive.probe_count", 4);
michael@0 4009 #endif
michael@0 4010
michael@0 4011 // Whether to disable acceleration for all widgets.
michael@0 4012 pref("layers.acceleration.disabled", false);
michael@0 4013
michael@0 4014 // Whether to force acceleration on, ignoring blacklists.
michael@0 4015 #ifdef ANDROID
michael@0 4016 // bug 838603 -- on Android, accidentally blacklisting OpenGL layers
michael@0 4017 // means a startup crash for everyone.
michael@0 4018 pref("layers.acceleration.force-enabled", true);
michael@0 4019 #else
michael@0 4020 pref("layers.acceleration.force-enabled", false);
michael@0 4021 #endif
michael@0 4022
michael@0 4023 pref("layers.acceleration.draw-fps", false);
michael@0 4024
michael@0 4025 pref("layers.dump", false);
michael@0 4026 pref("layers.draw-borders", false);
michael@0 4027 pref("layers.draw-tile-borders", false);
michael@0 4028 pref("layers.draw-bigimage-borders", false);
michael@0 4029 pref("layers.frame-counter", false);
michael@0 4030 pref("layers.enable-tiles", false);
michael@0 4031 // Max number of layers per container. See Overwrite in mobile prefs.
michael@0 4032 pref("layers.max-active", -1);
michael@0 4033 // When a layer is moving it will add a scroll graph to measure the smoothness
michael@0 4034 // of the movement. NOTE: This pref triggers composites to refresh
michael@0 4035 // the graph.
michael@0 4036 pref("layers.scroll-graph", false);
michael@0 4037
michael@0 4038 // Set the default values, and then override per-platform as needed
michael@0 4039 pref("layers.offmainthreadcomposition.enabled", false);
michael@0 4040 // Compositor target frame rate. NOTE: If vsync is enabled the compositor
michael@0 4041 // frame rate will still be capped.
michael@0 4042 // -1 -> default (match layout.frame_rate or 60 FPS)
michael@0 4043 // 0 -> full-tilt mode: Recomposite even if not transaction occured.
michael@0 4044 pref("layers.offmainthreadcomposition.frame-rate", -1);
michael@0 4045 #ifndef XP_WIN
michael@0 4046 // Asynchonous video compositing using the ImageBridge IPDL protocol.
michael@0 4047 // requires off-main-thread compositing.
michael@0 4048 // Never works on Windows, so no point pref'ing it on.
michael@0 4049 pref("layers.async-video.enabled",false);
michael@0 4050 #endif
michael@0 4051
michael@0 4052 #ifdef MOZ_X11
michael@0 4053 // OMTC off by default on Linux, but if activated, use new textures and async-video.
michael@0 4054 pref("layers.async-video.enabled", true);
michael@0 4055 #endif
michael@0 4056
michael@0 4057 #ifdef MOZ_WIDGET_QT
michael@0 4058 pref("layers.offmainthreadcomposition.enabled", true);
michael@0 4059 pref("layers.async-video.enabled",true);
michael@0 4060 #endif
michael@0 4061
michael@0 4062 #ifdef XP_MACOSX
michael@0 4063 pref("layers.offmainthreadcomposition.enabled", true);
michael@0 4064 pref("layers.async-video.enabled",true);
michael@0 4065 #endif
michael@0 4066
michael@0 4067 // ANDROID covers android and b2g
michael@0 4068 #ifdef ANDROID
michael@0 4069 pref("layers.offmainthreadcomposition.enabled", true);
michael@0 4070 pref("layers.async-video.enabled",true);
michael@0 4071 #endif
michael@0 4072
michael@0 4073 // same effect as layers.offmainthreadcomposition.enabled, but specifically for
michael@0 4074 // use with tests.
michael@0 4075 pref("layers.offmainthreadcomposition.testing.enabled", false);
michael@0 4076
michael@0 4077 // whether to allow use of the basic compositor
michael@0 4078 pref("layers.offmainthreadcomposition.force-basic", false);
michael@0 4079
michael@0 4080 // Whether to animate simple opacity and transforms on the compositor
michael@0 4081 pref("layers.offmainthreadcomposition.async-animations", false);
michael@0 4082
michael@0 4083 // Whether to log information about off main thread animations to stderr
michael@0 4084 pref("layers.offmainthreadcomposition.log-animations", false);
michael@0 4085
michael@0 4086 pref("layers.bufferrotation.enabled", true);
michael@0 4087
michael@0 4088 pref("layers.componentalpha.enabled", true);
michael@0 4089
michael@0 4090 #ifdef ANDROID
michael@0 4091 pref("gfx.apitrace.enabled",false);
michael@0 4092 #endif
michael@0 4093
michael@0 4094 #ifdef MOZ_X11
michael@0 4095 #ifdef MOZ_WIDGET_GTK
michael@0 4096 pref("gfx.xrender.enabled",true);
michael@0 4097 #endif
michael@0 4098 #endif
michael@0 4099
michael@0 4100 #ifdef XP_WIN
michael@0 4101 // Whether to disable the automatic detection and use of direct2d.
michael@0 4102 pref("gfx.direct2d.disabled", false);
michael@0 4103
michael@0 4104 // Whether to attempt to enable Direct2D regardless of automatic detection or
michael@0 4105 // blacklisting
michael@0 4106 pref("gfx.direct2d.force-enabled", false);
michael@0 4107
michael@0 4108 pref("layers.prefer-opengl", false);
michael@0 4109 pref("layers.prefer-d3d9", false);
michael@0 4110 #endif
michael@0 4111
michael@0 4112 // Force all possible layers to be always active layers
michael@0 4113 pref("layers.force-active", false);
michael@0 4114
michael@0 4115 // Enable/Disable the geolocation API for content
michael@0 4116 pref("geo.enabled", true);
michael@0 4117
michael@0 4118 // Enable/Disable the orientation API for content
michael@0 4119 pref("device.sensors.enabled", true);
michael@0 4120
michael@0 4121 // Enable/Disable the device storage API for content
michael@0 4122 pref("device.storage.enabled", false);
michael@0 4123
michael@0 4124 // Toggle which thread the HTML5 parser uses for stream parsing
michael@0 4125 pref("html5.offmainthread", true);
michael@0 4126 // Time in milliseconds between the time a network buffer is seen and the
michael@0 4127 // timer firing when the timer hasn't fired previously in this parse in the
michael@0 4128 // off-the-main-thread HTML5 parser.
michael@0 4129 pref("html5.flushtimer.initialdelay", 120);
michael@0 4130 // Time in milliseconds between the time a network buffer is seen and the
michael@0 4131 // timer firing when the timer has already fired previously in this parse.
michael@0 4132 pref("html5.flushtimer.subsequentdelay", 120);
michael@0 4133
michael@0 4134 // Push/Pop/Replace State prefs
michael@0 4135 pref("browser.history.allowPushState", true);
michael@0 4136 pref("browser.history.allowReplaceState", true);
michael@0 4137 pref("browser.history.allowPopState", true);
michael@0 4138 pref("browser.history.maxStateObjectSize", 655360);
michael@0 4139
michael@0 4140 // XPInstall prefs
michael@0 4141 pref("xpinstall.whitelist.required", true);
michael@0 4142 pref("extensions.alwaysUnpack", false);
michael@0 4143 pref("extensions.minCompatiblePlatformVersion", "2.0");
michael@0 4144
michael@0 4145 pref("network.buffer.cache.count", 24);
michael@0 4146 pref("network.buffer.cache.size", 32768);
michael@0 4147
michael@0 4148 // Desktop Notification
michael@0 4149 pref("notification.feature.enabled", false);
michael@0 4150
michael@0 4151 // Web Notification
michael@0 4152 pref("dom.webnotifications.enabled", true);
michael@0 4153
michael@0 4154 // Alert animation effect, name is disableSlidingEffect for backwards-compat.
michael@0 4155 pref("alerts.disableSlidingEffect", false);
michael@0 4156
michael@0 4157 // DOM full-screen API.
michael@0 4158 pref("full-screen-api.enabled", false);
michael@0 4159 pref("full-screen-api.allow-trusted-requests-only", true);
michael@0 4160 pref("full-screen-api.content-only", false);
michael@0 4161 pref("full-screen-api.pointer-lock.enabled", true);
michael@0 4162
michael@0 4163 // DOM idle observers API
michael@0 4164 pref("dom.idle-observers-api.enabled", true);
michael@0 4165
michael@0 4166 // Time limit, in milliseconds, for EventStateManager::IsHandlingUserInput().
michael@0 4167 // Used to detect long running handlers of user-generated events.
michael@0 4168 pref("dom.event.handling-user-input-time-limit", 1000);
michael@0 4169
michael@0 4170 // Whether we should layerize all animated images (if otherwise possible).
michael@0 4171 pref("layout.animated-image-layers.enabled", false);
michael@0 4172
michael@0 4173 pref("dom.vibrator.enabled", true);
michael@0 4174 pref("dom.vibrator.max_vibrate_ms", 10000);
michael@0 4175 pref("dom.vibrator.max_vibrate_list_len", 128);
michael@0 4176
michael@0 4177 // Battery API
michael@0 4178 pref("dom.battery.enabled", true);
michael@0 4179
michael@0 4180 // WebSMS
michael@0 4181 pref("dom.sms.enabled", false);
michael@0 4182 // Enable Latin characters replacement with corresponding ones in GSM SMS
michael@0 4183 // 7-bit default alphabet.
michael@0 4184 pref("dom.sms.strict7BitEncoding", false);
michael@0 4185 pref("dom.sms.requestStatusReport", true);
michael@0 4186 // Numeric default service id for SMS API calls with |serviceId| parameter
michael@0 4187 // omitted.
michael@0 4188 pref("dom.sms.defaultServiceId", 0);
michael@0 4189
michael@0 4190 // WebContacts
michael@0 4191 pref("dom.mozContacts.enabled", false);
michael@0 4192 pref("dom.navigator-property.disable.mozContacts", true);
michael@0 4193 pref("dom.global-constructor.disable.mozContact", true);
michael@0 4194
michael@0 4195 // WebAlarms
michael@0 4196 pref("dom.mozAlarms.enabled", false);
michael@0 4197
michael@0 4198 // SimplePush
michael@0 4199 pref("services.push.enabled", false);
michael@0 4200
michael@0 4201 // WebNetworkStats
michael@0 4202 pref("dom.mozNetworkStats.enabled", false);
michael@0 4203
michael@0 4204 // WebSettings
michael@0 4205 pref("dom.mozSettings.enabled", false);
michael@0 4206 pref("dom.mozPermissionSettings.enabled", false);
michael@0 4207
michael@0 4208 // W3C touch events
michael@0 4209 // 0 - disabled, 1 - enabled, 2 - autodetect (win)
michael@0 4210 #ifdef XP_WIN
michael@0 4211 pref("dom.w3c_touch_events.enabled", 2);
michael@0 4212 #endif
michael@0 4213
michael@0 4214 // W3C draft pointer events
michael@0 4215 pref("dom.w3c_pointer_events.enabled", false);
michael@0 4216
michael@0 4217 // W3C touch-action css property (related to touch and pointer events)
michael@0 4218 pref("layout.css.touch_action.enabled", false);
michael@0 4219
michael@0 4220 // enable JS dump() function.
michael@0 4221 pref("browser.dom.window.dump.enabled", false);
michael@0 4222
michael@0 4223 // SPS Profiler
michael@0 4224 pref("profiler.enabled", false);
michael@0 4225 pref("profiler.interval", 10);
michael@0 4226 pref("profiler.entries", 100000);
michael@0 4227
michael@0 4228 #if defined(MOZ_WIDGET_GONK) || defined(MOZ_WIDGET_ANDROID)
michael@0 4229 // Network Information API
michael@0 4230 pref("dom.netinfo.enabled", true);
michael@0 4231 #else
michael@0 4232 pref("dom.netinfo.enabled", false);
michael@0 4233 #endif
michael@0 4234
michael@0 4235 #ifdef XP_WIN
michael@0 4236 // On 32-bit Windows, fire a low-memory notification if we have less than this
michael@0 4237 // many mb of virtual address space available.
michael@0 4238 pref("memory.low_virtual_memory_threshold_mb", 128);
michael@0 4239
michael@0 4240 // On Windows 32- or 64-bit, fire a low-memory notification if we have less
michael@0 4241 // than this many mb of commit space (physical memory plus page file) left.
michael@0 4242 pref("memory.low_commit_space_threshold_mb", 128);
michael@0 4243
michael@0 4244 // On Windows 32- or 64-bit, fire a low-memory notification if we have less
michael@0 4245 // than this many mb of physical memory available on the whole machine.
michael@0 4246 pref("memory.low_physical_memory_threshold_mb", 0);
michael@0 4247
michael@0 4248 // On Windows 32- or 64-bit, don't fire a low-memory notification because of
michael@0 4249 // low available physical memory or low commit space more than once every
michael@0 4250 // low_memory_notification_interval_ms.
michael@0 4251 pref("memory.low_memory_notification_interval_ms", 10000);
michael@0 4252 #endif
michael@0 4253
michael@0 4254 // How long must we wait before declaring that a window is a "ghost" (i.e., a
michael@0 4255 // likely leak)? This should be longer than it usually takes for an eligible
michael@0 4256 // window to be collected via the GC/CC.
michael@0 4257 pref("memory.ghost_window_timeout_seconds", 60);
michael@0 4258
michael@0 4259 // Disable freeing dirty pages when minimizing memory.
michael@0 4260 pref("memory.free_dirty_pages", false);
michael@0 4261
michael@0 4262 // Disable the Linux-specific, system-wide memory reporter.
michael@0 4263 #ifdef XP_LINUX
michael@0 4264 pref("memory.system_memory_reporter", false);
michael@0 4265 #endif
michael@0 4266
michael@0 4267 // Don't dump memory reports on OOM, by default.
michael@0 4268 pref("memory.dump_reports_on_oom", false);
michael@0 4269
michael@0 4270 // Number of stack frames to capture in createObjectURL for about:memory.
michael@0 4271 pref("memory.blob_report.stack_frames", 0);
michael@0 4272
michael@0 4273 // comma separated list of domain origins (e.g. https://domain.com) for
michael@0 4274 // providers that can install from their own website without user warnings.
michael@0 4275 // entries are
michael@0 4276 pref("social.whitelist", "https://mozsocial.cliqz.com,https://now.msn.com,https://mixi.jp");
michael@0 4277 // comma separated list of domain origins (e.g. https://domain.com) for
michael@0 4278 // directory websites (e.g. AMO) that can install providers for other sites
michael@0 4279 pref("social.directories", "https://activations.cdn.mozilla.net");
michael@0 4280 // remote-install allows any website to activate a provider, with extended UI
michael@0 4281 // notifying user of installation. we can later pref off remote install if
michael@0 4282 // necessary. This does not affect whitelisted and directory installs.
michael@0 4283 pref("social.remote-install.enabled", true);
michael@0 4284 pref("social.toast-notifications.enabled", true);
michael@0 4285
michael@0 4286 // Disable idle observer fuzz, because only privileged content can access idle
michael@0 4287 // observers (bug 780507).
michael@0 4288 pref("dom.idle-observers-api.fuzz_time.disabled", true);
michael@0 4289
michael@0 4290 // Lowest localId for apps.
michael@0 4291 pref("dom.mozApps.maxLocalId", 1000);
michael@0 4292
michael@0 4293 // XXX Security: You CANNOT safely add a new app store for
michael@0 4294 // installing privileged apps just by modifying this pref and
michael@0 4295 // adding the signing cert for that store to the cert trust
michael@0 4296 // database. *Any* origin listed can install apps signed with
michael@0 4297 // *any* certificate trusted; we don't try to maintain a strong
michael@0 4298 // association between certificate with installOrign. The
michael@0 4299 // expectation here is that in production builds the pref will
michael@0 4300 // contain exactly one origin. However, in custom development
michael@0 4301 // builds it may contain more than one origin so we can test
michael@0 4302 // different stages (dev, staging, prod) of the same app store.
michael@0 4303 pref("dom.mozApps.signed_apps_installable_from", "https://marketplace.firefox.com");
michael@0 4304
michael@0 4305 // Minimum delay in milliseconds between network activity notifications (0 means
michael@0 4306 // no notifications). The delay is the same for both download and upload, though
michael@0 4307 // they are handled separately. This pref is only read once at startup:
michael@0 4308 // a restart is required to enable a new value.
michael@0 4309 pref("network.activity.blipIntervalMilliseconds", 0);
michael@0 4310
michael@0 4311 // If true, reuse the same global for everything loaded by the component loader
michael@0 4312 // (JS components, JSMs, etc). This saves memory, but makes it possible for
michael@0 4313 // the scripts to interfere with each other. A restart is required for this
michael@0 4314 // to take effect.
michael@0 4315 pref("jsloader.reuseGlobal", false);
michael@0 4316
michael@0 4317 // When we're asked to take a screenshot, don't wait more than 2000ms for the
michael@0 4318 // event loop to become idle before actually taking the screenshot.
michael@0 4319 pref("dom.browserElement.maxScreenshotDelayMS", 2000);
michael@0 4320
michael@0 4321 // Whether we should show the placeholder when the element is focused but empty.
michael@0 4322 pref("dom.placeholder.show_on_focus", true);
michael@0 4323
michael@0 4324 // MMS UA Profile settings
michael@0 4325 pref("wap.UAProf.url", "");
michael@0 4326 pref("wap.UAProf.tagname", "x-wap-profile");
michael@0 4327
michael@0 4328 // MMS version 1.1 = 0x11 (or decimal 17)
michael@0 4329 // MMS version 1.3 = 0x13 (or decimal 19)
michael@0 4330 // @see OMA-TS-MMS_ENC-V1_3-20110913-A clause 7.3.34
michael@0 4331 pref("dom.mms.version", 19);
michael@0 4332
michael@0 4333 pref("dom.mms.requestStatusReport", true);
michael@0 4334
michael@0 4335 // Retrieval mode for MMS
michael@0 4336 // manual: Manual retrieval mode.
michael@0 4337 // automatic: Automatic retrieval mode even in roaming.
michael@0 4338 // automatic-home: Automatic retrieval mode in home network.
michael@0 4339 // never: Never retrieval mode.
michael@0 4340 pref("dom.mms.retrieval_mode", "manual");
michael@0 4341
michael@0 4342 pref("dom.mms.sendRetryCount", 3);
michael@0 4343 pref("dom.mms.sendRetryInterval", 300000);
michael@0 4344
michael@0 4345 pref("dom.mms.retrievalRetryCount", 4);
michael@0 4346 pref("dom.mms.retrievalRetryIntervals", "60000,300000,600000,1800000");
michael@0 4347 // Numeric default service id for MMS API calls with |serviceId| parameter
michael@0 4348 // omitted.
michael@0 4349 pref("dom.mms.defaultServiceId", 0);
michael@0 4350 // Debug enabler for MMS.
michael@0 4351 pref("mms.debugging.enabled", false);
michael@0 4352
michael@0 4353 // Request read report while sending MMS.
michael@0 4354 pref("dom.mms.requestReadReport", true);
michael@0 4355
michael@0 4356 // Number of RadioInterface instances to create.
michael@0 4357 pref("ril.numRadioInterfaces", 0);
michael@0 4358
michael@0 4359 // If the user puts a finger down on an element and we think the user
michael@0 4360 // might be executing a pan gesture, how long do we wait before
michael@0 4361 // tentatively deciding the gesture is actually a tap and activating
michael@0 4362 // the target element?
michael@0 4363 pref("ui.touch_activation.delay_ms", 100);
michael@0 4364
michael@0 4365 // If the user has clicked an element, how long do we keep the
michael@0 4366 // :active state before it is cleared by the mouse sequences
michael@0 4367 // fired after a touchstart/touchend.
michael@0 4368 pref("ui.touch_activation.duration_ms", 10);
michael@0 4369
michael@0 4370 // nsMemoryInfoDumper can watch a fifo in the temp directory and take various
michael@0 4371 // actions when the fifo is written to. Disable this in general.
michael@0 4372 pref("memory_info_dumper.watch_fifo.enabled", false);
michael@0 4373
michael@0 4374 #ifdef MOZ_CAPTIVEDETECT
michael@0 4375 pref("captivedetect.maxWaitingTime", 5000);
michael@0 4376 pref("captivedetect.pollingTime", 3000);
michael@0 4377 pref("captivedetect.maxRetryCount", 5);
michael@0 4378 #endif
michael@0 4379
michael@0 4380 #ifdef RELEASE_BUILD
michael@0 4381 pref("dom.forms.inputmode", false);
michael@0 4382 #else
michael@0 4383 pref("dom.forms.inputmode", true);
michael@0 4384 #endif
michael@0 4385
michael@0 4386 // InputMethods for soft keyboards in B2G
michael@0 4387 pref("dom.mozInputMethod.enabled", false);
michael@0 4388
michael@0 4389 // DataStore is disabled by default
michael@0 4390 pref("dom.datastore.enabled", false);
michael@0 4391
michael@0 4392 // Telephony API
michael@0 4393 #ifdef MOZ_B2G_RIL
michael@0 4394 pref("dom.telephony.enabled", true);
michael@0 4395 #else
michael@0 4396 pref("dom.telephony.enabled", false);
michael@0 4397 #endif
michael@0 4398 // Numeric default service id for WebTelephony API calls with |serviceId|
michael@0 4399 // parameter omitted.
michael@0 4400 pref("dom.telephony.defaultServiceId", 0);
michael@0 4401
michael@0 4402 // Cell Broadcast API
michael@0 4403 #ifdef MOZ_B2G_RIL
michael@0 4404 pref("dom.cellbroadcast.enabled", true);
michael@0 4405 #else
michael@0 4406 pref("dom.cellbroadcast.enabled", false);
michael@0 4407 #endif
michael@0 4408
michael@0 4409 // ICC API
michael@0 4410 #ifdef MOZ_B2G_RIL
michael@0 4411 pref("dom.icc.enabled", true);
michael@0 4412 #else
michael@0 4413 pref("dom.icc.enabled", false);
michael@0 4414 #endif
michael@0 4415
michael@0 4416 // Mobile Connection API
michael@0 4417 #ifdef MOZ_B2G_RIL
michael@0 4418 pref("dom.mobileconnection.enabled", true);
michael@0 4419 #else
michael@0 4420 pref("dom.mobileconnection.enabled", false);
michael@0 4421 #endif
michael@0 4422
michael@0 4423 // Voice Mail API
michael@0 4424 #ifdef MOZ_B2G_RIL
michael@0 4425 pref("dom.voicemail.enabled", true);
michael@0 4426 #else
michael@0 4427 pref("dom.voicemail.enabled", false);
michael@0 4428 #endif
michael@0 4429 // Numeric default service id for Voice Mail API calls with |serviceId|
michael@0 4430 // parameter omitted.
michael@0 4431 pref("dom.voicemail.defaultServiceId", 0);
michael@0 4432
michael@0 4433 // DOM Inter-App Communication API.
michael@0 4434 pref("dom.inter-app-communication-api.enabled", false);
michael@0 4435
michael@0 4436 // The tables used for Safebrowsing phishing and malware checks.
michael@0 4437 pref("urlclassifier.malware_table", "goog-malware-shavar,test-malware-simple");
michael@0 4438 pref("urlclassifier.phish_table", "goog-phish-shavar,test-phish-simple");
michael@0 4439 pref("urlclassifier.downloadBlockTable", "");
michael@0 4440 pref("urlclassifier.downloadAllowTable", "");
michael@0 4441 pref("urlclassifier.disallow_completions", "test-malware-simple,test-phish-simple,goog-downloadwhite-digest256");
michael@0 4442
michael@0 4443 // Turn off Spatial navigation by default.
michael@0 4444 pref("snav.enabled", false);
michael@0 4445
michael@0 4446 // Wakelock is disabled by default.
michael@0 4447 pref("dom.wakelock.enabled", false);
michael@0 4448
michael@0 4449 // The URL of the Firefox Accounts auth server backend
michael@0 4450 pref("identity.fxaccounts.auth.uri", "https://api.accounts.firefox.com/v1");
michael@0 4451
michael@0 4452 // disable mozsample size for now
michael@0 4453 pref("image.mozsamplesize.enabled", false);
michael@0 4454
michael@0 4455 // Enable navigator.sendBeacon on all platforms except b2g because it doesn't
michael@0 4456 // play nicely with Firefox OS apps yet.
michael@0 4457 #ifndef MOZ_WIDGET_GONK
michael@0 4458 pref("beacon.enabled", true);
michael@0 4459 #endif
michael@0 4460
michael@0 4461 // Camera prefs
michael@0 4462 pref("camera.control.autofocus_moving_callback.enabled", false);
michael@0 4463 pref("camera.control.face_detection.enabled", false);

mercurial