ace-rails-ap 4.0.1 → 4.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/ace/rails/version.rb +1 -1
- data/vendor/assets/javascripts/ace/ace.js +187 -175
- data/vendor/assets/javascripts/ace/ext-chromevox.js +5 -5
- data/vendor/assets/javascripts/ace/ext-emmet.js +4 -5
- data/vendor/assets/javascripts/ace/ext-keybinding_menu.js +1 -1
- data/vendor/assets/javascripts/ace/ext-language_tools.js +23 -22
- data/vendor/assets/javascripts/ace/ext-modelist.js +11 -5
- data/vendor/assets/javascripts/ace/ext-settings_menu.js +13 -7
- data/vendor/assets/javascripts/ace/ext-textarea.js +0 -72
- data/vendor/assets/javascripts/ace/keybinding-emacs.js +3 -2
- data/vendor/assets/javascripts/ace/keybinding-vim.js +23 -18
- data/vendor/assets/javascripts/ace/mode-abap.js +3 -19
- data/vendor/assets/javascripts/ace/mode-c_cpp.js +21 -29
- data/vendor/assets/javascripts/ace/mode-cirru.js +15 -15
- data/vendor/assets/javascripts/ace/mode-coffee.js +3 -22
- data/vendor/assets/javascripts/ace/mode-coldfusion.js +40 -54
- data/vendor/assets/javascripts/ace/mode-csharp.js +6 -0
- data/vendor/assets/javascripts/ace/mode-css.js +3 -3
- data/vendor/assets/javascripts/ace/mode-curly.js +40 -54
- data/vendor/assets/javascripts/ace/mode-dart.js +21 -29
- data/vendor/assets/javascripts/ace/mode-django.js +40 -54
- data/vendor/assets/javascripts/ace/mode-eiffel.js +2 -2
- data/vendor/assets/javascripts/ace/mode-ejs.js +41 -55
- data/vendor/assets/javascripts/ace/mode-elm.js +3 -3
- data/vendor/assets/javascripts/ace/mode-ftl.js +36 -50
- data/vendor/assets/javascripts/ace/mode-gherkin.js +6 -6
- data/vendor/assets/javascripts/ace/mode-glsl.js +21 -29
- data/vendor/assets/javascripts/ace/mode-gobstones.js +1273 -0
- data/vendor/assets/javascripts/ace/mode-golang.js +2 -2
- data/vendor/assets/javascripts/ace/mode-groovy.js +33 -47
- data/vendor/assets/javascripts/ace/mode-haml.js +981 -27
- data/vendor/assets/javascripts/ace/mode-handlebars.js +40 -54
- data/vendor/assets/javascripts/ace/mode-html.js +40 -54
- data/vendor/assets/javascripts/ace/mode-html_elixir.js +40 -54
- data/vendor/assets/javascripts/ace/mode-html_ruby.js +41 -55
- data/vendor/assets/javascripts/ace/mode-jade.js +83 -189
- data/vendor/assets/javascripts/ace/mode-java.js +35 -49
- data/vendor/assets/javascripts/ace/mode-javascript.js +33 -47
- data/vendor/assets/javascripts/ace/mode-jsp.js +38 -52
- data/vendor/assets/javascripts/ace/mode-lean.js +1 -1
- data/vendor/assets/javascripts/ace/mode-less.js +368 -136
- data/vendor/assets/javascripts/ace/mode-liquid.js +36 -50
- data/vendor/assets/javascripts/ace/mode-livescript.js +3 -18
- data/vendor/assets/javascripts/ace/mode-logiql.js +11 -11
- data/vendor/assets/javascripts/ace/mode-lua.js +1 -4
- data/vendor/assets/javascripts/ace/mode-luapage.js +41 -58
- data/vendor/assets/javascripts/ace/mode-markdown.js +40 -54
- data/vendor/assets/javascripts/ace/mode-mask.js +36 -50
- data/vendor/assets/javascripts/ace/mode-matlab.js +1 -1
- data/vendor/assets/javascripts/ace/mode-mel.js +1 -1
- data/vendor/assets/javascripts/ace/mode-nix.js +21 -29
- data/vendor/assets/javascripts/ace/mode-nsis.js +304 -0
- data/vendor/assets/javascripts/ace/mode-objectivec.js +21 -29
- data/vendor/assets/javascripts/ace/mode-pascal.js +1 -1
- data/vendor/assets/javascripts/ace/mode-pgsql.js +33 -47
- data/vendor/assets/javascripts/ace/mode-php.js +42 -57
- data/vendor/assets/javascripts/ace/mode-powershell.js +86 -57
- data/vendor/assets/javascripts/ace/mode-praat.js +1 -1
- data/vendor/assets/javascripts/ace/mode-protobuf.js +21 -29
- data/vendor/assets/javascripts/ace/mode-r.js +20 -20
- data/vendor/assets/javascripts/ace/mode-razor.js +3136 -0
- data/vendor/assets/javascripts/ace/mode-rdoc.js +20 -20
- data/vendor/assets/javascripts/ace/mode-rhtml.js +60 -74
- data/vendor/assets/javascripts/ace/mode-rst.js +249 -0
- data/vendor/assets/javascripts/ace/mode-ruby.js +1 -1
- data/vendor/assets/javascripts/ace/mode-rust.js +4 -8
- data/vendor/assets/javascripts/ace/mode-scala.js +33 -47
- data/vendor/assets/javascripts/ace/mode-sjs.js +42 -56
- data/vendor/assets/javascripts/ace/mode-smarty.js +40 -54
- data/vendor/assets/javascripts/ace/mode-soy_template.js +41 -55
- data/vendor/assets/javascripts/ace/mode-sqlserver.js +3 -3
- data/vendor/assets/javascripts/ace/mode-stylus.js +1 -1
- data/vendor/assets/javascripts/ace/mode-svg.js +34 -48
- data/vendor/assets/javascripts/ace/mode-swift.js +5 -5
- data/vendor/assets/javascripts/ace/mode-tex.js +24 -24
- data/vendor/assets/javascripts/ace/mode-twig.js +40 -54
- data/vendor/assets/javascripts/ace/mode-typescript.js +33 -47
- data/vendor/assets/javascripts/ace/mode-velocity.js +40 -54
- data/vendor/assets/javascripts/ace/mode-vhdl.js +2 -2
- data/vendor/assets/javascripts/ace/mode-wollok.js +1256 -0
- data/vendor/assets/javascripts/ace/mode-xml.js +1 -1
- data/vendor/assets/javascripts/ace/worker-coffee.js +1 -1
- data/vendor/assets/javascripts/ace/worker-css.js +1 -1
- data/vendor/assets/javascripts/ace/worker-html.js +2 -2
- data/vendor/assets/javascripts/ace/worker-javascript.js +1 -1
- data/vendor/assets/javascripts/ace/worker-json.js +1 -1
- data/vendor/assets/javascripts/ace/worker-lua.js +1 -1
- data/vendor/assets/javascripts/ace/worker-php.js +2 -4
- data/vendor/assets/javascripts/ace/worker-xml.js +1 -1
- data/vendor/assets/javascripts/ace/worker-xquery.js +1 -1
- metadata +8 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8192dcb30d1d6d1a71a923f70f1df01298481610
|
4
|
+
data.tar.gz: b215929038eafedb1002945cda5911c575f9225f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 28e248efecbd78c0f27be9149965d35c06aaa04bf4a3d96cf5a1f3c4e93f01450911705ea8657ca2b219178fd99f8bcb48d6c6170a06dc51de8d979b89b43e95
|
7
|
+
data.tar.gz: 800f8749652f1851ae227b8c199b3d9dc827c9c7ebd990c9e62231be76afc448c207fe8d668c10d4ca25a6a93011ef8b43ba1cba399d9eb0ee05aaf47f798b0b
|
data/lib/ace/rails/version.rb
CHANGED
@@ -1522,7 +1522,7 @@ exports.addMouseWheelListener = function(el, callback) {
|
|
1522
1522
|
}
|
1523
1523
|
};
|
1524
1524
|
|
1525
|
-
exports.addMultiMouseDownListener = function(
|
1525
|
+
exports.addMultiMouseDownListener = function(elements, timeouts, eventHandler, callbackName) {
|
1526
1526
|
var clicks = 0;
|
1527
1527
|
var startX, startY, timer;
|
1528
1528
|
var eventNames = {
|
@@ -1531,7 +1531,7 @@ exports.addMultiMouseDownListener = function(el, timeouts, eventHandler, callbac
|
|
1531
1531
|
4: "quadclick"
|
1532
1532
|
};
|
1533
1533
|
|
1534
|
-
|
1534
|
+
function onMousedown(e) {
|
1535
1535
|
if (exports.getButton(e) !== 0) {
|
1536
1536
|
clicks = 0;
|
1537
1537
|
} else if (e.detail > 1) {
|
@@ -1563,18 +1563,22 @@ exports.addMultiMouseDownListener = function(el, timeouts, eventHandler, callbac
|
|
1563
1563
|
clicks = 0;
|
1564
1564
|
else if (clicks > 1)
|
1565
1565
|
return eventHandler[callbackName](eventNames[clicks], e);
|
1566
|
-
});
|
1567
|
-
|
1568
|
-
if (useragent.isOldIE) {
|
1569
|
-
exports.addListener(el, "dblclick", function(e) {
|
1570
|
-
clicks = 2;
|
1571
|
-
if (timer)
|
1572
|
-
clearTimeout(timer);
|
1573
|
-
timer = setTimeout(function() {timer = null}, timeouts[clicks - 1] || 600);
|
1574
|
-
eventHandler[callbackName]("mousedown", e);
|
1575
|
-
eventHandler[callbackName](eventNames[clicks], e);
|
1576
|
-
});
|
1577
1566
|
}
|
1567
|
+
function onDblclick(e) {
|
1568
|
+
clicks = 2;
|
1569
|
+
if (timer)
|
1570
|
+
clearTimeout(timer);
|
1571
|
+
timer = setTimeout(function() {timer = null}, timeouts[clicks - 1] || 600);
|
1572
|
+
eventHandler[callbackName]("mousedown", e);
|
1573
|
+
eventHandler[callbackName](eventNames[clicks], e);
|
1574
|
+
}
|
1575
|
+
if (!Array.isArray(elements))
|
1576
|
+
elements = [elements];
|
1577
|
+
elements.forEach(function(el) {
|
1578
|
+
exports.addListener(el, "mousedown", onMousedown);
|
1579
|
+
if (useragent.isOldIE)
|
1580
|
+
exports.addListener(el, "dblclick", onDblclick);
|
1581
|
+
});
|
1578
1582
|
};
|
1579
1583
|
|
1580
1584
|
var getModifierHash = useragent.isMac && useragent.isOpera && !("KeyboardEvent" in window)
|
@@ -1617,8 +1621,7 @@ function normalizeCommandKeys(callback, e, keyCode) {
|
|
1617
1621
|
if (keyCode in keys.MODIFIER_KEYS) {
|
1618
1622
|
keyCode = -1;
|
1619
1623
|
}
|
1620
|
-
|
1621
|
-
if (hashId & 8 && (keyCode === 91 || keyCode === 92)) {
|
1624
|
+
if (hashId & 8 && (keyCode >= 91 && keyCode <= 93)) {
|
1622
1625
|
keyCode = -1;
|
1623
1626
|
}
|
1624
1627
|
|
@@ -1977,11 +1980,11 @@ var TextInput = function(parentNode, host) {
|
|
1977
1980
|
if (tempStyle) return text.focus();
|
1978
1981
|
var top = text.style.top;
|
1979
1982
|
text.style.position = "fixed";
|
1980
|
-
text.style.top = "
|
1983
|
+
text.style.top = "0px";
|
1981
1984
|
text.focus();
|
1982
1985
|
setTimeout(function() {
|
1983
1986
|
text.style.position = "";
|
1984
|
-
if (text.style.top == "
|
1987
|
+
if (text.style.top == "0px")
|
1985
1988
|
text.style.top = top;
|
1986
1989
|
}, 0);
|
1987
1990
|
};
|
@@ -2351,6 +2354,8 @@ var TextInput = function(parentNode, host) {
|
|
2351
2354
|
|
2352
2355
|
if (host.renderer.$keepTextAreaAtCursor)
|
2353
2356
|
host.renderer.$keepTextAreaAtCursor = null;
|
2357
|
+
|
2358
|
+
clearTimeout(closeTimeout);
|
2354
2359
|
if (useragent.isWin && !useragent.isOldIE)
|
2355
2360
|
event.capture(host.container, move, onContextMenuClose);
|
2356
2361
|
};
|
@@ -2375,6 +2380,11 @@ var TextInput = function(parentNode, host) {
|
|
2375
2380
|
host.textInput.onContextMenu(e);
|
2376
2381
|
onContextMenuClose();
|
2377
2382
|
};
|
2383
|
+
event.addListener(text, "mouseup", onContextMenu);
|
2384
|
+
event.addListener(text, "mousedown", function(e) {
|
2385
|
+
e.preventDefault();
|
2386
|
+
onContextMenuClose();
|
2387
|
+
});
|
2378
2388
|
event.addListener(host.renderer.scroller, "contextmenu", onContextMenu);
|
2379
2389
|
event.addListener(text, "contextmenu", onContextMenu);
|
2380
2390
|
};
|
@@ -2426,10 +2436,11 @@ function DefaultHandlers(mouseHandler) {
|
|
2426
2436
|
var selectionRange = editor.getSelectionRange();
|
2427
2437
|
var selectionEmpty = selectionRange.isEmpty();
|
2428
2438
|
editor.$blockScrolling++;
|
2429
|
-
if (selectionEmpty)
|
2439
|
+
if (selectionEmpty || button == 1)
|
2430
2440
|
editor.selection.moveToPosition(pos);
|
2431
2441
|
editor.$blockScrolling--;
|
2432
|
-
|
2442
|
+
if (button == 2)
|
2443
|
+
editor.textInput.onContextMenu(ev.domEvent);
|
2433
2444
|
return; // stopping event here breaks contextmenu on ff mac
|
2434
2445
|
}
|
2435
2446
|
|
@@ -3708,11 +3719,11 @@ exports.loadModule = function(moduleName, onLoad) {
|
|
3708
3719
|
};
|
3709
3720
|
init(true);function init(packaged) {
|
3710
3721
|
|
3722
|
+
if (!global || !global.document)
|
3723
|
+
return;
|
3724
|
+
|
3711
3725
|
options.packaged = packaged || require.packaged || module.packaged || (global.define && define.packaged);
|
3712
3726
|
|
3713
|
-
if (!global.document)
|
3714
|
-
return "";
|
3715
|
-
|
3716
3727
|
var scriptOptions = {};
|
3717
3728
|
var scriptUrl = "";
|
3718
3729
|
var currentScript = (document.currentScript || document._currentScript ); // native or polyfill
|
@@ -3753,7 +3764,7 @@ init(true);function init(packaged) {
|
|
3753
3764
|
for (var key in scriptOptions)
|
3754
3765
|
if (typeof scriptOptions[key] !== "undefined")
|
3755
3766
|
exports.set(key, scriptOptions[key]);
|
3756
|
-
}
|
3767
|
+
}
|
3757
3768
|
|
3758
3769
|
exports.init = init;
|
3759
3770
|
|
@@ -3783,25 +3794,22 @@ var MouseHandler = function(editor) {
|
|
3783
3794
|
new DragdropHandler(this);
|
3784
3795
|
|
3785
3796
|
var focusEditor = function(e) {
|
3786
|
-
|
3797
|
+
var windowBlurred = !document.hasFocus || !document.hasFocus()
|
3798
|
+
|| !editor.isFocused() && document.activeElement == (editor.textInput && editor.textInput.getElement())
|
3799
|
+
if (windowBlurred)
|
3787
3800
|
window.focus();
|
3788
3801
|
editor.focus();
|
3789
|
-
if (!editor.isFocused())
|
3790
|
-
window.focus();
|
3791
3802
|
};
|
3792
3803
|
|
3793
3804
|
var mouseTarget = editor.renderer.getMouseEventTarget();
|
3794
3805
|
event.addListener(mouseTarget, "click", this.onMouseEvent.bind(this, "click"));
|
3795
3806
|
event.addListener(mouseTarget, "mousemove", this.onMouseMove.bind(this, "mousemove"));
|
3796
|
-
event.addMultiMouseDownListener(
|
3797
|
-
|
3798
|
-
|
3799
|
-
|
3800
|
-
|
3801
|
-
|
3802
|
-
event.addListener(editor.renderer.scrollBarH.element, "mousedown", focusEditor);
|
3803
|
-
}
|
3804
|
-
}
|
3807
|
+
event.addMultiMouseDownListener([
|
3808
|
+
mouseTarget,
|
3809
|
+
editor.renderer.scrollBarV && editor.renderer.scrollBarV.inner,
|
3810
|
+
editor.renderer.scrollBarH && editor.renderer.scrollBarH.inner,
|
3811
|
+
editor.textInput && editor.textInput.getElement()
|
3812
|
+
].filter(Boolean), [400, 300, 250], this, "onMouseEvent");
|
3805
3813
|
event.addMouseWheelListener(editor.container, this.onMouseWheel.bind(this, "mousewheel"));
|
3806
3814
|
event.addTouchMoveListener(editor.container, this.onTouchMove.bind(this, "touchmove"));
|
3807
3815
|
|
@@ -3812,11 +3820,11 @@ var MouseHandler = function(editor) {
|
|
3812
3820
|
event.addListener(gutterEl, "mousemove", this.onMouseEvent.bind(this, "guttermousemove"));
|
3813
3821
|
|
3814
3822
|
event.addListener(mouseTarget, "mousedown", focusEditor);
|
3815
|
-
|
3816
|
-
|
3817
|
-
editor.
|
3818
|
-
|
3819
|
-
}
|
3823
|
+
event.addListener(gutterEl, "mousedown", focusEditor);
|
3824
|
+
if (useragent.isIE && editor.renderer.scrollBarV) {
|
3825
|
+
event.addListener(editor.renderer.scrollBarV.element, "mousedown", focusEditor);
|
3826
|
+
event.addListener(editor.renderer.scrollBarH.element, "mousedown", focusEditor);
|
3827
|
+
}
|
3820
3828
|
|
3821
3829
|
editor.on("mousemove", function(e){
|
3822
3830
|
if (_self.state || _self.$dragDelay || !_self.$dragEnabled)
|
@@ -4253,7 +4261,7 @@ var Range = function(startRow, startColumn, endRow, endColumn) {
|
|
4253
4261
|
if (!this.isMultiLine()) {
|
4254
4262
|
if (row === this.start.row) {
|
4255
4263
|
return column < this.start.column ? -1 : (column > this.end.column ? 1 : 0);
|
4256
|
-
}
|
4264
|
+
}
|
4257
4265
|
}
|
4258
4266
|
|
4259
4267
|
if (row < this.start.row)
|
@@ -4856,8 +4864,10 @@ var Selection = function(session) {
|
|
4856
4864
|
var docPos = this.session.screenToDocumentPosition(screenPos.row + rows, screenPos.column);
|
4857
4865
|
|
4858
4866
|
if (rows !== 0 && chars === 0 && docPos.row === this.lead.row && docPos.column === this.lead.column) {
|
4859
|
-
if (this.session.lineWidgets && this.session.lineWidgets[docPos.row])
|
4860
|
-
docPos.row
|
4867
|
+
if (this.session.lineWidgets && this.session.lineWidgets[docPos.row]) {
|
4868
|
+
if (docPos.row > 0 || rows > 0)
|
4869
|
+
docPos.row++;
|
4870
|
+
}
|
4861
4871
|
}
|
4862
4872
|
this.moveCursorTo(docPos.row, docPos.column + chars, chars === 0);
|
4863
4873
|
};
|
@@ -4911,7 +4921,7 @@ var Selection = function(session) {
|
|
4911
4921
|
this.getRangeOfMovements = function(func) {
|
4912
4922
|
var start = this.getCursor();
|
4913
4923
|
try {
|
4914
|
-
func
|
4924
|
+
func(this);
|
4915
4925
|
var end = this.getCursor();
|
4916
4926
|
return Range.fromPoints(start,end);
|
4917
4927
|
} catch(e) {
|
@@ -5078,7 +5088,7 @@ var Tokenizer = function(rules) {
|
|
5078
5088
|
};
|
5079
5089
|
}
|
5080
5090
|
return tokens;
|
5081
|
-
}
|
5091
|
+
};
|
5082
5092
|
|
5083
5093
|
this.$arrayTokens = function(str) {
|
5084
5094
|
if (!str)
|
@@ -5587,7 +5597,7 @@ function addUnicodePackage (pack) {
|
|
5587
5597
|
var codePoint = /\w{4}/g;
|
5588
5598
|
for (var name in pack)
|
5589
5599
|
exports.packages[name] = pack[name].replace(codePoint, "\\u$&");
|
5590
|
-
}
|
5600
|
+
}
|
5591
5601
|
|
5592
5602
|
});
|
5593
5603
|
|
@@ -5749,7 +5759,7 @@ var Mode = function() {
|
|
5749
5759
|
return true;
|
5750
5760
|
var tokens = session.getTokens(row);
|
5751
5761
|
for (var i = 0; i < tokens.length; i++) {
|
5752
|
-
if (tokens[i].type ===
|
5762
|
+
if (tokens[i].type === "comment")
|
5753
5763
|
return true;
|
5754
5764
|
}
|
5755
5765
|
};
|
@@ -5922,8 +5932,8 @@ var Mode = function() {
|
|
5922
5932
|
}
|
5923
5933
|
}
|
5924
5934
|
|
5925
|
-
var delegations = [
|
5926
|
-
|
5935
|
+
var delegations = ["toggleBlockComment", "toggleCommentLines", "getNextLineIndent",
|
5936
|
+
"checkOutdent", "autoOutdent", "transformAction", "getCompletions"];
|
5927
5937
|
|
5928
5938
|
for (var i = 0; i < delegations.length; i++) {
|
5929
5939
|
(function(scope) {
|
@@ -5932,7 +5942,7 @@ var Mode = function() {
|
|
5932
5942
|
scope[delegations[i]] = function() {
|
5933
5943
|
return this.$delegator(functionName, arguments, defaultHandler);
|
5934
5944
|
};
|
5935
|
-
}
|
5945
|
+
}(this));
|
5936
5946
|
}
|
5937
5947
|
};
|
5938
5948
|
|
@@ -7030,7 +7040,7 @@ var RangeList = function() {
|
|
7030
7040
|
this.addList = function(list) {
|
7031
7041
|
var removed = [];
|
7032
7042
|
for (var i = list.length; i--; ) {
|
7033
|
-
removed.push.
|
7043
|
+
removed.push.apply(removed, this.add(list[i]));
|
7034
7044
|
}
|
7035
7045
|
return removed;
|
7036
7046
|
};
|
@@ -9394,11 +9404,11 @@ var EditSession = function(text, mode) {
|
|
9394
9404
|
function addSplit(screenPos) {
|
9395
9405
|
var displayed = tokens.slice(lastSplit, screenPos);
|
9396
9406
|
var len = displayed.length;
|
9397
|
-
displayed.join("")
|
9398
|
-
replace(/12/g, function() {
|
9407
|
+
displayed.join("")
|
9408
|
+
.replace(/12/g, function() {
|
9399
9409
|
len -= 1;
|
9400
|
-
})
|
9401
|
-
replace(/2/g, function() {
|
9410
|
+
})
|
9411
|
+
.replace(/2/g, function() {
|
9402
9412
|
len -= 1;
|
9403
9413
|
});
|
9404
9414
|
|
@@ -9851,7 +9861,7 @@ var EditSession = function(text, mode) {
|
|
9851
9861
|
c >= 0xFE68 && c <= 0xFE6B ||
|
9852
9862
|
c >= 0xFF01 && c <= 0xFF60 ||
|
9853
9863
|
c >= 0xFFE0 && c <= 0xFFE6;
|
9854
|
-
}
|
9864
|
+
}
|
9855
9865
|
|
9856
9866
|
}).call(EditSession.prototype);
|
9857
9867
|
|
@@ -10317,7 +10327,7 @@ MultiHashHandler.prototype = HashHandler.prototype;
|
|
10317
10327
|
};
|
10318
10328
|
|
10319
10329
|
this.bindKey = function(key, command, position) {
|
10320
|
-
if (typeof key == "object") {
|
10330
|
+
if (typeof key == "object" && key) {
|
10321
10331
|
if (position == undefined)
|
10322
10332
|
position = key.position;
|
10323
10333
|
key = key[this.platform];
|
@@ -11486,76 +11496,76 @@ var Editor = function(renderer, session) {
|
|
11486
11496
|
|
11487
11497
|
var oldSession = this.session;
|
11488
11498
|
if (oldSession) {
|
11489
|
-
this.session.
|
11490
|
-
this.session.
|
11491
|
-
this.session.
|
11492
|
-
this.session.
|
11493
|
-
this.session.
|
11494
|
-
this.session.
|
11495
|
-
this.session.
|
11496
|
-
this.session.
|
11497
|
-
this.session.
|
11498
|
-
this.session.
|
11499
|
-
this.session.
|
11500
|
-
this.session.
|
11501
|
-
this.session.
|
11502
|
-
this.session.
|
11499
|
+
this.session.off("change", this.$onDocumentChange);
|
11500
|
+
this.session.off("changeMode", this.$onChangeMode);
|
11501
|
+
this.session.off("tokenizerUpdate", this.$onTokenizerUpdate);
|
11502
|
+
this.session.off("changeTabSize", this.$onChangeTabSize);
|
11503
|
+
this.session.off("changeWrapLimit", this.$onChangeWrapLimit);
|
11504
|
+
this.session.off("changeWrapMode", this.$onChangeWrapMode);
|
11505
|
+
this.session.off("changeFold", this.$onChangeFold);
|
11506
|
+
this.session.off("changeFrontMarker", this.$onChangeFrontMarker);
|
11507
|
+
this.session.off("changeBackMarker", this.$onChangeBackMarker);
|
11508
|
+
this.session.off("changeBreakpoint", this.$onChangeBreakpoint);
|
11509
|
+
this.session.off("changeAnnotation", this.$onChangeAnnotation);
|
11510
|
+
this.session.off("changeOverwrite", this.$onCursorChange);
|
11511
|
+
this.session.off("changeScrollTop", this.$onScrollTopChange);
|
11512
|
+
this.session.off("changeScrollLeft", this.$onScrollLeftChange);
|
11503
11513
|
|
11504
11514
|
var selection = this.session.getSelection();
|
11505
|
-
selection.
|
11506
|
-
selection.
|
11515
|
+
selection.off("changeCursor", this.$onCursorChange);
|
11516
|
+
selection.off("changeSelection", this.$onSelectionChange);
|
11507
11517
|
}
|
11508
11518
|
|
11509
11519
|
this.session = session;
|
11510
11520
|
if (session) {
|
11511
11521
|
this.$onDocumentChange = this.onDocumentChange.bind(this);
|
11512
|
-
session.
|
11522
|
+
session.on("change", this.$onDocumentChange);
|
11513
11523
|
this.renderer.setSession(session);
|
11514
11524
|
|
11515
11525
|
this.$onChangeMode = this.onChangeMode.bind(this);
|
11516
|
-
session.
|
11526
|
+
session.on("changeMode", this.$onChangeMode);
|
11517
11527
|
|
11518
11528
|
this.$onTokenizerUpdate = this.onTokenizerUpdate.bind(this);
|
11519
|
-
session.
|
11529
|
+
session.on("tokenizerUpdate", this.$onTokenizerUpdate);
|
11520
11530
|
|
11521
11531
|
this.$onChangeTabSize = this.renderer.onChangeTabSize.bind(this.renderer);
|
11522
|
-
session.
|
11532
|
+
session.on("changeTabSize", this.$onChangeTabSize);
|
11523
11533
|
|
11524
11534
|
this.$onChangeWrapLimit = this.onChangeWrapLimit.bind(this);
|
11525
|
-
session.
|
11535
|
+
session.on("changeWrapLimit", this.$onChangeWrapLimit);
|
11526
11536
|
|
11527
11537
|
this.$onChangeWrapMode = this.onChangeWrapMode.bind(this);
|
11528
|
-
session.
|
11538
|
+
session.on("changeWrapMode", this.$onChangeWrapMode);
|
11529
11539
|
|
11530
11540
|
this.$onChangeFold = this.onChangeFold.bind(this);
|
11531
|
-
session.
|
11541
|
+
session.on("changeFold", this.$onChangeFold);
|
11532
11542
|
|
11533
11543
|
this.$onChangeFrontMarker = this.onChangeFrontMarker.bind(this);
|
11534
|
-
this.session.
|
11544
|
+
this.session.on("changeFrontMarker", this.$onChangeFrontMarker);
|
11535
11545
|
|
11536
11546
|
this.$onChangeBackMarker = this.onChangeBackMarker.bind(this);
|
11537
|
-
this.session.
|
11547
|
+
this.session.on("changeBackMarker", this.$onChangeBackMarker);
|
11538
11548
|
|
11539
11549
|
this.$onChangeBreakpoint = this.onChangeBreakpoint.bind(this);
|
11540
|
-
this.session.
|
11550
|
+
this.session.on("changeBreakpoint", this.$onChangeBreakpoint);
|
11541
11551
|
|
11542
11552
|
this.$onChangeAnnotation = this.onChangeAnnotation.bind(this);
|
11543
|
-
this.session.
|
11553
|
+
this.session.on("changeAnnotation", this.$onChangeAnnotation);
|
11544
11554
|
|
11545
11555
|
this.$onCursorChange = this.onCursorChange.bind(this);
|
11546
|
-
this.session.
|
11556
|
+
this.session.on("changeOverwrite", this.$onCursorChange);
|
11547
11557
|
|
11548
11558
|
this.$onScrollTopChange = this.onScrollTopChange.bind(this);
|
11549
|
-
this.session.
|
11559
|
+
this.session.on("changeScrollTop", this.$onScrollTopChange);
|
11550
11560
|
|
11551
11561
|
this.$onScrollLeftChange = this.onScrollLeftChange.bind(this);
|
11552
|
-
this.session.
|
11562
|
+
this.session.on("changeScrollLeft", this.$onScrollLeftChange);
|
11553
11563
|
|
11554
11564
|
this.selection = session.getSelection();
|
11555
|
-
this.selection.
|
11565
|
+
this.selection.on("changeCursor", this.$onCursorChange);
|
11556
11566
|
|
11557
11567
|
this.$onSelectionChange = this.onSelectionChange.bind(this);
|
11558
|
-
this.selection.
|
11568
|
+
this.selection.on("changeSelection", this.$onSelectionChange);
|
11559
11569
|
|
11560
11570
|
this.onChangeMode();
|
11561
11571
|
|
@@ -13022,9 +13032,9 @@ var Editor = function(renderer, session) {
|
|
13022
13032
|
if (enable)
|
13023
13033
|
return;
|
13024
13034
|
delete this.setAutoScrollEditorIntoView;
|
13025
|
-
this.
|
13026
|
-
this.renderer.
|
13027
|
-
this.renderer.
|
13035
|
+
this.off("changeSelection", onChangeSelection);
|
13036
|
+
this.renderer.off("afterRender", onAfterRender);
|
13037
|
+
this.renderer.off("beforeRender", onBeforeRender);
|
13028
13038
|
};
|
13029
13039
|
};
|
13030
13040
|
|
@@ -13079,6 +13089,11 @@ config.defineOptions(Editor.prototype, "editor", {
|
|
13079
13089
|
autoScrollEditorIntoView: {
|
13080
13090
|
set: function(val) {this.setAutoScrollEditorIntoView(val)}
|
13081
13091
|
},
|
13092
|
+
keyboardHandler: {
|
13093
|
+
set: function(val) { this.setKeyboardHandler(val); },
|
13094
|
+
get: function() { return this.keybindingId; },
|
13095
|
+
handlesSet: true
|
13096
|
+
},
|
13082
13097
|
|
13083
13098
|
hScrollBarAlwaysVisible: "renderer",
|
13084
13099
|
vScrollBarAlwaysVisible: "renderer",
|
@@ -13195,7 +13210,7 @@ var UndoManager = function() {
|
|
13195
13210
|
start: delta.start,
|
13196
13211
|
end: delta.end,
|
13197
13212
|
lines: delta.lines.length == 1 ? null : delta.lines,
|
13198
|
-
text: delta.lines.length == 1 ? delta.lines[0] : null
|
13213
|
+
text: delta.lines.length == 1 ? delta.lines[0] : null
|
13199
13214
|
};
|
13200
13215
|
}
|
13201
13216
|
|
@@ -14579,7 +14594,7 @@ var EventEmitter = require("../lib/event_emitter").EventEmitter;
|
|
14579
14594
|
|
14580
14595
|
var CHAR_COUNT = 0;
|
14581
14596
|
|
14582
|
-
var FontMetrics = exports.FontMetrics = function(parentEl
|
14597
|
+
var FontMetrics = exports.FontMetrics = function(parentEl) {
|
14583
14598
|
this.el = dom.createElement("div");
|
14584
14599
|
this.$setMeasureNodeStyles(this.el.style, true);
|
14585
14600
|
|
@@ -14674,7 +14689,7 @@ var FontMetrics = exports.FontMetrics = function(parentEl, interval) {
|
|
14674
14689
|
rect = this.$measureNode.getBoundingClientRect();
|
14675
14690
|
} catch(e) {
|
14676
14691
|
rect = {width: 0, height:0 };
|
14677
|
-
}
|
14692
|
+
}
|
14678
14693
|
var size = {
|
14679
14694
|
height: rect.height,
|
14680
14695
|
width: rect.width / CHAR_COUNT
|
@@ -14699,7 +14714,7 @@ var FontMetrics = exports.FontMetrics = function(parentEl, interval) {
|
|
14699
14714
|
this.getCharacterWidth = function(ch) {
|
14700
14715
|
var w = this.charSizes[ch];
|
14701
14716
|
if (w === undefined) {
|
14702
|
-
this.charSizes[ch] = this.$measureCharWidth(ch) / this.$characterSize.width;
|
14717
|
+
w = this.charSizes[ch] = this.$measureCharWidth(ch) / this.$characterSize.width;
|
14703
14718
|
}
|
14704
14719
|
return w;
|
14705
14720
|
};
|
@@ -15162,7 +15177,7 @@ var VirtualRenderer = function(container, theme) {
|
|
15162
15177
|
column : 0
|
15163
15178
|
};
|
15164
15179
|
|
15165
|
-
this.$fontMetrics = new FontMetrics(this.container
|
15180
|
+
this.$fontMetrics = new FontMetrics(this.container);
|
15166
15181
|
this.$textLayer.$setFontMetrics(this.$fontMetrics);
|
15167
15182
|
this.$textLayer.addEventListener("changeCharacterSize", function(e) {
|
15168
15183
|
_self.updateCharacterSize();
|
@@ -15557,8 +15572,12 @@ var VirtualRenderer = function(container, theme) {
|
|
15557
15572
|
return this.layerConfig.firstRow + (this.layerConfig.offset === 0 ? 0 : 1);
|
15558
15573
|
};
|
15559
15574
|
this.getLastFullyVisibleRow = function() {
|
15560
|
-
var
|
15561
|
-
|
15575
|
+
var config = this.layerConfig;
|
15576
|
+
var lastRow = config.lastRow
|
15577
|
+
var top = this.session.documentToScreenRow(lastRow, 0) * config.lineHeight;
|
15578
|
+
if (top - this.session.getScrollTop() > config.height - config.lineHeight)
|
15579
|
+
return lastRow - 1;
|
15580
|
+
return lastRow;
|
15562
15581
|
};
|
15563
15582
|
this.getLastVisibleRow = function() {
|
15564
15583
|
return this.layerConfig.lastRow;
|
@@ -15932,13 +15951,13 @@ var VirtualRenderer = function(container, theme) {
|
|
15932
15951
|
var scrollTop = this.$scrollAnimation ? this.session.getScrollTop() : this.scrollTop;
|
15933
15952
|
|
15934
15953
|
if (scrollTop + topMargin > top) {
|
15935
|
-
if (offset)
|
15954
|
+
if (offset && scrollTop + topMargin > top + this.lineHeight)
|
15936
15955
|
top -= offset * this.$size.scrollerHeight;
|
15937
15956
|
if (top === 0)
|
15938
15957
|
top = -this.scrollMargin.top;
|
15939
15958
|
this.session.setScrollTop(top);
|
15940
15959
|
} else if (scrollTop + this.$size.scrollerHeight - bottomMargin < top + this.lineHeight) {
|
15941
|
-
if (offset)
|
15960
|
+
if (offset && scrollTop + this.$size.scrollerHeight - bottomMargin < top - this.lineHeight)
|
15942
15961
|
top += offset * this.$size.scrollerHeight;
|
15943
15962
|
this.session.setScrollTop(top + this.lineHeight - this.$size.scrollerHeight);
|
15944
15963
|
}
|
@@ -16605,7 +16624,7 @@ var PlaceHolder = function(session, length, pos, others, mainClass, othersClass)
|
|
16605
16624
|
|
16606
16625
|
this.$pos = pos;
|
16607
16626
|
var undoStack = session.getUndoManager().$undoStack || session.getUndoManager().$undostack || {length: -1};
|
16608
|
-
this.$undoStackDepth =
|
16627
|
+
this.$undoStackDepth = undoStack.length;
|
16609
16628
|
this.setup();
|
16610
16629
|
|
16611
16630
|
session.selection.on("changeCursor", this.$onCursorChange);
|
@@ -16618,103 +16637,97 @@ var PlaceHolder = function(session, length, pos, others, mainClass, othersClass)
|
|
16618
16637
|
var _self = this;
|
16619
16638
|
var doc = this.doc;
|
16620
16639
|
var session = this.session;
|
16621
|
-
var pos = this.$pos;
|
16622
16640
|
|
16623
16641
|
this.selectionBefore = session.selection.toJSON();
|
16624
16642
|
if (session.selection.inMultiSelectMode)
|
16625
16643
|
session.selection.toSingleRange();
|
16626
16644
|
|
16627
|
-
this.pos = doc.createAnchor(pos.row, pos.column);
|
16628
|
-
|
16629
|
-
|
16630
|
-
|
16631
|
-
|
16632
|
-
});
|
16645
|
+
this.pos = doc.createAnchor(this.$pos.row, this.$pos.column);
|
16646
|
+
var pos = this.pos;
|
16647
|
+
pos.$insertRight = true;
|
16648
|
+
pos.detach();
|
16649
|
+
pos.markerId = session.addMarker(new Range(pos.row, pos.column, pos.row, pos.column + this.length), this.mainClass, null, false);
|
16633
16650
|
this.others = [];
|
16634
16651
|
this.$others.forEach(function(other) {
|
16635
16652
|
var anchor = doc.createAnchor(other.row, other.column);
|
16653
|
+
anchor.$insertRight = true;
|
16654
|
+
anchor.detach();
|
16636
16655
|
_self.others.push(anchor);
|
16637
16656
|
});
|
16638
16657
|
session.setUndoSelect(false);
|
16639
16658
|
};
|
16640
16659
|
this.showOtherMarkers = function() {
|
16641
|
-
if(this.othersActive) return;
|
16660
|
+
if (this.othersActive) return;
|
16642
16661
|
var session = this.session;
|
16643
16662
|
var _self = this;
|
16644
16663
|
this.othersActive = true;
|
16645
16664
|
this.others.forEach(function(anchor) {
|
16646
16665
|
anchor.markerId = session.addMarker(new Range(anchor.row, anchor.column, anchor.row, anchor.column+_self.length), _self.othersClass, null, false);
|
16647
|
-
anchor.on("change", function(event) {
|
16648
|
-
session.removeMarker(anchor.markerId);
|
16649
|
-
anchor.markerId = session.addMarker(new Range(event.value.row, event.value.column, event.value.row, event.value.column+_self.length), _self.othersClass, null, false);
|
16650
|
-
});
|
16651
16666
|
});
|
16652
16667
|
};
|
16653
16668
|
this.hideOtherMarkers = function() {
|
16654
|
-
if(!this.othersActive) return;
|
16669
|
+
if (!this.othersActive) return;
|
16655
16670
|
this.othersActive = false;
|
16656
16671
|
for (var i = 0; i < this.others.length; i++) {
|
16657
16672
|
this.session.removeMarker(this.others[i].markerId);
|
16658
16673
|
}
|
16659
16674
|
};
|
16660
16675
|
this.onUpdate = function(delta) {
|
16676
|
+
if (this.$updating)
|
16677
|
+
return this.updateAnchors(delta);
|
16678
|
+
|
16661
16679
|
var range = delta;
|
16662
|
-
if(range.start.row !== range.end.row) return;
|
16663
|
-
if(range.start.row !== this.pos.row) return;
|
16664
|
-
if (this.$updating) return;
|
16680
|
+
if (range.start.row !== range.end.row) return;
|
16681
|
+
if (range.start.row !== this.pos.row) return;
|
16665
16682
|
this.$updating = true;
|
16666
16683
|
var lengthDiff = delta.action === "insert" ? range.end.column - range.start.column : range.start.column - range.end.column;
|
16684
|
+
var inMainRange = range.start.column >= this.pos.column && range.start.column <= this.pos.column + this.length + 1;
|
16685
|
+
var distanceFromStart = range.start.column - this.pos.column;
|
16686
|
+
|
16687
|
+
this.updateAnchors(delta);
|
16667
16688
|
|
16668
|
-
if(
|
16669
|
-
var distanceFromStart = range.start.column - this.pos.column;
|
16689
|
+
if (inMainRange)
|
16670
16690
|
this.length += lengthDiff;
|
16671
|
-
|
16672
|
-
|
16673
|
-
|
16674
|
-
|
16675
|
-
|
16676
|
-
|
16677
|
-
|
16678
|
-
this.doc.insertMergedLines(newPos, delta.lines);
|
16679
|
-
}
|
16680
|
-
} else if(delta.action === 'remove') {
|
16681
|
-
for (var i = this.others.length - 1; i >= 0; i--) {
|
16682
|
-
var otherPos = this.others[i];
|
16683
|
-
var newPos = {row: otherPos.row, column: otherPos.column + distanceFromStart};
|
16684
|
-
if(otherPos.row === range.start.row && range.start.column < otherPos.column)
|
16685
|
-
newPos.column += lengthDiff;
|
16686
|
-
this.doc.remove(new Range(newPos.row, newPos.column, newPos.row, newPos.column - lengthDiff));
|
16687
|
-
}
|
16688
|
-
}
|
16689
|
-
if(range.start.column === this.pos.column && delta.action === 'insert') {
|
16690
|
-
setTimeout(function() {
|
16691
|
-
this.pos.setPosition(this.pos.row, this.pos.column - lengthDiff);
|
16692
|
-
for (var i = 0; i < this.others.length; i++) {
|
16693
|
-
var other = this.others[i];
|
16694
|
-
var newPos = {row: other.row, column: other.column - lengthDiff};
|
16695
|
-
if(other.row === range.start.row && range.start.column < other.column)
|
16696
|
-
newPos.column += lengthDiff;
|
16697
|
-
other.setPosition(newPos.row, newPos.column);
|
16698
|
-
}
|
16699
|
-
}.bind(this), 0);
|
16691
|
+
|
16692
|
+
if (inMainRange && !this.session.$fromUndo) {
|
16693
|
+
if (delta.action === 'insert') {
|
16694
|
+
for (var i = this.others.length - 1; i >= 0; i--) {
|
16695
|
+
var otherPos = this.others[i];
|
16696
|
+
var newPos = {row: otherPos.row, column: otherPos.column + distanceFromStart};
|
16697
|
+
this.doc.insertMergedLines(newPos, delta.lines);
|
16700
16698
|
}
|
16701
|
-
|
16702
|
-
|
16703
|
-
|
16704
|
-
|
16705
|
-
|
16706
|
-
other.setPosition(other.row, other.column - lengthDiff);
|
16707
|
-
}
|
16708
|
-
}
|
16709
|
-
}.bind(this), 0);
|
16699
|
+
} else if (delta.action === 'remove') {
|
16700
|
+
for (var i = this.others.length - 1; i >= 0; i--) {
|
16701
|
+
var otherPos = this.others[i];
|
16702
|
+
var newPos = {row: otherPos.row, column: otherPos.column + distanceFromStart};
|
16703
|
+
this.doc.remove(new Range(newPos.row, newPos.column, newPos.row, newPos.column - lengthDiff));
|
16710
16704
|
}
|
16711
16705
|
}
|
16712
|
-
this.pos._emit("change", {value: this.pos});
|
16713
|
-
for (var i = 0; i < this.others.length; i++) {
|
16714
|
-
this.others[i]._emit("change", {value: this.others[i]});
|
16715
|
-
}
|
16716
16706
|
}
|
16707
|
+
|
16717
16708
|
this.$updating = false;
|
16709
|
+
this.updateMarkers();
|
16710
|
+
};
|
16711
|
+
|
16712
|
+
this.updateAnchors = function(delta) {
|
16713
|
+
this.pos.onChange(delta);
|
16714
|
+
for (var i = this.others.length; i--;)
|
16715
|
+
this.others[i].onChange(delta);
|
16716
|
+
this.updateMarkers();
|
16717
|
+
};
|
16718
|
+
|
16719
|
+
this.updateMarkers = function() {
|
16720
|
+
if (this.$updating)
|
16721
|
+
return;
|
16722
|
+
var _self = this;
|
16723
|
+
var session = this.session;
|
16724
|
+
var updateMarker = function(pos, className) {
|
16725
|
+
session.removeMarker(pos.markerId);
|
16726
|
+
pos.markerId = session.addMarker(new Range(pos.row, pos.column, pos.row, pos.column+_self.length), className, null, false);
|
16727
|
+
};
|
16728
|
+
updateMarker(this.pos, this.mainClass);
|
16729
|
+
for (var i = this.others.length; i--;)
|
16730
|
+
updateMarker(this.others[i], this.othersClass);
|
16718
16731
|
};
|
16719
16732
|
|
16720
16733
|
this.onCursorChange = function(event) {
|
@@ -16729,20 +16742,16 @@ var PlaceHolder = function(session, length, pos, others, mainClass, othersClass)
|
|
16729
16742
|
}
|
16730
16743
|
};
|
16731
16744
|
this.detach = function() {
|
16732
|
-
this.session.removeMarker(this.markerId);
|
16745
|
+
this.session.removeMarker(this.pos && this.pos.markerId);
|
16733
16746
|
this.hideOtherMarkers();
|
16734
16747
|
this.doc.removeEventListener("change", this.$onUpdate);
|
16735
16748
|
this.session.selection.removeEventListener("changeCursor", this.$onCursorChange);
|
16736
|
-
this.pos.detach();
|
16737
|
-
for (var i = 0; i < this.others.length; i++) {
|
16738
|
-
this.others[i].detach();
|
16739
|
-
}
|
16740
16749
|
this.session.setUndoSelect(true);
|
16741
16750
|
this.session = null;
|
16742
16751
|
};
|
16743
16752
|
this.cancel = function() {
|
16744
|
-
if(this.$undoStackDepth === -1)
|
16745
|
-
|
16753
|
+
if (this.$undoStackDepth === -1)
|
16754
|
+
return;
|
16746
16755
|
var undoManager = this.session.getUndoManager();
|
16747
16756
|
var undosRequired = (undoManager.$undoStack || undoManager.$undostack).length - this.$undoStackDepth;
|
16748
16757
|
for (var i = 0; i < undosRequired; i++) {
|
@@ -17730,8 +17739,8 @@ exports.onSessionChange = function(e) {
|
|
17730
17739
|
oldSession.multiSelect.off("removeRange", this.$onRemoveRange);
|
17731
17740
|
oldSession.multiSelect.off("multiSelect", this.$onMultiSelect);
|
17732
17741
|
oldSession.multiSelect.off("singleSelect", this.$onSingleSelect);
|
17733
|
-
oldSession.multiSelect.lead.off("change",
|
17734
|
-
oldSession.multiSelect.anchor.off("change",
|
17742
|
+
oldSession.multiSelect.lead.off("change", this.$checkMultiselectChange);
|
17743
|
+
oldSession.multiSelect.anchor.off("change", this.$checkMultiselectChange);
|
17735
17744
|
}
|
17736
17745
|
|
17737
17746
|
if (session) {
|
@@ -17739,8 +17748,8 @@ exports.onSessionChange = function(e) {
|
|
17739
17748
|
session.multiSelect.on("removeRange", this.$onRemoveRange);
|
17740
17749
|
session.multiSelect.on("multiSelect", this.$onMultiSelect);
|
17741
17750
|
session.multiSelect.on("singleSelect", this.$onSingleSelect);
|
17742
|
-
session.multiSelect.lead.on("change",
|
17743
|
-
session.multiSelect.anchor.on("change",
|
17751
|
+
session.multiSelect.lead.on("change", this.$checkMultiselectChange);
|
17752
|
+
session.multiSelect.anchor.on("change", this.$checkMultiselectChange);
|
17744
17753
|
}
|
17745
17754
|
|
17746
17755
|
if (session && this.inMultiSelectMode != session.selection.inMultiSelectMode) {
|
@@ -18307,6 +18316,8 @@ function LineWidgets(session) {
|
|
18307
18316
|
if (!w || !w.el) continue;
|
18308
18317
|
if (w.session != this.session) continue;
|
18309
18318
|
if (!w._inDocument) {
|
18319
|
+
if (this.session.lineWidgets[w.row] != w)
|
18320
|
+
continue;
|
18310
18321
|
w._inDocument = true;
|
18311
18322
|
renderer.container.appendChild(w.el);
|
18312
18323
|
}
|
@@ -18601,7 +18612,7 @@ require("./ext/error_marker");
|
|
18601
18612
|
exports.config = require("./config");
|
18602
18613
|
exports.require = require;
|
18603
18614
|
exports.edit = function(el) {
|
18604
|
-
if (typeof
|
18615
|
+
if (typeof el == "string") {
|
18605
18616
|
var _id = el;
|
18606
18617
|
el = document.getElementById(_id);
|
18607
18618
|
if (!el)
|
@@ -18619,7 +18630,7 @@ exports.edit = function(el) {
|
|
18619
18630
|
oldNode.parentNode.replaceChild(el, oldNode);
|
18620
18631
|
} else if (el) {
|
18621
18632
|
value = dom.getInnerText(el);
|
18622
|
-
el.innerHTML =
|
18633
|
+
el.innerHTML = "";
|
18623
18634
|
}
|
18624
18635
|
|
18625
18636
|
var doc = exports.createEditSession(value);
|
@@ -18648,6 +18659,7 @@ exports.createEditSession = function(text, mode) {
|
|
18648
18659
|
}
|
18649
18660
|
exports.EditSession = EditSession;
|
18650
18661
|
exports.UndoManager = UndoManager;
|
18662
|
+
exports.version = "1.2.3";
|
18651
18663
|
});
|
18652
18664
|
(function() {
|
18653
18665
|
window.require(["ace/ace"], function(a) {
|