jtackaberry / nosquint

NoSquint is a Firefox add-on that allows you to adjust the text-only and full-page zoom levels as well as color settings both globally (for all sites) and per site.
https://urandom.ca/nosquint/
The Unlicense
40 stars 16 forks source link

NoSquint install changes settings in about:config - Are these restored on removing NoSquint? #62

Closed VanguardLH closed 11 years ago

VanguardLH commented 11 years ago

When NoSquint is installed, some settings in about:config are changed. For example,

Browser.zoom.siteSpecific

is changed from True to False. This is needed for NoSquint to usurp the zoom magic (with Site Preferences feature) already present in Firefox. I'm wondering what happens if the user later decides to remove the NoSquint add-on. Are these about:config settings restored to their prior values? If not, why would the user be expected to know what all changes were made by NoSquint and to what values they should be reverted upon removing the NoSquint add-on?

Mozilla does not cleanup the prefs.js preferences file when add-ons are removed. That means settings for add-ons remain in there indefinitely until the user does manual cleanup or creates a new profile. The removal of an add-on should NOT result in disabling features supposedly built into the Firefox product. If the user removes the NoSquint add-on, they should still get the zoom magic and Site Preferences feature included in Firefox.

I use NoSquint to give me a default zoom level (for text only, not for the page) that is larger than the 100% that Firefox assumes. I could use Firefox's zoom to change the zoom level at each site and use Firefox's Site Preferences to remember that zoom level but that won't change the initial or default zoom level. NoSquint's lets me change the default zoom level. NoSquint duplicates and expands upon Firefox's Site Preferences feature. If I decide having to change the zoom level (for text) on every site that I visit is okay instead of assuming a default, and because NoSquint is duplicating the Site Preferences feature, I may decide to uninstall NoSquint. However, when I remove NoSquint, I really do want to go back to using Firefox's zoom AND Site Preferences features.

My guess is that removing NoSquint will result in also losing Firefox's Site Preferences feature of remembering the zoom level at each visited site. That's because removing NoSquint will leave the Browser.zoom.siteSpecific setting in about:config set to False.

If add-ons are going to change about:config settings from their defaults, and because Firefox's "Remove" feature doesn't do any cleanup of config remnants from the removed add-ons nor any reversion back to prior setting values, a cleanup utility from the ad-on vendor seems mandatory so that users are penalized for using but then later removing that vendor's add-on.

jtackaberry commented 11 years ago

I think you could have answered your question in much less time by experimenting with uninstalling or disabling NoSquint. :)

Yes, when NoSquint is uninstalled or disabled, it will ask the user if the default behaviour should be restored. (For a couple different reasons, this seemed safest than just assuming siteSpecific should be restored to the default of True.)

What you would lose by uninstalling NoSquint is any existing zoom levels, even though Firefox (nowadays) has its own per-site zoom levels. This is because NoSquint's notion of a site may well be different than Firefox's due to the exceptions mechanism.