Fix selection resetting in compose form after unrelated data updates

This commit is contained in:
Eugen Rochko 2017-01-05 14:06:09 +01:00
parent 10e6288444
commit ca7dce4a5a
1 changed files with 4 additions and 4 deletions

View File

@ -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();
} }
}, },