From f8f40f15dafca65dc07d5c5c19fb9a9dc3473dd6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 24 Oct 2016 17:11:02 +0200 Subject: Move status components inside individual containers. We still need to select all statuses/accounts to assemble, but at least lists don't have to be re-rendered all the time now. Also add "mention" dropdown option --- .../features/account/components/action_bar.jsx | 19 +++++++++++-------- .../javascripts/components/features/account/index.jsx | 7 ++++++- 2 files changed, 17 insertions(+), 9 deletions(-) (limited to 'app/assets/javascripts/components/features/account') diff --git a/app/assets/javascripts/components/features/account/components/action_bar.jsx b/app/assets/javascripts/components/features/account/components/action_bar.jsx index 0f26b1e5a..195b143af 100644 --- a/app/assets/javascripts/components/features/account/components/action_bar.jsx +++ b/app/assets/javascripts/components/features/account/components/action_bar.jsx @@ -8,7 +8,8 @@ const ActionBar = React.createClass({ account: ImmutablePropTypes.map.isRequired, me: React.PropTypes.number.isRequired, onFollow: React.PropTypes.func.isRequired, - onBlock: React.PropTypes.func.isRequired + onBlock: React.PropTypes.func.isRequired, + onMention: React.PropTypes.func.isRequired }, mixins: [PureRenderMixin], @@ -18,6 +19,8 @@ const ActionBar = React.createClass({ let menu = []; + menu.push({ text: 'Mention', action: this.props.onMention }); + if (account.get('id') === me) { menu.push({ text: 'Edit profile', href: '/settings/profile' }); } else if (account.getIn(['relationship', 'blocking'])) { @@ -32,26 +35,26 @@ const ActionBar = React.createClass({ return (
+
+ +
+
-
+
Posts {account.get('statuses_count')}
-
+
Follows {account.get('following_count')}
-
+
Followers {account.get('followers_count')}
- -
- -
); }, diff --git a/app/assets/javascripts/components/features/account/index.jsx b/app/assets/javascripts/components/features/account/index.jsx index 83770eb74..76d69f751 100644 --- a/app/assets/javascripts/components/features/account/index.jsx +++ b/app/assets/javascripts/components/features/account/index.jsx @@ -10,6 +10,7 @@ import { fetchAccountTimeline, expandAccountTimeline } from '../../actions/accounts'; +import { mentionCompose } from '../../actions/compose'; import Header from './components/header'; import { getAccountTimeline, @@ -62,6 +63,10 @@ const Account = React.createClass({ } }, + handleMention () { + this.props.dispatch(mentionCompose(this.props.account)); + }, + render () { const { account, me } = this.props; @@ -78,7 +83,7 @@ const Account = React.createClass({
- + {this.props.children} -- cgit