mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2026-04-10 17:23:32 +02:00
Fix error trapping in events.feedkeys.
--HG-- branch : bootstrapped
This commit is contained in:
@@ -410,6 +410,8 @@ var Dactyl = Module("dactyl", XPCOM(Ci.nsISupportsWeakReference, ModuleBase), {
|
|||||||
util.dump(elem);
|
util.dump(elem);
|
||||||
util.reportError(e);
|
util.reportError(e);
|
||||||
}
|
}
|
||||||
|
if (services.focus.focusedWindow == null)
|
||||||
|
util.dumpStack("focusedWindow == null");
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -455,6 +457,8 @@ var Dactyl = Module("dactyl", XPCOM(Ci.nsISupportsWeakReference, ModuleBase), {
|
|||||||
|
|
||||||
if (elem && elem != dactyl.focusedElement)
|
if (elem && elem != dactyl.focusedElement)
|
||||||
dactyl.focus(elem);
|
dactyl.focus(elem);
|
||||||
|
if (services.focus.focusedWindow == null)
|
||||||
|
util.dumpStack("focusedWindow == null");
|
||||||
},
|
},
|
||||||
|
|
||||||
/** @property {Element} The currently focused element. */
|
/** @property {Element} The currently focused element. */
|
||||||
|
|||||||
@@ -255,15 +255,15 @@ var Events = Module("events", {
|
|||||||
* @returns {boolean}
|
* @returns {boolean}
|
||||||
*/
|
*/
|
||||||
feedkeys: function (keys, noremap, quiet, mode) {
|
feedkeys: function (keys, noremap, quiet, mode) {
|
||||||
|
|
||||||
let wasFeeding = this.feedingKeys;
|
|
||||||
this.feedingKeys = true;
|
|
||||||
this.duringFeed = this.duringFeed || [];
|
|
||||||
let wasQuiet = commandline.quiet;
|
|
||||||
if (quiet)
|
|
||||||
commandline.quiet = quiet;
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
var wasFeeding = this.feedingKeys;
|
||||||
|
this.feedingKeys = true;
|
||||||
|
this.duringFeed = this.duringFeed || [];
|
||||||
|
|
||||||
|
var wasQuiet = commandline.quiet;
|
||||||
|
if (quiet)
|
||||||
|
commandline.quiet = quiet;
|
||||||
|
|
||||||
util.threadYield(1, true);
|
util.threadYield(1, true);
|
||||||
|
|
||||||
for (let [, evt_obj] in Iterator(events.fromString(keys))) {
|
for (let [, evt_obj] in Iterator(events.fromString(keys))) {
|
||||||
|
|||||||
@@ -355,13 +355,15 @@ var Util = Module("Util", XPCOM([Ci.nsIObserver, Ci.nsISupportsWeakReference]),
|
|||||||
while (!(node instanceof Ci.nsIDOMElement) && node.parentNode)
|
while (!(node instanceof Ci.nsIDOMElement) && node.parentNode)
|
||||||
node = node.parentNode;
|
node = node.parentNode;
|
||||||
try {
|
try {
|
||||||
return node.ownerDocument.defaultView.getComputedStyle(node, null);
|
var res = node.ownerDocument.defaultView.getComputedStyle(node, null);
|
||||||
}
|
}
|
||||||
catch (e) {
|
catch (e) {}
|
||||||
util.reportError(e);
|
if (res == null) {
|
||||||
util.dump(String(node));
|
util.dumpStack("Computed style is null: " + node);
|
||||||
|
Cu.reportError(Error("Computed style is null: " + node));
|
||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
|
return res;
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -484,7 +486,7 @@ var Util = Module("Util", XPCOM([Ci.nsIObserver, Ci.nsISupportsWeakReference]),
|
|||||||
*/
|
*/
|
||||||
dumpStack: function dumpStack(msg, frames) {
|
dumpStack: function dumpStack(msg, frames) {
|
||||||
let stack = util.stackLines(Error().stack);
|
let stack = util.stackLines(Error().stack);
|
||||||
stack = stack.slice(2, 2 + (frames || 0)).join("\n");
|
stack = stack.slice(2, 2 + (frames || stack.length)).join("\n");
|
||||||
util.dump((arguments.length == 0 ? "Stack" : msg) + "\n" + stack + "\n");
|
util.dump((arguments.length == 0 ? "Stack" : msg) + "\n" + stack + "\n");
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user