Browse Source

Fix native share button not being displayed for unlisted toots (#13045)

master^2
ThibG 4 years ago
committed by GitHub
parent
commit
02236332ba
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 5 deletions
  1. +1
    -1
      app/javascript/mastodon/components/status_action_bar.js
  2. +2
    -4
      app/javascript/mastodon/features/status/components/action_bar.js

+ 1
- 1
app/javascript/mastodon/components/status_action_bar.js View File

@@ -319,7 +319,7 @@ class StatusActionBar extends ImmutablePureComponent {
replyTitle = intl.formatMessage(messages.replyAll);
}

const shareButton = ('share' in navigator) && status.get('visibility') === 'public' && (
const shareButton = ('share' in navigator) && publicStatus && (
<IconButton className='status__action-bar-button' title={intl.formatMessage(messages.share)} icon='share-alt' onClick={this.handleShareClick} />
);



+ 2
- 4
app/javascript/mastodon/features/status/components/action_bar.js View File

@@ -250,7 +250,7 @@ class ActionBar extends React.PureComponent {
}
}

const shareButton = ('share' in navigator) && status.get('visibility') === 'public' && (
const shareButton = ('share' in navigator) && publicStatus && (
<div className='detailed-status__button'><IconButton title={intl.formatMessage(messages.share)} icon='share-alt' onClick={this.handleShare} /></div>
);

@@ -265,12 +265,10 @@ class ActionBar extends React.PureComponent {
if (status.get('visibility') === 'direct') reblogIcon = 'envelope';
else if (status.get('visibility') === 'private') reblogIcon = 'lock';

let reblog_disabled = (status.get('visibility') === 'direct' || status.get('visibility') === 'private');

return (
<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'><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>
<div className='detailed-status__button'><IconButton disabled={!publicStatus} active={status.get('reblogged')} title={!publicStatus ? intl.formatMessage(messages.cannot_reblog) : intl.formatMessage(messages.reblog)} icon={reblogIcon} onClick={this.handleReblogClick} /></div>
<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>
{shareButton}
<div className='detailed-status__button'><IconButton className='bookmark-icon' active={status.get('bookmarked')} title={intl.formatMessage(messages.bookmark)} icon='bookmark' onClick={this.handleBookmarkClick} /></div>


Loading…
Cancel
Save