mediawiki-extensions-CodeEd.../modules/ace/ext-statusbar.js
paladox 6d052a8011 Update Ace to 29-10-2015
Updates ACE to commit:
3fb55e8e37

This includes basic scrolling support in mobiles
https://github.com/ajaxorg/ace/pull/2555

iOS 6 or later supported.

Android 4.x or later is supported.

Re enabled indent and outdent seems to work now, Ive tested it.

Bug: T119086
Bug: T69328
Change-Id: If8ecc499c281c92c53982cee281a88119a773514
2015-11-19 19:32:21 +00:00

53 lines
1.7 KiB
JavaScript

define("ace/ext/statusbar",["require","exports","module","ace/lib/dom","ace/lib/lang"], function(require, exports, module) {
"use strict";
var dom = require("ace/lib/dom");
var lang = require("ace/lib/lang");
var StatusBar = function(editor, parentNode) {
this.element = dom.createElement("div");
this.element.className = "ace_status-indicator";
this.element.style.cssText = "display: inline-block;";
parentNode.appendChild(this.element);
var statusUpdate = lang.delayedCall(function(){
this.updateStatus(editor)
}.bind(this)).schedule.bind(null, 100);
editor.on("changeStatus", statusUpdate);
editor.on("changeSelection", statusUpdate);
editor.on("keyboardActivity", statusUpdate);
};
(function(){
this.updateStatus = function(editor) {
var status = [];
function add(str, separator) {
str && status.push(str, separator || "|");
}
add(editor.keyBinding.getStatusText(editor));
if (editor.commands.recording)
add("REC");
var sel = editor.selection;
var c = sel.lead;
if (!sel.isEmpty()) {
var r = editor.getSelectionRange();
add("(" + (r.end.row - r.start.row) + ":" +(r.end.column - r.start.column) + ")", " ");
}
add(c.row + ":" + c.column, " ");
if (sel.rangeCount)
add("[" + sel.rangeCount + "]", " ");
status.pop();
this.element.textContent = status.join("");
};
}).call(StatusBar.prototype);
exports.StatusBar = StatusBar;
});
(function() {
window.require(["ace/ext/statusbar"], function() {});
})();