This commit is contained in:
nightwing 2013-04-13 16:49:26 +04:00
commit a399d1440a
3 changed files with 27 additions and 24 deletions

View file

@ -85,7 +85,7 @@ var Autocomplete = function() {
this.changeListener = function(e) {
if (this.editor.completer.activated)
Autocomplete.startCommand.exec(this.editor);
this.complete(this.editor);
else
this.detach();
};
@ -136,14 +136,17 @@ var Autocomplete = function() {
this.commands = {
"Up": function(editor) { editor.completer.goTo("up"); },
"Down": function(editor) { editor.completer.goTo("down"); },
"Ctrl-Up": function(editor) { editor.completer.goTo("start"); },
"Ctrl-Down": function(editor) { editor.completer.goTo("end"); },
"Ctrl-Up|Ctrl-Home": function(editor) { editor.completer.goTo("start"); },
"Ctrl-Down|Ctrl-End": function(editor) { editor.completer.goTo("end"); },
"Esc": function(editor) { editor.completer.detach(); },
"Space": function(editor) { editor.completer.detach(); editor.insert(" ");},
"Return": function(editor) { editor.completer.insertMatch(); },
"Shift-Return": function(editor) { editor.completer.insertMatch(true); },
"Tab": function(editor) { editor.completer.insertMatch(); }
"Tab": function(editor) { editor.completer.insertMatch(); },
"PageUp": function(editor) { editor.completer.popup.gotoPageDown(); },
"PageDown": function(editor) { editor.completer.popup.gotoPageUp(); }
};
this.complete = function(editor) {
@ -163,20 +166,20 @@ var Autocomplete = function() {
editor.on("blur", this.$blurListener);
editor.on("mousedown", this.$mousedownListener);
worker.attachToDocument(editor.session.getDocument(), {cursor: editor.getCursorPosition(), keywords: editor.session.getMode().getKeywords()}, true);
//worker.attachToDocument(editor.session.getDocument(), {cursor: editor.getCursorPosition(), keywords: editor.session.getMode().getKeywords()}, true);
worker.on("complete", function(data) {
var matches = data.data.matches;
if (matches.length) {
_self.completions = new FilteredList(matches);
_self.completions.setFilter("a");
_self.openPopup(editor);
}
else {
_self.detach();
}
});
var matches = data.data.matches;
if (matches.length) {
_self.completions = new FilteredList(matches);
_self.completions.setFilter("a");
_self.openPopup(editor);
}
else {
_self.detach();
}
};
}).call(Autocomplete.prototype);

View file

@ -31,11 +31,11 @@
define(function(require, exports, module) {
"use strict";
var EditSession = require("./edit_session").EditSession;
var Renderer = require("./virtual_renderer").VirtualRenderer;
var event = require("./lib/event");
var lang = require("./lib/lang");
var dom = require("./lib/dom");
var EditSession = require("../edit_session").EditSession;
var Renderer = require("../virtual_renderer").VirtualRenderer;
var event = require("../lib/event");
var lang = require("../lib/lang");
var dom = require("../lib/dom");
var $singleLineEditor = function(el) {
var renderer = new Renderer(el);
@ -108,7 +108,7 @@ var AcePopup = function(parentNode) {
var el = dom.createElement("div");
var popup = new $singleLineEditor(el);
if (parentNode)
parentNode.appendChild(el);
parentNode.appendChild(el);
el.style.display = "none";
popup.renderer.content.style.cursor = "default";
popup.renderer.setStyle("ace_autocomplete");

View file

@ -36,9 +36,9 @@ var Autocomplete = require("../autocomplete").Autocomplete;
var completers = [];
exports.addCompleter = function(completer) {
completers.push(completer);
completers.push(completer);
};
exports.completers = {}
});