Prior to this, if getLevelOfControl was called before the setting was defined to the EPM, an
exception was thrown. This fixes it by returning a level of control of "not_controllable"
if the setting has not yet been defined.
MozReview-Commit-ID: 96jXLoJlUI
This introduces browser.browserSettings.homepageOverride and browser.browserSettings.newTabPageOverride
which will return the values of the overridden home page and the overridden new tab page.
These browserSettings are read-only.
MozReview-Commit-ID: A9vJP2QIaoA
Prior to this change the code that automatically updates prefs when an add-on is disabled, reenabled or uninstalled
could overwrite changes to a pref that were made manually by a user, either via the UI or via about:config.
This change introduces a check into each of those actions that verifies that the current state of the pref
is what we expect it to be based on the data we have about add-on settings, and if it is not then we
do not change the pref.
MozReview-Commit-ID: 5DpEg2fGwIW