Advanced Hidden Preferences - nohamelin/simple-locale-switcher GitHub Wiki

The following preferences aren't exposed thought the regular UI or the preferences window of Simple Locale Switcher (SLS from now on); they can be useful for a few specific use cases:

The code snippet given for each preference is the one necessary for adding them to a personal user.js file.

applyOnQuit.locale & applyOnQuit.matchOS

user_pref("extensions.simplels.applyOnQuit.locale", "en-US");
user_pref("extensions.simplels.applyOnQuit.matchOS", true);

Both preferences don't exist by default. During all shutdown of the application —including restarts— the existence of each one of them is checked: in the affirmative case, the value found is copied to the related application preference (general.useragent.locale and intl.locale.matchOS, respectively), and then the former preference is reset.

The application of applyOnQuit.locale will set the intl.locale.matchOS preference to false too, to ensure that the new locale will not be ignored. If both preferences are set, the application of applyOnQuit.matchOS will overwrite the previous change.

SLS doesn't show any visual clue about the setting of these preferences.

provider

user_pref("extensions.simplels.provider", "global");

The name of the internal package from which the list of available locales is obtained. This value can be changed to any other chrome package registered as a locale provider via a manifest file. For example, the value simplels lets you to switch between all the languages to which SLS is translated:

Having a custom provider

Packages unknown for the application, or packages without locales associated to them will be ignored.

Note that the User Interface Language window always will pick up the list of available locales from the default global provider, leaving only to the toolbar button respecting it.

Changes to this preference are detected and applied immediately.