about summary refs log tree commit diff
path: root/app/assets/javascripts/components/features/compose
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2017-01-05 14:06:09 +0100
committerEugen Rochko <eugen@zeonfederated.com>2017-01-05 14:11:18 +0100
commitca7dce4a5a0234461fee554153d9328bc246ee55 (patch)
treeb63344ef23b6e6f597e9011bb82b3395406108a2 /app/assets/javascripts/components/features/compose
parent10e6288444567106570baf317801d99989e2df83 (diff)
Fix selection resetting in compose form after unrelated data updates
Diffstat (limited to 'app/assets/javascripts/components/features/compose')
-rw-r--r--app/assets/javascripts/components/features/compose/components/compose_form.jsx8
1 files changed, 4 insertions, 4 deletions
diff --git a/app/assets/javascripts/components/features/compose/components/compose_form.jsx b/app/assets/javascripts/components/features/compose/components/compose_form.jsx
index 44c44bcb0..8128bb382 100644
--- a/app/assets/javascripts/components/features/compose/components/compose_form.jsx
+++ b/app/assets/javascripts/components/features/compose/components/compose_form.jsx
@@ -85,14 +85,14 @@ const ComposeForm = React.createClass({
   },
 
   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 more than one user, selects any usernames past the first;
       // this provides a convenient shortcut to drop everyone else from the conversation.
-      let selectionStart = this.props.text.search(/\s/) + 1;
-      let selectionEnd = this.props.text.length;
-      this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);
+      const selectionStart = this.props.text.search(/\s/) + 1;
+      const selectionEnd = this.props.text.length;
 
+      this.autosuggestTextarea.textarea.setSelectionRange(selectionStart, selectionEnd);
       this.autosuggestTextarea.textarea.focus();
     }
   },