mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2025-12-22 03:07:58 +01:00
Fix bugs yay.
--HG-- branch : groups
This commit is contained in:
@@ -105,6 +105,10 @@ var Browser = Module("browser", XPCOM(Ci.nsISupportsWeakReference, ModuleBase),
|
||||
// only thrown for the current tab, not when another tab changes
|
||||
if (flags & Ci.nsIWebProgressListener.STATE_START) {
|
||||
statusline.progress = 0;
|
||||
while (document.commandDispatcher.focusedWindow == webProgress.DOMWindow
|
||||
&& modes.have(modes.INPUT))
|
||||
modes.pop();
|
||||
|
||||
}
|
||||
else if (flags & Ci.nsIWebProgressListener.STATE_STOP) {
|
||||
// Workaround for bugs 591425 and 606877, dactyl bug #81
|
||||
|
||||
@@ -387,7 +387,7 @@ var Mappings = Module("mappings", {
|
||||
* @param {string} filter The filter string to match.
|
||||
*/
|
||||
list: function (modes, filter, hives) {
|
||||
hives = hives || mappings.userHives;
|
||||
hives = (hives || mappings.userHives).filter(function (h) modes.some(function (m) h.getStack(m).length));
|
||||
|
||||
let modeSign = "";
|
||||
modes.filter(function (m) m.char).forEach(function (m) { modeSign += m.char; });
|
||||
@@ -410,12 +410,12 @@ var Mappings = Module("mappings", {
|
||||
</tr>
|
||||
<col style="min-width: 6em; padding-right: 1em;"/>
|
||||
{
|
||||
template.map(hives, function (hive)
|
||||
template.map(hives, function (hive) let (i = 0)
|
||||
<tr style="height: .5ex;"/> +
|
||||
template.map(maps(hive), function (map)
|
||||
template.map(map.names, function (name, i)
|
||||
template.map(map.names, function (name)
|
||||
<tr>
|
||||
<td highlight="Title">{!i ? hive.name : ""}</td>
|
||||
<td highlight="Title">{!i++ ? hive.name : ""}</td>
|
||||
<td>{modeSign}</td>
|
||||
<td>{name}</td>
|
||||
<td>{map.rhs || map.action.toSource()}</td>
|
||||
|
||||
@@ -1017,7 +1017,7 @@ var Timer = Class("Timer", {
|
||||
|
||||
notify: function (timer, force) {
|
||||
try {
|
||||
if (loaded.util && util.rehashing || typeof util === "undefined" || !force && this.doneAt == 0)
|
||||
if (!loaded || loaded.util && util.rehashing || typeof util === "undefined" || !force && this.doneAt == 0)
|
||||
return;
|
||||
|
||||
this._timer.cancel();
|
||||
|
||||
@@ -80,14 +80,16 @@ var Contexts = Module("contexts", {
|
||||
const contexts = this;
|
||||
this.modules = modules;
|
||||
|
||||
modules.plugins.contexts = {};
|
||||
|
||||
this.groupList = [];
|
||||
this.groupMap = {};
|
||||
this.groupsProto = {};
|
||||
this.hives = {};
|
||||
this.hiveProto = {};
|
||||
|
||||
this.user = this.addGroup("user", "User-defined items", null, true);
|
||||
this.builtin = this.addGroup("builtin", "Builtin items");
|
||||
this.user = this.addGroup("user", "User-defined items", null, true);
|
||||
this.builtinGroups = [this.builtin, this.user];
|
||||
this.builtin.modifiable = false;
|
||||
|
||||
@@ -122,8 +124,8 @@ var Contexts = Module("contexts", {
|
||||
for (let hive in values(this.groupList))
|
||||
util.trapErrors("destroy", hive);
|
||||
|
||||
for (let plugin in values(plugins.contexts))
|
||||
if (plugin.onUnload)
|
||||
for (let [name, plugin] in iter(this.modules.plugins.contexts))
|
||||
if (plugin && "onUnload" in plugin)
|
||||
util.trapErrors("onUnload", plugin);
|
||||
},
|
||||
|
||||
@@ -360,8 +362,9 @@ var Contexts = Module("contexts", {
|
||||
action.macro = util.compileMacro(rhs, true);
|
||||
break;
|
||||
case "-ex":
|
||||
action = function action() commands.execute(action.macro, makeParams(this, arguments),
|
||||
false, null, action.context);
|
||||
action = function action() this.modules.commands
|
||||
.execute(action.macro, makeParams(this, arguments),
|
||||
false, null, action.context);
|
||||
action.macro = util.compileMacro(rhs, true);
|
||||
action.context = this.context && update({}, this.context);
|
||||
break;
|
||||
|
||||
@@ -296,8 +296,10 @@ var Overlay = Module("Overlay", {
|
||||
|
||||
frob("init");
|
||||
defineModule.modules.forEach(function ({ lazyInit, constructor: { className } }) {
|
||||
if (!lazyInit)
|
||||
if (!lazyInit) {
|
||||
frob(className);
|
||||
modules[className] = modules[className];
|
||||
}
|
||||
else
|
||||
modules.__defineGetter__(className, function () {
|
||||
delete modules[className];
|
||||
|
||||
Reference in New Issue
Block a user