1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2025-12-28 03:42:30 +01:00

Fix missing base mode in keydown/keyup blocking. Closes issue #615.

--HG--
extra : rebase_source : d76a48e12e8a6f68a4adcb633008af786a4d826d
This commit is contained in:
Kris Maglione
2011-07-31 12:45:05 -04:00
parent b55b7445ab
commit 465e133cf7
3 changed files with 5 additions and 5 deletions

View File

@@ -19,7 +19,7 @@ var ProcessorStack = Class("ProcessorStack", {
events.dbg("STACK " + mode);
let main = { __proto__: mode.main, params: mode.params };
this.modes = array([mode.params.keyModes, main, mode.main.allBases]).flatten().compact();
this.modes = array([mode.params.keyModes, main, mode.main.allBases.slice(1)]).flatten().compact();
if (builtin)
hives = hives.filter(function (h) h.name === "builtin");

View File

@@ -698,7 +698,7 @@ var Mappings = Module("mappings", {
iterate: function (args, mainOnly) {
let modes = [this.getMode(args)];
if (!mainOnly)
modes = modes.concat(modes[0].allBases);
modes = modes[0].allBases;
let seen = {};
// Bloody hell. --Kris

View File

@@ -328,7 +328,7 @@ var Modes = Module("modes", {
return;
let msg = null;
if (options.get("showmode").getKey([this.main].concat(this.main.allBases), false))
if (options.get("showmode").getKey(this.main.allBases, false))
msg = this._getModeMessage();
if (msg || loaded.commandline)
@@ -504,10 +504,10 @@ var Modes = Module("modes", {
displayName: Class.memoize(function () this.name.split("_").map(util.capitalize).join(" ")),
isinstance: function isinstance(obj)
this === obj || this.allBases.indexOf(obj) >= 0 || callable(obj) && this instanceof obj,
this.allBases.indexOf(obj) >= 0 || callable(obj) && this instanceof obj,
allBases: Class.memoize(function () {
let seen = {}, res = [], queue = this.bases.slice();
let seen = {}, res = [], queue = [this].concat(this.bases);
for (let mode in array.iterValues(queue))
if (!Set.add(seen, mode)) {
res.push(mode);