]> cat aescling's git repositories - mastodon.git/commitdiff
Automatically position cursor when writing a reply toot
authorMisty De Meo <mistydemeo@gmail.com>
Thu, 5 Jan 2017 04:04:14 +0000 (20:04 -0800)
committerMisty De Meo <mistydemeo@gmail.com>
Thu, 5 Jan 2017 04:04:14 +0000 (20:04 -0800)
app/assets/javascripts/components/features/compose/components/compose_form.jsx

index 412c29310723bec03ea8c479e754d754e623cdcd..44c44bcb0ece442fab463d79aac42b19bc227cb2 100644 (file)
@@ -86,6 +86,13 @@ const ComposeForm = React.createClass({
 
   componentDidUpdate (prevProps) {
     if (prevProps.in_reply_to !== this.props.in_reply_to) {
+      // 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);
+
       this.autosuggestTextarea.textarea.focus();
     }
   },