From 6a781ad9d3ebb0c7db0fb4f753bc3a2f13cbc2b5 Mon Sep 17 00:00:00 2001 From: nightwing Date: Fri, 13 Apr 2012 22:14:45 +0400 Subject: [PATCH] show crosshair cursor when alt is pressed --- lib/ace/multi_select.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/lib/ace/multi_select.js b/lib/ace/multi_select.js index 716bc0fc..b1104775 100644 --- a/lib/ace/multi_select.js +++ b/lib/ace/multi_select.js @@ -623,6 +623,33 @@ function MultiSelect(editor) { editor.on("mousedown", onMouseDown); editor.commands.addCommands(exports.commands.defaultCommands); + + addAltCursorListeners(editor); +} + +function addAltCursorListeners(editor){ + var el = editor.textInput.getElement(); + var altCursor = false; + var contentEl = editor.renderer.content; + el.addEventListener("keydown", function(e) { + if (e.keyCode == 18 && !(e.ctrlKey || e.shiftKey || e.metaKey)) { + if (!altCursor) { + contentEl.style.cursor = "crosshair"; + altCursor = true; + } + } else if (altCursor) { + contentEl.style.cursor = ""; + } + }); + + el.addEventListener("keyup", reset); + el.addEventListener("blur", reset); + function reset() { + if (altCursor) { + contentEl.style.cursor = ""; + altCursor = false; + } + } } exports.MultiSelect = MultiSelect;