1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2026-02-14 14:55:51 +01:00

Import part of top patch in queue: Add no-op option hive for plugin API reasons, cleanup some related code.

This commit is contained in:
Kris Maglione
2011-08-16 21:17:52 -04:00
parent 01fd946df1
commit 1ad3fdf195
7 changed files with 52 additions and 20 deletions

View File

@@ -154,13 +154,9 @@ var AutoCommands = Module("autocommands", {
else
var { uri, doc } = buffer;
let baseArgs = update({ doc: doc }, arguments[1]);
event = event.toLowerCase();
for (let hive in values(this.matchingHives(uri, doc))) {
let args = update({},
hive.argsExtra(baseArgs),
arguments[1]);
let args = hive.makeArgs(doc, null, arguments[1]);
for (let autoCmd in values(hive._store))
if (autoCmd.eventName === event && autoCmd.filter(uri, doc)) {

View File

@@ -463,7 +463,10 @@ var Buffer = Module("buffer", {
else
flags = services.focus.FLAG_SHOWRING;
if (!elem.dactylHadFocus && elem.value && elem.selectionStart == elem.selectionEnd)
if (!elem.dactylHadFocus && elem.value &&
elem instanceof HTMLInputElement &&
elem.selectionStart != null &&
elem.selectionStart == elem.selectionEnd)
elem.selectionStart = elem.selectionEnd = elem.value.length;
dactyl.focus(elem, flags);

View File

@@ -1684,18 +1684,23 @@ var Events = Module("events", {
get pass() (this.flush(), this.pass),
keepQuotes: true,
setter: function (values) {
values.forEach(function (filter) {
parse: function parse() {
let value = parse.superapply(this, arguments);
value.forEach(function (filter) {
let vals = Option.splitList(filter.result);
filter.keys = events.fromString(vals[0]).map(events.closure.toString);
filter.commandKeys = vals.slice(1).map(events.closure.canonicalKeys);
filter.inputKeys = filter.commandKeys.filter(bind("test", /^<[ACM]-/));
});
return value;
},
keepQuotes: true,
setter: function (value) {
this.flush();
return values;
return value;
}
});

View File

@@ -119,12 +119,9 @@ var Map = Class("Map", {
.map(function ([i, prop]) [prop, this[i]], arguments)
.toObject();
let orig = args;
args = update({
context: contexts.context,
doc: this.hive.group.lastDocument
}, args);
update(args, this.hive.argsExtra(args), orig);
args = this.hive.makeArgs(this.hive.group.lastDocument,
contexts.context,
args);
let self = this;
function repeat() self.action(args)