diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2016-10-24 18:07:40 +0200 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2016-10-24 18:08:23 +0200 |
commit | de50eff6acda8b28940cff9b955cfbded3c68b58 (patch) | |
tree | 314686b14b18c144de9740c54c2c672dd02d85ed /app/assets/javascripts/components/features/status | |
parent | f8f40f15dafca65dc07d5c5c19fb9a9dc3473dd6 (diff) |
Add opening images in a modal window
Diffstat (limited to 'app/assets/javascripts/components/features/status')
-rw-r--r-- | app/assets/javascripts/components/features/status/components/detailed_status.jsx | 5 | ||||
-rw-r--r-- | app/assets/javascripts/components/features/status/index.jsx | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/app/assets/javascripts/components/features/status/components/detailed_status.jsx b/app/assets/javascripts/components/features/status/components/detailed_status.jsx index ffa536ae8..9f8e9b6cc 100644 --- a/app/assets/javascripts/components/features/status/components/detailed_status.jsx +++ b/app/assets/javascripts/components/features/status/components/detailed_status.jsx @@ -14,7 +14,8 @@ const DetailedStatus = React.createClass({ }, propTypes: { - status: ImmutablePropTypes.map.isRequired + status: ImmutablePropTypes.map.isRequired, + onOpenMedia: React.PropTypes.func.isRequired }, mixins: [PureRenderMixin], @@ -36,7 +37,7 @@ const DetailedStatus = React.createClass({ if (status.getIn(['media_attachments', 0, 'type']) === 'video') { media = <VideoPlayer media={status.getIn(['media_attachments', 0])} width={317} height={178} />; } else { - media = <MediaGallery media={status.get('media_attachments')} height={300} />; + media = <MediaGallery media={status.get('media_attachments')} height={300} onOpenMedia={this.props.onOpenMedia} />; } } diff --git a/app/assets/javascripts/components/features/status/index.jsx b/app/assets/javascripts/components/features/status/index.jsx index f4ca8ff92..dc29a87c7 100644 --- a/app/assets/javascripts/components/features/status/index.jsx +++ b/app/assets/javascripts/components/features/status/index.jsx @@ -22,6 +22,7 @@ import { import { ScrollContainer } from 'react-router-scroll'; import ColumnBackButton from '../../components/column_back_button'; import StatusContainer from '../../containers/status_container'; +import { openMedia } from '../../actions/modal'; const makeMapStateToProps = () => { const getStatus = makeGetStatus(); @@ -78,6 +79,10 @@ const Status = React.createClass({ this.props.dispatch(mentionCompose(account)); }, + handleOpenMedia (url) { + this.props.dispatch(openMedia(url)); + }, + renderChildren (list) { return list.map(id => <StatusContainer key={id} id={id} />); }, @@ -112,7 +117,7 @@ const Status = React.createClass({ <div style={{ overflowY: 'scroll', flex: '1 1 auto' }} className='scrollable'> {ancestors} - <DetailedStatus status={status} me={me} /> + <DetailedStatus status={status} me={me} onOpenMedia={this.handleOpenMedia} /> <ActionBar status={status} me={me} onReply={this.handleReplyClick} onFavourite={this.handleFavouriteClick} onReblog={this.handleReblogClick} onDelete={this.handleDeleteClick} onMention={this.handleMentionClick} /> {descendants} |