TechSpot



 

  Firefox Tweak Guide

--

Rendering

nglayout.initialpaint.delay (Integer). This value specifies the amount of time, in milliseconds, before Firefox should attempt rendering a page (Default of 250). This is perhaps the most misunderstood setting in Firefox, with numerous websites recommending you set this to 0 for fastest browsing. Somewhat ironically this actually increases the total time rendering a webpage, as explained by Asa Dotzler:

Setting the initial paint delay at 0, may get you some content on the screen faster, but it's worth noting that it will dramatically slow down the time it takes the entire page to display. Here's what's going on. Gecko, Firefox's rendering engine, is trying to optimize between the cost of waiting for a bit more data versus doing more painting and reflows as new data comes in. Waiting a bit longer before it starts painting the page gives Gecko a chance to receive more content before chewing up CPU cycles to render and reflow the document. If you drop this value down to 0 or near 0, that means you'll see the page start displaying a bit earlier, but not having received much data in that short interval, you'll have a lot more paint and reflow cycles to complete rendering of the page.

So if you don’t care about overall rendering time then yes, setting this to 0 can result in some content being displayed immediately. If however, you’d prefer improved overall page rendering time then you’ll want to adjust this value based on bandwidth available. Low bandwidth (dial-up) connections can benefit noticeably by increasing this value, with 750-1000 (the former being what I use currently) proving good. High bandwidth connections should be just fine at the default (250) – besides, is ¼ second really “that” noticeable a delay anyway?

content.notify.interval (Integer). This option specifies the amount of time, in microseconds (1/1000 millisecond), between reflows (Default of 120000). If you intend to adjust this value then bandwidth should play some role – low bandwidth connections are unlikely to receive much data over 0.12 seconds so you might see some performance benefit to giving it increased time to receive data before attempting a reflow. With high bandwidth connections the opposite may likely prove to be true, although reducing the time between reflows further can raise CPU use, so there’s no need to reduce this excessively, if at all, in such cases. If you do wish to use a lower value then 100000 (0.1 seconds) should be the lowest you consider going.

content.max.tokenizing.time (Integer). The value entered here determines the amount of time, in microseconds, after which parsing is interrupted to return to the application’s event loop. It’s recommended to set this to 3 x content.notify.interval, e.g. with a content.notify.interval of 150000, set content.max.tokenizing.time or 450000.

browser.display.show_image_placeholders (Boolean). Setting this to true enables the display of an image placeholder while loading images on a webpage (Getting replaced by the images as they download). Setting this to false disables such placeholders, which is recommended if you have a fast internet connection (As more than likely the placeholder will be replaced with the image almost immediately). On the downside however, the placeholder for broken images also no longer displays.

image.animation_mode (String). This setting controls rendering of animated images. normal specifies that the image is animated as many times as the file specifies (Infinitely probably). once, (amazingly enough) sets that an image is animated only once, i.e. not looped (The final frame of the image is left displayed when the animation has finished, while none sets that the image is not animated (Displaying only the first frame of the image instead).

images.dither (String). Dithering can be used to create the illusion of enhanced colour depth in images with a limited colour palette, e.g. gifs. That said, dithering can also make images appear grainier. As such it’s mainly a matter of preference whether you prefer the appearance of dithered images or not. Firefox provides 3 options to control image dithering.

auto. This option allows Firefox to determine whether an image should be dithered.

true. This option enables image dithering in Firefox.

false. This option disables image dithering in Firefox.

browser.xul.error_pages.enabled (Boolean). Previous versions of Firefox had issues with displaying error pages and as such error windows were used by default instead and may still be used by setting this to (false);

These issues have been resolved now however and error pages are now enabled by default (true), e.g. typing in a non-existent URL would result in the following;

Basically, this option is redundant and should be left set to true when using Firefox 1.5 or later. The Show Failed URL Extension is accordingly redundant as a result and should be uninstalled.

Scripting

javascript.enabled (Boolean). JavaScript is an open, cross-platform object scripting language (Not to be confused with Sun MicroSystem’s Java) and has proven repeatedly to be a security risk with several (now fixed) vulnerabilities attributed to it e.g. firetabbing and code execution via JavaScript. Setting this to false will provide improved security, although you will likely find many web pages that don’t function correctly as a result. Set this to true should you desire support for JavaScript. Note – This is the same as the Enable JavaScript option in the Content tab.

dom.allow_scripts_to_close_windows (Boolean). This option controls which windows can be closed via script. Setting this to true specifies that any window may be closed and isn’t recommended. Entering false specifies that only windows opened by script can be closed via close().

dom.disable_image_src_set (Boolean). This option determines whether JavaScript is allowed to change images. Set this to true to enable this feature and false to disable it (recommended). Note – This is the same as the Change images option in Advanced JavaScript Settings.

dom.disable_open_click_delay (Integer). This option specifies the amount of time, in milliseconds, that must be surpassed before a popup window created by JavaScript setInterval() or setTimeout() calls aren’t managed by current Popup Blocker settings. Beneath this threshold existing Popup Blocker settings are applied. By default this is 1000 (1 second).

dom.disable_open_during_load (Boolean). Set this to true to enable Firefox’s built-in pop-up blocker, which disables the loading of much pop-up content on sites – which will mostly be advertisements (it’s worth noting this is not perfect and will also disable many legitimate pop-ups). Should a pop-up be blocked in this way an information bar will appear at the top of the window, from which you can select what action to take. Setting this to false disables the pop-up blocker (Not recommended). Note – This is the same as the Block Popup Windows option in the Content tab.

dom.disable_window_flip (Boolean). This option controls whether JavaScript may be used to bring windows into the foreground/background via focus(). Setting this to true disables such actions, which won’t affect new popups from loading in the foreground, though can force existing ones to remain in the background unless switched to manually. Set this to false to allow the script to determine what happens. Note – This is the same as the Raise or lower windows option in Advanced JavaScript Settings.

dom.disable_window_move_resize (Boolean). This option controls whether JavaScript can be used to move &/or resize windows, whereby setting this to false enables scripts to do this. It would perhaps be best to set this to true, allowing only yourself to resize/move windows. Note – This is the same as the Move or resize existing windows option in Advanced JavaScript Settings.

dom.disable_window_open_feature.close (Boolean). Set this to false to enable the use of scripting to hide the close button of windows, true forces the close button to always be displayed (recommended).

dom.disable_window_open_feature.directories (Boolean). Set this to false to enable the use of scripting to hide the bookmarks toolbar, true prevents the bookmarks toolbar from being hidden in this way.

dom.disable_window_open_feature.location (Boolean). Set this to false to enable the use of scripting to hide the Location (Address) bar, true prevents the Address bar from being hidden.

dom.disable_window_open_feature.menubar (Boolean). Set this to false to enable the use of scripting to hide the Menu bar, true disables the hiding of the Menu bar.

dom.disable_window_open_feature.minimizable (Boolean). Set this to false to enable the use of scripting to disable the minimizing of windows, true enables the minimizing of such windows (recommended).

dom.disable_window_open_feature.resizable (Boolean). Set this to true to enable the use of scripting to hide the close button of windows, false forces the close button to always be displayed (recommended).

dom.disable_window_open_feature.scrollbar (Boolean). Set this to false to enable the use of scripting to hide the Scroll bar in windows, true disables the hiding of the Scroll bar in windows.

dom.disable_window_open_feature.status (Boolean). This option controls whether JavaScript can be used to hide the status bar, whereby setting this to false enables scripts to do this. Set this to true to force the status bar to be displayed at all times. Note – This is the same as the Hide the status bar option in Advanced JavaScript Settings.

dom.disable_window_open_feature.titlebar (Boolean). Set this to false to enable the use of scripting to hide the Title bar of windows, true forces the Title bar to always be displayed.

dom.disable_window_open_feature.toolbar (Boolean). Set this to false to enable the use of scripting to hide the Navigation toolbar, i.e. Back, Forward, etc. buttons, false prevents the hiding of the Navigation toolbar.

dom.disable_window_status_change (Boolean). This option controls whether JavaScript can be used to display custom text in the status bar, e.g. moving the mouse over a hyperlink normally would display where the link points to, though a script could be used to display something else instead. Set this to false to allow such custom status bar text displayed, while true will disable this. Note – This is the same as the Change status bar text option in Advanced JavaScript Settings.

dom.event.contextmenu.enabled (Boolean). This option controls whether JavaScript can be used to alter, or even disable the context menu, e.g. right clicking could be disabled on certain pages. Set this to true if you wish to allow sites to be able to do this, while false ensures scripts can’t be used to alter this functionality. Note – This is the same as the Disable or replace context menus option in Advanced JavaScript Settings.

dom.max_script_run_time (Integer). This specifies the amount of time, in seconds, that a script may run – the default being 5. It’d be recommended you leave this at 5 unless you have a specific reason to change it, in which case -1 allows scripts to run as long as required (& I’d doubt most reading this would need to do that).

dom.popup_maximum (Integer). This value specifies the maximum number of pop-up windows that may be open simultaneously. By default this is set to 20, which no doubt might seem like an excessive amount. Unless you have a particular reason to allow so many to be open at once, it would be a good idea to lower this value (Considering certain sites out there try flooding you with numerous pop-ups). Personally I’ve set this to 5.



Go to next page

Get weekly updates on new
articles, news and contests
in your mail!




-

  TechSpot  The PC Enthusiast Resource    |    News    |    Reviews    |    Guides    |    Product Finder    |    Downloads    |    Drivers    |    Forums    |    Archive    |    RSS Feeds


  Copyright © 1998-2013 TechSpot.com. TechSpot is a registered trademark. All Rights Reserved.

Advertising | About TechSpot