From 4fd71accd419fb79cc75e0ebf30df374d174ebf5 Mon Sep 17 00:00:00 2001
From: Emelia Smith <ThisIsMissEm@users.noreply.github.com>
Date: Mon, 2 Apr 2018 13:44:19 +0200
Subject: [PATCH] Fix issues with sending direct messages from user profile
 (#6999)

* Clear compose textarea when starting a new direct message

Previous behaviour resulted in potentially misdirected direct messages.

* Hide search when starting to compose a direct message
---
 app/javascript/mastodon/reducers/compose.js | 2 +-
 app/javascript/mastodon/reducers/search.js  | 7 ++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/app/javascript/mastodon/reducers/compose.js b/app/javascript/mastodon/reducers/compose.js
index a48c46941e..1f41775855 100644
--- a/app/javascript/mastodon/reducers/compose.js
+++ b/app/javascript/mastodon/reducers/compose.js
@@ -265,7 +265,7 @@ export default function compose(state = initialState, action) {
       .set('idempotencyKey', uuid());
   case COMPOSE_DIRECT:
     return state
-      .update('text', text => `${text}@${action.account.get('acct')} `)
+      .update('text', text => `@${action.account.get('acct')} `)
       .set('privacy', 'direct')
       .set('focusDate', new Date())
       .set('idempotencyKey', uuid());
diff --git a/app/javascript/mastodon/reducers/search.js b/app/javascript/mastodon/reducers/search.js
index 08d90e4e83..56fd7226b4 100644
--- a/app/javascript/mastodon/reducers/search.js
+++ b/app/javascript/mastodon/reducers/search.js
@@ -4,7 +4,11 @@ import {
   SEARCH_FETCH_SUCCESS,
   SEARCH_SHOW,
 } from '../actions/search';
-import { COMPOSE_MENTION, COMPOSE_REPLY } from '../actions/compose';
+import {
+  COMPOSE_MENTION,
+  COMPOSE_REPLY,
+  COMPOSE_DIRECT,
+} from '../actions/compose';
 import { Map as ImmutableMap, List as ImmutableList } from 'immutable';
 
 const initialState = ImmutableMap({
@@ -29,6 +33,7 @@ export default function search(state = initialState, action) {
     return state.set('hidden', false);
   case COMPOSE_REPLY:
   case COMPOSE_MENTION:
+  case COMPOSE_DIRECT:
     return state.set('hidden', true);
   case SEARCH_FETCH_SUCCESS:
     return state.set('results', ImmutableMap({
-- 
GitLab