diff --git a/common/content/events.js b/common/content/events.js index 3ae757c9..0bb8fc26 100644 --- a/common/content/events.js +++ b/common/content/events.js @@ -711,7 +711,10 @@ var Events = Module("events", { return Events.kill(event); } - if (!this.processor) { + if (this.processor) + events.dbg("ON KEYPRESS " + key + " processor: " + this.processor, + event.originalTarget instanceof Element ? event.originalTarget : String(event.originalTarget)); + else { let mode = modes.getStack(0); if (event.dactylMode) mode = Modes.StackElement(event.dactylMode); diff --git a/common/modules/sanitizer.jsm b/common/modules/sanitizer.jsm index 2e0ccda6..8f08a127 100644 --- a/common/modules/sanitizer.jsm +++ b/common/modules/sanitizer.jsm @@ -378,12 +378,12 @@ var Sanitizer = Module("sanitizer", XPCOM([Ci.nsIObserver, Ci.nsISupportsWeakRef UNPERMS: Class.Memoize(function () iter(this.PERMS).map(Array.reverse).toObject()), COMMANDS: { - unset: /*L*/"Unset", - allow: /*L*/"Allowed", - deny: /*L*/"Denied", - session: /*L*/"Allowed for the current session", - list: /*L*/"List all cookies for domain", - clear: /*L*/"Clear all cookies for domain", + "unset": /*L*/"Unset", + "allow": /*L*/"Allowed", + "deny": /*L*/"Denied", + "session": /*L*/"Allowed for the current session", + "list": /*L*/"List all cookies for domain", + "clear": /*L*/"Clear all cookies for domain", "clear-persistent": /*L*/"Clear all persistent cookies for domain", "clear-session": /*L*/"Clear all session cookies for domain" }, diff --git a/common/modules/storage.jsm b/common/modules/storage.jsm index 359c0394..5ff94561 100644 --- a/common/modules/storage.jsm +++ b/common/modules/storage.jsm @@ -6,7 +6,7 @@ defineModule("storage", { exports: ["File", "Storage", "storage"], - require: ["services", "util"] + require: ["promises", "services", "util"] }); lazyRequire("config", ["config"]); @@ -227,16 +227,18 @@ var Storage = Module("Storage", { } }, - _saveData: function saveData(obj) { + _saveData: promises.task(function saveData(obj) { if (obj.privateData && storage.privateMode) return; if (obj.store && storage.infoPath) { var { path } = storage.infoPath.child(obj.name); - return OS.File.writeAtomic( + yield OS.File.makeDir(storage.infoPath.path, + { ignoreExisting: true }); + yield OS.File.writeAtomic( path, obj.serial, { tmpPath: path + ".part" }); } - }, + }), storeForSession: function storeForSession(key, val) { if (val)