Thu, 15 Jan 2015 21:03:48 +0100
Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
4 * You can obtain one at http://mozilla.org/MPL/2.0/.
5 */
7 [JSImplementation="@mozilla.org/settingsLock;1",
8 Pref="dom.mozSettings.enabled"]
9 interface SettingsLock {
10 // Whether this lock is invalid
11 readonly attribute boolean closed;
13 // Contains a JSON object with name/value pairs to be set.
14 DOMRequest set(object settings);
16 // Result contains the value of the setting.
17 DOMRequest get(DOMString name);
19 DOMRequest clear();
20 };
22 dictionary SettingChange {
23 DOMString settingName;
24 DOMString settingValue;
25 };
27 callback SettingChangeCallback = void (SettingChange setting);
29 [JSImplementation="@mozilla.org/settingsManager;1",
30 NavigatorProperty="mozSettings",
31 Pref="dom.mozSettings.enabled"]
32 interface SettingsManager : EventTarget {
33 SettingsLock createLock();
35 void addObserver(DOMString name, SettingChangeCallback callback);
36 void removeObserver(DOMString name, SettingChangeCallback callback);
38 attribute EventHandler onsettingchange;
39 };