Allow mode behaviours to be disabled at the editor level
This commit is contained in:
parent
138ec94f53
commit
8e7f4f2716
1 changed files with 21 additions and 8 deletions
|
|
@ -413,10 +413,12 @@ var Editor =function(renderer, session) {
|
|||
|
||||
var cursor = this.getCursorPosition();
|
||||
|
||||
// Get a transform if the current mode wants one.
|
||||
var transform = mode.transformInsert(session.getState(cursor.row), this, session, text);
|
||||
if (transform)
|
||||
text = transform.text;
|
||||
if (this.getBehavioursEnabled()) {
|
||||
// Get a transform if the current mode wants one.
|
||||
var transform = mode.transformInsert(session.getState(cursor.row), this, session, text);
|
||||
if (transform)
|
||||
text = transform.text;
|
||||
}
|
||||
|
||||
text = text.replace("\t", this.session.getTabString());
|
||||
|
||||
|
|
@ -603,6 +605,15 @@ var Editor =function(renderer, session) {
|
|||
this.getReadOnly = function() {
|
||||
return this.$readOnly;
|
||||
};
|
||||
|
||||
this.$modeBehaviours = true;
|
||||
this.setBehavioursEnabled = function (enabled) {
|
||||
this.$modeBehaviours = enabled;
|
||||
}
|
||||
|
||||
this.getBehavioursEnabled = function () {
|
||||
return this.$modeBehaviours;
|
||||
}
|
||||
|
||||
this.removeRight = function() {
|
||||
if (this.$readOnly)
|
||||
|
|
@ -622,10 +633,12 @@ var Editor =function(renderer, session) {
|
|||
if (this.selection.isEmpty())
|
||||
this.selection.selectLeft();
|
||||
|
||||
var session = this.session;
|
||||
var selection = this.getSelectionRange();
|
||||
var state = session.getState(selection.start.row);
|
||||
var range = session.getMode().transformRemove(state, this, session, selection);
|
||||
var range = this.getSelectionRange();
|
||||
if (this.getBehavioursEnabled()) {
|
||||
var session = this.session;
|
||||
var state = session.getState(range.start.row);
|
||||
range = session.getMode().transformRemove(state, this, session, range);
|
||||
}
|
||||
|
||||
this.session.remove(range);
|
||||
this.clearSelection();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue