mozilla
Your Search Results

    preferences/service

    Unstable

    Access the Preferences system in Firefox. This enables add-ons to get and set system-wide settings. These are the same preferences that are exposed to users in the about:config page.
     
    preferences/service gives you full access to the preferences system. You can also use the simple-prefs module to access just the preferences for your own add-on and expose them to the user in the Add-on Manager.

    Globals

    Functions

    set(name, value)

    Sets the application preference name to value.

    Parameters

    name : string
    Preference name.

    value : string,number,boolean
    Preference value.

    Example:

    var name = "extensions.checkCompatibility.nightly";
    require("sdk/preferences/service").set(name, false);

    get(name, defaultValue)

    Gets the application preference name.

    Parameters

    name : string

    defaultValue : string,number,boolean
    Preference value.

    Returns

    string,number,boolean : Preference value, returns defaultValue if no preference is set, returns undefined if defaultValue is not provided.

    Example:

    var name = "extensions.checkCompatibility.nightly";
    var nightlyCompatChk = require("sdk/preferences/service").get(name);

    has(name)

    Parameters

    name : string
    Preference name.

    Returns

    boolean : Returns whether or not the application preference name exists.

    defaultValue

    Example:

    var name = "extensions.checkCompatibility.nightly";
    if (require("sdk/preferences/service").has(name)) {
      // ...
    }

    keys(root)

    Parameters

    root : string
    Preference root name.

    Returns

    array : Returns an array of strings representing the child preferences of the root of this branch.

    isSet(name)

    Parameters

    name : string
    Preference name.

    Returns

    boolean : Returns whether or not the application preference name both exists and has been set to a non-default value by the user (or a program acting on the user's behalf).

    Example:

    var name = "extensions.checkCompatibility.nightly";
    if (require("sdk/preferences/service").isSet(name)) {
      // ...
    }

    reset(name)

    Clears a non-default, user-set value from the application preference name. If no user-set value is defined on name, the function does nothing. If no default value exists the preference will cease to exist.

    Parameters

    name : string
    Preference name.

    Example:

    var name = "extensions.checkCompatibility.nightly";
    require("sdk/preferences/service").reset(name);

    getLocalized(name, defaultValue)

    Gets the localized value for an application preference name.

    Parameters

    name : string

    defaultValue : string
    Preference value.

    Returns

    string : Localized preference value, returns a default value if no preference is set. Some preferences refer to a properties file. So that prefs.get returns the properties file URL whereas prefs.getLocalized returns the value defined in the properties file.

    Example:

    var prefs = require("sdk/preferences/service");
    var name = "general.useragent.locale";
    prefs.get(name); // is equal to "chrome://global/locale/intl.properties"
    prefs.getLocalized(name) // is equal to "en-US"

    setLocalized(name, value)

    Sets the localized application preference name to value.

    Parameters

    name : string
    Preference name.

    value : string
    Preference value, a URL to a properties file

    Example:

    require("sdk/preferences/service").set("general.useragent.locale",
                                       "chrome://global/locale/intl.properties");

    Example: Setting Global Preferences

    var { get, set } = require("sdk/preferences/service");
    var { when: unload } = require("sdk/system/unload");
    
    var oldValue = get("browser.urlbar.autoFill");
    set("browser.urlbar.autoFill", true);
    
    // By AMO policy global preferences must be changed back to their original value
    unload(function() {
      set("browser.urlbar.autoFill", oldValue);
    });
    

    Document Tags and Contributors

    Contributors to this page: wbamberg, evold
    Last updated by: evold,
    Hide Sidebar