From a399d1440aa080c4a6c8dc7356b82cf0b41d8a8d Mon Sep 17 00:00:00 2001 From: nightwing Date: Sat, 13 Apr 2013 16:49:26 +0400 Subject: [PATCH] cleanup --- lib/ace/autocomplete.js | 35 +++++++++++++++++++---------------- lib/ace/autocomplete/popup.js | 12 ++++++------ lib/ace/ext/language_tools.js | 4 ++-- 3 files changed, 27 insertions(+), 24 deletions(-) diff --git a/lib/ace/autocomplete.js b/lib/ace/autocomplete.js index 77f0f5ae..d6ec8641 100644 --- a/lib/ace/autocomplete.js +++ b/lib/ace/autocomplete.js @@ -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); diff --git a/lib/ace/autocomplete/popup.js b/lib/ace/autocomplete/popup.js index 8fe2eb56..374f4334 100644 --- a/lib/ace/autocomplete/popup.js +++ b/lib/ace/autocomplete/popup.js @@ -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"); diff --git a/lib/ace/ext/language_tools.js b/lib/ace/ext/language_tools.js index 510fb01f..3aa000f1 100644 --- a/lib/ace/ext/language_tools.js +++ b/lib/ace/ext/language_tools.js @@ -36,9 +36,9 @@ var Autocomplete = require("../autocomplete").Autocomplete; var completers = []; exports.addCompleter = function(completer) { - completers.push(completer); + completers.push(completer); }; - +exports.completers = {} }); \ No newline at end of file