From dcdcd815840f1057b146eaab6f0b415dd41dff2a Mon Sep 17 00:00:00 2001 From: Garen Torikian Date: Sun, 23 Dec 2012 01:18:40 -0800 Subject: [PATCH] Fix it up --- lib/ace/autocomplete.js | 8 +++++--- lib/ace/editor.js | 18 +----------------- 2 files changed, 6 insertions(+), 20 deletions(-) diff --git a/lib/ace/autocomplete.js b/lib/ace/autocomplete.js index 47b38d7a..8584b7a4 100644 --- a/lib/ace/autocomplete.js +++ b/lib/ace/autocomplete.js @@ -193,7 +193,8 @@ var Autocomplete = function() { var max = this.popup.session.getLength() - 1; var choices = this.popup.container.getElementsByClassName("ace_text-layer")[0].childNodes; - dom.removeCssClass(choices[row], "autocomplete_selected"); + if (choices[row]) + dom.removeCssClass(choices[row], "autocomplete_selected"); switch(where) { case "up": row = row < 0 ? max : row-1; break; @@ -202,7 +203,8 @@ var Autocomplete = function() { case "end": row = max; break } - dom.addCssClass(choices[row], "autocomplete_selected"); + if (choices[row]) + dom.addCssClass(choices[row], "autocomplete_selected"); this.popup.setRow(row); }; @@ -326,7 +328,7 @@ var Autocomplete = function() { //var MultiSelect = require("ace/multi_select").MultiSelect; //new MultiSelect(editor); - editor.session.setUndoManager(new UndoManager()); + //editor.session.setUndoManager(new UndoManager()); editor.setHighlightActiveLine(false); editor.setShowPrintMargin(false); diff --git a/lib/ace/editor.js b/lib/ace/editor.js index 08380311..92d218f6 100644 --- a/lib/ace/editor.js +++ b/lib/ace/editor.js @@ -90,7 +90,7 @@ var Editor = function(renderer, session) { }); this.setSession(session || new EditSession("")); - this.autocomplete = new Autocomplete(this); + Autocomplete.addTo(this); config.resetOptions(this); config._emit("editor", this); }; @@ -473,26 +473,10 @@ var Editor = function(renderer, session) { this._emit("change", e); - var source = this.session.getValue(); - var _self = this; - - setTimeout(function() { - var cursor = _self.getCursorPosition(); - var line = _self.session.getLine(cursor.row); - - _self.autocomplete.activate(cursor.row, cursor.column); - _self.autocomplete.suggest(name); - }, 0); - // update cursor because tab characters can influence the cursor position this.$cursorChange(); }; - this.$hideautocomplete = function() { - if (this.autocomplete.isActive()) - this.autocomplete.deactivate(); - }; - this.onTokenizerUpdate = function(e) { var rows = e.data; this.renderer.updateLines(rows.first, rows.last);