Merge pull request #3874 from matrix-org/dbkr/fix_editor_modified_flag_2
Fix arrows keys moving through edit history
This commit is contained in:
commit
a849826a41
1 changed files with 4 additions and 1 deletions
|
@ -126,7 +126,6 @@ export default class BasicMessageEditor extends React.Component {
|
|||
}
|
||||
|
||||
_updateEditorState = (selection, inputType, diff) => {
|
||||
this._modifiedFlag = true;
|
||||
renderModel(this._editorRef, this.props.model);
|
||||
if (selection) { // set the caret/selection
|
||||
try {
|
||||
|
@ -211,6 +210,7 @@ export default class BasicMessageEditor extends React.Component {
|
|||
event.clipboardData.setData("application/x-riot-composer", JSON.stringify(selectedParts));
|
||||
if (type === "cut") {
|
||||
// Remove the text, updating the model as appropriate
|
||||
this._modifiedFlag = true;
|
||||
replaceRangeAndMoveCaret(range, []);
|
||||
}
|
||||
event.preventDefault();
|
||||
|
@ -238,6 +238,7 @@ export default class BasicMessageEditor extends React.Component {
|
|||
const text = event.clipboardData.getData("text/plain");
|
||||
parts = parsePlainTextMessage(text, partCreator);
|
||||
}
|
||||
this._modifiedFlag = true;
|
||||
const range = getRangeForSelection(this._editorRef, model, document.getSelection());
|
||||
replaceRangeAndMoveCaret(range, parts);
|
||||
event.preventDefault();
|
||||
|
@ -248,6 +249,7 @@ export default class BasicMessageEditor extends React.Component {
|
|||
if (this._isIMEComposing) {
|
||||
return;
|
||||
}
|
||||
this._modifiedFlag = true;
|
||||
const sel = document.getSelection();
|
||||
const {caret, text} = getCaretOffsetAndText(this._editorRef, sel);
|
||||
this.props.model.update(text, event.inputType, caret);
|
||||
|
@ -258,6 +260,7 @@ export default class BasicMessageEditor extends React.Component {
|
|||
const {caret, text} = getCaretOffsetAndText(this._editorRef, sel);
|
||||
const newText = text.substr(0, caret.offset) + textToInsert + text.substr(caret.offset);
|
||||
caret.offset += textToInsert.length;
|
||||
this._modifiedFlag = true;
|
||||
this.props.model.update(newText, inputType, caret);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue