Style improvements, star icon -> thumbs up

merge-requests/18/head
Alex Gleason 2020-05-20 14:44:23 -05:00
rodzic 26ca01521c
commit 92917ac3e5
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 7211D1F99744FBB7
7 zmienionych plików z 34 dodań i 23 usunięć

Wyświetl plik

@ -294,7 +294,7 @@ class StatusActionBar extends ImmutablePureComponent {
{reblogCount !== 0 && <Link to={`/@${status.getIn(['account', 'acct'])}/posts/${status.get('id')}/reblogs`} className='detailed-status__link'>{reblogCount}</Link>} {reblogCount !== 0 && <Link to={`/@${status.getIn(['account', 'acct'])}/posts/${status.get('id')}/reblogs`} className='detailed-status__link'>{reblogCount}</Link>}
</div> </div>
<div className='status__action-bar__counter'> <div className='status__action-bar__counter'>
<IconButton className='status__action-bar-button star-icon' animate active={status.get('favourited')} pressed={status.get('favourited')} title={intl.formatMessage(messages.favourite)} icon='star' onClick={this.handleFavouriteClick} /> <IconButton className='status__action-bar-button star-icon' animate active={status.get('favourited')} pressed={status.get('favourited')} title={intl.formatMessage(messages.favourite)} icon='thumbs-up' onClick={this.handleFavouriteClick} />
{favoriteCount !== 0 && <span className='detailed-status__link'>{favoriteCount}</span>} {favoriteCount !== 0 && <span className='detailed-status__link'>{favoriteCount}</span>}
</div> </div>
{shareButton} {shareButton}

Wyświetl plik

@ -232,9 +232,18 @@ class ActionBar extends React.PureComponent {
return ( return (
<div className='detailed-status__action-bar'> <div className='detailed-status__action-bar'>
<div className='detailed-status__button'><IconButton title={intl.formatMessage(messages.reply)} icon={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? 'reply' : replyIcon} onClick={this.handleReplyClick} /></div> <div className='detailed-status__button'>
<div className='detailed-status__button'><IconButton disabled={reblog_disabled} active={status.get('reblogged')} title={reblog_disabled ? intl.formatMessage(messages.cannot_reblog) : intl.formatMessage(messages.reblog)} icon={reblogIcon} onClick={this.handleReblogClick} /></div> <IconButton title={intl.formatMessage(messages.reply)} icon={status.get('in_reply_to_account_id') === status.getIn(['account', 'id']) ? 'reply' : replyIcon} onClick={this.handleReplyClick} />
<div className='detailed-status__button'><IconButton className='star-icon' animate active={status.get('favourited')} title={intl.formatMessage(messages.favourite)} icon='star' onClick={this.handleFavouriteClick} /></div> Reply
</div>
<div className='detailed-status__button'>
<IconButton disabled={reblog_disabled} active={status.get('reblogged')} title={reblog_disabled ? intl.formatMessage(messages.cannot_reblog) : intl.formatMessage(messages.reblog)} icon={reblogIcon} onClick={this.handleReblogClick} />
Boost
</div>
<div className='detailed-status__button'>
<IconButton className='star-icon' animate active={status.get('favourited')} title={intl.formatMessage(messages.favourite)} icon='thumbs-up' onClick={this.handleFavouriteClick} />
Like
</div>
{shareButton} {shareButton}
<div className='detailed-status__action-bar-dropdown'> <div className='detailed-status__action-bar-dropdown'>

Wyświetl plik

@ -14,6 +14,7 @@ import scheduleIdleTask from '../../ui/util/schedule_idle_task';
import classNames from 'classnames'; import classNames from 'classnames';
import Icon from 'gabsocial/components/icon'; import Icon from 'gabsocial/components/icon';
import PollContainer from 'gabsocial/containers/poll_container'; import PollContainer from 'gabsocial/containers/poll_container';
import { StatusInteractionBar } from './status_interaction_bar';
export default class DetailedStatus extends ImmutablePureComponent { export default class DetailedStatus extends ImmutablePureComponent {
@ -92,7 +93,6 @@ export default class DetailedStatus extends ImmutablePureComponent {
let applicationLink = ''; let applicationLink = '';
let reblogLink = ''; let reblogLink = '';
let reblogIcon = 'retweet'; let reblogIcon = 'retweet';
let favouriteLink = '';
if (this.props.measureHeight) { if (this.props.measureHeight) {
outerStyle.height = `${this.state.height}px`; outerStyle.height = `${this.state.height}px`;
@ -169,15 +169,6 @@ export default class DetailedStatus extends ImmutablePureComponent {
); );
} }
favouriteLink = (
<span className='detailed-status__link'>
<Icon id='star' />
<span className='detailed-status__favorites'>
<FormattedNumber value={status.get('favourites_count')} />
</span>
</span>
);
return ( return (
<div style={outerStyle}> <div style={outerStyle}>
<div ref={this.setRef} className={classNames('detailed-status', { compact })}> <div ref={this.setRef} className={classNames('detailed-status', { compact })}>
@ -197,9 +188,12 @@ export default class DetailedStatus extends ImmutablePureComponent {
{media} {media}
<div className='detailed-status__meta'> <div className='detailed-status__meta'>
<a className='detailed-status__datetime' href={status.get('url')} target='_blank' rel='noopener'> <StatusInteractionBar status={status} />
<FormattedDate value={new Date(status.get('created_at'))} hour12={false} year='numeric' month='short' day='2-digit' hour='2-digit' minute='2-digit' /> <div>
</a>{applicationLink} · {reblogLink} · {favouriteLink} {reblogLink} {applicationLink} · <a className='detailed-status__datetime' href={status.get('url')} target='_blank' rel='noopener'>
<FormattedDate value={new Date(status.get('created_at'))} hour12={false} year='numeric' month='short' day='2-digit' hour='2-digit' minute='2-digit' />
</a>
</div>
</div> </div>
</div> </div>
</div> </div>

Wyświetl plik

@ -22,9 +22,7 @@ export class StatusInteractionBar extends React.Component {
acc + cur.get('count') acc + cur.get('count')
), 0); ), 0);
if (count < 1) return null; const EmojiReactsContainer = () => (
return (
<div className='emoji-reacts-container'> <div className='emoji-reacts-container'>
<div className='emoji-reacts'> <div className='emoji-reacts'>
{emojiReacts.map((e, i) => ( {emojiReacts.map((e, i) => (
@ -42,6 +40,12 @@ export class StatusInteractionBar extends React.Component {
</div> </div>
</div> </div>
); );
return (
<div className='status-interaction-bar'>
{count > 0 && <EmojiReactsContainer />}
</div>
);
} }
} }

Wyświetl plik

@ -43,7 +43,6 @@ import { attachFullscreenListener, detachFullscreenListener, isFullscreen } from
import { textForScreenReader, defaultMediaVisibility } from '../../components/status'; import { textForScreenReader, defaultMediaVisibility } from '../../components/status';
import Icon from 'gabsocial/components/icon'; import Icon from 'gabsocial/components/icon';
import { getSettings } from 'gabsocial/actions/settings'; import { getSettings } from 'gabsocial/actions/settings';
import { StatusInteractionBar } from './components/status_interaction_bar';
const messages = defineMessages({ const messages = defineMessages({
deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' }, deleteConfirm: { id: 'confirmations.delete.confirm', defaultMessage: 'Delete' },
@ -493,8 +492,6 @@ class Status extends ImmutablePureComponent {
onToggleMediaVisibility={this.handleToggleMediaVisibility} onToggleMediaVisibility={this.handleToggleMediaVisibility}
/> />
<StatusInteractionBar status={status} />
<ActionBar <ActionBar
status={status} status={status}
onReply={this.handleReplyClick} onReply={this.handleReplyClick}

Wyświetl plik

@ -768,6 +768,7 @@
color: $dark-text-color; color: $dark-text-color;
font-size: 14px; font-size: 14px;
line-height: 18px; line-height: 18px;
display: flex;
} }
.detailed-status__action-bar { .detailed-status__action-bar {

Wyświetl plik

@ -24,8 +24,14 @@
flex-direction: row-reverse; flex-direction: row-reverse;
} }
.status-interaction-bar {
margin-right: auto;
min-height: 20px;
}
.emoji-reacts-container { .emoji-reacts-container {
display: inline-flex; display: inline-flex;
margin-right: auto;
&:hover { &:hover {
.emoji-react { .emoji-react {