1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2025-12-21 14:18:00 +01:00

Fix finder.

--HG--
branch : key-processing
This commit is contained in:
Kris Maglione
2011-01-26 03:02:05 -05:00
parent c284e1ced8
commit 7bf57e2355
4 changed files with 26 additions and 27 deletions

View File

@@ -381,7 +381,6 @@ var CommandMode = Class("CommandMode", {
}
},
autocomplete: false,
keepCommand: false,
onKeyPress: function onKeyPress(event) {
@@ -392,9 +391,6 @@ var CommandMode = Class("CommandMode", {
return true; /* Pass event */
},
complete: function (context) {
},
onCancel: function (value) {
},

View File

@@ -818,7 +818,7 @@ memoize(Class.prototype, "closure", function () {
iter(properties(this), properties(this, true)).forEach(function (k) {
if (!this.__lookupGetter__(k) && callable(this[k]))
closure[k] = closure(this[k]);
else if (!(k in closure || k in Object.prototype))
else if (!(k in closure))
Object.defineProperty(closure, k, {
get: function get_proxy() self[k],
set: function set_proxy(val) self[k] = val,

View File

@@ -22,19 +22,18 @@ var RangeFinder = Module("rangefinder", {
get commandline() this.modules.commandline,
get modes() this.modules.modes,
get options() this.modules.options(),
get options() this.modules.options,
get rangeFind() modules.buffer.localStore.rangeFind,
set rangeFind(val) modules.buffer.localStore.rangeFind = val
}),
openPrompt: function (mode) {
let backwards = mode == this.modes.FIND_BACKWARD;
this.CommandMode(mode).open(backwards ? "?" : "/");
this.CommandMode(mode).open();
if (this.rangeFind && this.rangeFind.window.get() === this.window)
this.rangeFind.reset();
this.find("", backwards);
this.find("", mode === this.modes.FIND_BACKWARD);
},
bootstrap: function (str, backward) {
@@ -121,8 +120,12 @@ var RangeFinder = Module("rangefinder", {
this.rangeFind.focus();
},
// Called when the user types a key in the find dialog. Triggers a find attempt if 'incfind' is set
onKeyPress: function (command) {
onCancel: function () {
if (this.rangeFind)
this.rangeFind.cancel();
},
onChange: function (command) {
if (this.options["incfind"]) {
command = this.bootstrap(command);
this.rangeFind.find(command);
@@ -140,13 +143,6 @@ var RangeFinder = Module("rangefinder", {
this.rangeFind.focus();
},
// Called when the find is canceled - for example if someone presses
// escape while typing a find
onCancel: function () {
if (this.rangeFind)
this.rangeFind.cancel();
},
/**
* Highlights all occurrences of the last sought for string in the
* current buffer.
@@ -165,12 +161,12 @@ var RangeFinder = Module("rangefinder", {
}
}, {
}, {
/* Must come before commandline. */
modes: function (dactyl, modules, window) {
const { modes } = modules;
const { commandline, modes } = modules;
modes.addMode("FIND", {
extended: true,
description: "Find mode, active when typing search input",
bases: [modes.COMMAND_LINE],
input: true
});
modes.addMode("FIND_FORWARD", {
@@ -194,14 +190,19 @@ var RangeFinder = Module("rangefinder", {
{ argCount: "0" });
},
commandline: function (dactyl, modules, window) {
this.CommandMode = modules.CommandMode("CommandFindMode", {
this.CommandMode = Class("CommandFindMode", modules.CommandMode, {
init: function init(mode) {
this.mode = mode;
init.supercall(this);
},
historyKey: "find",
onCancel: rangefinder.closure.onCancel,
onChange: rangefinder.closure.onKeyPress,
onSubmit: rangefinder.closure.onSubmit
get prompt() this.mode === modules.modes.FIND_BACKWARD ? "?" : "/",
onCancel: this.closure.onCancel,
onChange: this.closure.onChange,
onSubmit: this.closure.onSubmit
});
},
mappings: function (dactyl, modules, window) {

View File

@@ -204,12 +204,14 @@ var Overlay = Module("Overlay", {
modules.loaded = loaded;
function init(module) {
let name = module.constructor.className;
function init(func, mod)
function () defineModule.time(module.className || module.constructor.className, mod,
func, module,
func, modules[name],
modules.dactyl, modules, window);
set.add(loaded, module.constructor.className);
set.add(loaded, name);
for (let [mod, func] in Iterator(module.INIT)) {
if (mod in loaded)
init(func, mod)();
@@ -241,7 +243,7 @@ var Overlay = Module("Overlay", {
defineModule.loadLog.push("Load" + (isString(prereq) ? " " + prereq + " dependency: " : ": ") + module.className);
if (frame && frame.filename)
defineModule.loadLog.push(" from: " + frame.filename + ":" + frame.lineNumber);
defineModule.loadLog.push(" from: " + frame.filename.replace(/.* -> /, "") + ":" + frame.lineNumber);
delete modules[module.className];
modules[module.className] = defineModule.time(module.className, "init", module);