1
0
mirror of https://github.com/matrix-org/matrix-react-sdk.git synced 2025-11-19 05:22:13 +03:00

pass caret to history manager upon initial render

otherwise caret is put at editor start when undoing last step
This commit is contained in:
Bruno Windels
2019-08-01 11:28:01 +02:00
parent 234404e598
commit 9d49a5bb73

View File

@@ -315,9 +315,7 @@ export default class MessageEditor extends React.Component {
componentDidMount() {
this._createEditorModel();
// initial render of model
this._updateEditorState();
// initial caret position
this._initializeCaret();
this._updateEditorState(this._getInitialCaretPosition());
// attach input listener by hand so React doesn't proxy the events,
// as the proxied event doesn't support inputType, which we need.
this._editorRef.addEventListener("input", this._onInput, true);
@@ -350,7 +348,7 @@ export default class MessageEditor extends React.Component {
);
}
_initializeCaret() {
_getInitialCaretPosition() {
const {editState} = this.props;
let caretPosition;
if (editState.hasEditorState()) {
@@ -362,7 +360,7 @@ export default class MessageEditor extends React.Component {
// otherwise, set it at the end
caretPosition = this.model.getPositionAtEnd();
}
setCaretPosition(this._editorRef, this.model, caretPosition);
return caretPosition;
}
render() {