Fix selection resetting in compose form after unrelated data updates
parent
10e6288444
commit
ca7dce4a5a
|
@ -85,14 +85,14 @@ const ComposeForm = React.createClass({
|
||||||
},
|
},
|
||||||
|
|
||||||
componentDidUpdate (prevProps) {
|
componentDidUpdate (prevProps) {
|
||||||
if (prevProps.in_reply_to !== this.props.in_reply_to) {
|
if (!prevProps.in_reply_to || !this.props.in_reply_to || prevProps.in_reply_to.get('id') !== this.props.in_reply_to.get('id')) {
|
||||||
// If replying to zero or one users, places the cursor at the end of the textbox.
|
// If replying to zero or one users, places the cursor at the end of the textbox.
|
||||||
// If replying to more than one user, selects any usernames past the first;
|
// If replying to more than one user, selects any usernames past the first;
|
||||||
// this provides a convenient shortcut to drop everyone else from the conversation.
|
// this provides a convenient shortcut to drop everyone else from the conversation.
|
||||||
let selectionStart = this.props.text.search(/\s/) + 1;
|
const selectionStart = this.props.text.search(/\s/) + 1;
|
||||||
let selectionEnd = this.props.text.length;
|
const selectionEnd = this.props.text.length;
|
||||||
this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);
|
|
||||||
|
|
||||||
|
this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);
|
||||||
this.autosuggestTextarea.textarea.focus();
|
this.autosuggestTextarea.textarea.focus();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
Reference in New Issue