mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2026-01-30 23:35:46 +01:00
Import minor changes from groups branch.
This commit is contained in:
@@ -35,12 +35,12 @@ var AddonListener = Class("AddonListener", {
|
||||
onExternalInstall: function (addon, existingAddon, needsRestart) {},
|
||||
onDownloadStarted: listener("download", "started"),
|
||||
onDownloadEnded: listener("download", "complete"),
|
||||
onDownloadCancelled: listener("download", "cancelled"),
|
||||
onDownloadCancelled: listener("download", "canceled"),
|
||||
onDownloadFailed: listener("download", "failed"),
|
||||
onDownloadProgress: function (install) {},
|
||||
onInstallStarted: function (install) {},
|
||||
onInstallEnded: listener("installation", "complete"),
|
||||
onInstallCancelled: listener("installation", "cancelled"),
|
||||
onInstallCancelled: listener("installation", "canceled"),
|
||||
onInstallFailed: listener("installation", "failed")
|
||||
});
|
||||
|
||||
|
||||
@@ -616,12 +616,12 @@ function update(target) {
|
||||
if (desc.value instanceof Class.Property)
|
||||
desc = desc.value.init(k) || desc.value;
|
||||
if (typeof desc.value == "function" && Object.getPrototypeOf(target)) {
|
||||
let func = desc.value;
|
||||
desc.value.__defineGetter__("super", function () Object.getPrototypeOf(target)[k]);
|
||||
desc.value.superapply = function superapply(self, args)
|
||||
let func = desc.value.wrapped || desc.value;
|
||||
func.__defineGetter__("super", function () Object.getPrototypeOf(target)[k]);
|
||||
func.superapply = function superapply(self, args)
|
||||
let (meth = Object.getPrototypeOf(target)[k])
|
||||
meth && meth.apply(self, args);
|
||||
desc.value.supercall = function supercall(self)
|
||||
func.supercall = function supercall(self)
|
||||
func.superapply(self, Array.slice(arguments, 1));
|
||||
}
|
||||
Object.defineProperty(target, k, desc);
|
||||
@@ -663,7 +663,7 @@ function Class() {
|
||||
superclass = args.shift();
|
||||
|
||||
var Constructor = eval(String.replace(<![CDATA[
|
||||
(function constructor() {
|
||||
(function constructor(PARAMS) {
|
||||
var self = Object.create(Constructor.prototype, {
|
||||
constructor: { value: Constructor },
|
||||
});
|
||||
@@ -671,7 +671,9 @@ function Class() {
|
||||
var res = self.init.apply(self, arguments);
|
||||
return res !== undefined ? res : self;
|
||||
})]]>,
|
||||
"constructor", (name || superclass.className).replace(/\W/g, "_")));
|
||||
"constructor", (name || superclass.className).replace(/\W/g, "_"))
|
||||
.replace("PARAMS", /^function .*?\((.*?)\)/.exec(args[0] && args[0].init || Class.prototype.init)[1]));
|
||||
|
||||
Constructor.className = name || superclass.className || superclass.name;
|
||||
|
||||
if ("init" in superclass.prototype)
|
||||
|
||||
@@ -144,6 +144,7 @@ var Overlay = Module("Overlay", {
|
||||
return sandbox;
|
||||
}
|
||||
});
|
||||
modules.plugins = create(modules);
|
||||
modules.modules = modules;
|
||||
window.dactyl = { modules: modules };
|
||||
|
||||
|
||||
@@ -152,6 +152,8 @@ var Storage = Module("Storage", {
|
||||
},
|
||||
|
||||
cleanup: function () {
|
||||
this.saveAll();
|
||||
|
||||
for (let key in keys(this.keys)) {
|
||||
if (this[key].timer)
|
||||
this[key].timer.flush();
|
||||
|
||||
@@ -32,8 +32,8 @@ memoize(this, "Commands", function () {
|
||||
var FailedAssertion = Class("FailedAssertion", ErrorBase);
|
||||
var Point = Struct("x", "y");
|
||||
|
||||
var wrapCallback = function wrapCallback(fn)
|
||||
fn.wrapper = (function wrappedCallback () {
|
||||
var wrapCallback = function wrapCallback(fn) {
|
||||
fn.wrapper = function wrappedCallback () {
|
||||
try {
|
||||
return fn.apply(this, arguments);
|
||||
}
|
||||
@@ -41,7 +41,10 @@ var wrapCallback = function wrapCallback(fn)
|
||||
util.reportError(e);
|
||||
return undefined;
|
||||
}
|
||||
})
|
||||
};
|
||||
fn.wrapper.wrapped = fn;
|
||||
return fn.wrapper;
|
||||
}
|
||||
|
||||
var getAttr = function getAttr(elem, ns, name)
|
||||
elem.hasAttributeNS(ns, name) ? elem.getAttributeNS(ns, name) : null;
|
||||
@@ -1585,6 +1588,8 @@ var Util = Module("Util", XPCOM([Ci.nsIObserver, Ci.nsISupportsWeakReference]),
|
||||
})();
|
||||
},
|
||||
|
||||
wrapCallback: wrapCallback,
|
||||
|
||||
/**
|
||||
* Traps errors in the called function, possibly reporting them.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user