diff --git a/lib/ace/mouse/default_handlers.js b/lib/ace/mouse/default_handlers.js index 7bb701a8..e7a31540 100644 --- a/lib/ace/mouse/default_handlers.js +++ b/lib/ace/mouse/default_handlers.js @@ -116,6 +116,7 @@ function DefaultHandlers(mouseHandler) { else if (!this.$clickSelection) { editor.selection.moveToPosition(pos); } + this.select(); }.bind(this), 0); if (editor.renderer.scroller.setCapture) { editor.renderer.scroller.setCapture(); diff --git a/lib/ace/mouse/mouse_handler_test.js b/lib/ace/mouse/mouse_handler_test.js index 96374d71..571acdac 100644 --- a/lib/ace/mouse/mouse_handler_test.js +++ b/lib/ace/mouse/mouse_handler_test.js @@ -58,15 +58,17 @@ module.exports = { next(); }, - "test: double tap. issue #956" : function() { + "test: double tap. issue #956" : function(done) { // mouse up fired immediately after mouse down var target = this.editor.renderer.getMouseEventTarget(); target.dispatchEvent(MouseEvent("down", {x: 1, y: 1})); target.dispatchEvent(MouseEvent("up", {x: 1, y: 1})); target.dispatchEvent(MouseEvent("down", {x: 1, y: 1, detail: 2})); target.dispatchEvent(MouseEvent("up", {x: 1, y: 1, detail: 2})); - - assert.equal(this.editor.getSelectedText(), "Juhu"); + setTimeout(function() { + assert.equal(this.editor.getSelectedText(), "Juhu"); + done(); + }.bind(this)); } }; diff --git a/lib/ace/test/all_browser.js b/lib/ace/test/all_browser.js index db56517c..3b7bf5d9 100644 --- a/lib/ace/test/all_browser.js +++ b/lib/ace/test/all_browser.js @@ -44,6 +44,7 @@ var testNames = [ "ace/mode/folding/xml_test", "ace/mode/folding/coffee_test", "ace/multi_select_test", + "ace/mouse/mouse_handler_test", "ace/occur_test", "ace/range_test", "ace/range_list_test",