mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/CodeEditor
synced 2024-12-24 20:43:25 +00:00
28c4b5ac10
This should be merged at the same time as it's followup patch, which fixes an issue with loading webworkers when hosted on protocol relative URLs. Amongst other issues, it fixes bug 60156 with } pairing Bug: 60156 Change-Id: I962c70ea2a07d27e0c3774095d63f9a5cd3de76e
51 lines
1.6 KiB
JavaScript
51 lines
1.6 KiB
JavaScript
define('ace/ext/statusbar', ['require', 'exports', 'module' , 'ace/lib/dom', 'ace/lib/lang'], function(require, exports, module) {
|
|
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));
|
|
editor.on("changeStatus", function() {
|
|
statusUpdate.schedule(100);
|
|
});
|
|
editor.on("changeSelection", function() {
|
|
statusUpdate.schedule(100);
|
|
});
|
|
};
|
|
|
|
(function(){
|
|
this.updateStatus = function(editor) {
|
|
var status = [];
|
|
function add(str, separator) {
|
|
str && status.push(str, separator || "|");
|
|
}
|
|
|
|
if (editor.$vimModeHandler)
|
|
add(editor.$vimModeHandler.getStatusText());
|
|
else if (editor.commands.recording)
|
|
add("REC");
|
|
|
|
var c = editor.selection.lead;
|
|
add(c.row + ":" + c.column, " ");
|
|
if (!editor.selection.isEmpty()) {
|
|
var r = editor.getSelectionRange();
|
|
add("(" + (r.end.row - r.start.row) + ":" +(r.end.column - r.start.column) + ")");
|
|
}
|
|
status.pop();
|
|
this.element.textContent = status.join("");
|
|
};
|
|
}).call(StatusBar.prototype);
|
|
|
|
exports.StatusBar = StatusBar;
|
|
|
|
});;
|
|
(function() {
|
|
window.require(["ace/ext/statusbar"], function() {});
|
|
})();
|
|
|