Hide content-type dropdown by default

master
Thibaut Girka 5 years ago committed by ThibG
parent c2fa36bbae
commit 9df1ef87c2
  1. 32
      app/javascript/flavours/glitch/features/compose/components/options.js
  2. 1
      app/javascript/flavours/glitch/features/compose/containers/options_container.js
  3. 8
      app/javascript/flavours/glitch/features/local_settings/page/index.js
  4. 1
      app/javascript/flavours/glitch/reducers/local_settings.js

@ -140,6 +140,7 @@ class ComposerOptions extends ImmutablePureComponent {
contentType: PropTypes.string,
resetFileKey: PropTypes.number,
spoiler: PropTypes.bool,
showContentTypeChoice: PropTypes.bool,
};
// Handles file selection.
@ -197,6 +198,7 @@ class ComposerOptions extends ImmutablePureComponent {
privacy,
resetFileKey,
spoiler,
showContentTypeChoice,
} = this.props;
// We predefine our privacy items so that we can easily pick the
@ -310,20 +312,22 @@ class ComposerOptions extends ImmutablePureComponent {
title={intl.formatMessage(messages.change_privacy)}
value={privacy}
/>
<Dropdown
disabled={disabled}
icon={(contentTypeItems[contentType.split('/')[1]] || {}).icon}
items={[
contentTypeItems.plain,
contentTypeItems.html,
contentTypeItems.markdown,
]}
onChange={onChangeContentType}
onModalClose={onModalClose}
onModalOpen={onModalOpen}
title={intl.formatMessage(messages.content_type)}
value={contentType}
/>
{showContentTypeChoice && (
<Dropdown
disabled={disabled}
icon={(contentTypeItems[contentType.split('/')[1]] || {}).icon}
items={[
contentTypeItems.plain,
contentTypeItems.html,
contentTypeItems.markdown,
]}
onChange={onChangeContentType}
onModalClose={onModalClose}
onModalOpen={onModalOpen}
title={intl.formatMessage(messages.content_type)}
value={contentType}
/>
)}
{onToggleSpoiler && (
<TextIconButton
active={spoiler}

@ -17,6 +17,7 @@ function mapStateToProps (state) {
allowMedia: !poll && (media ? media.size < 4 && !media.some(item => item.get('type') === 'video') : true),
hasMedia: media && !!media.size,
allowPoll: !(media && !!media.size),
showContentTypeChoice: state.getIn(['local_settings', 'show_content_type_choice']),
};
};

@ -151,6 +151,14 @@ export default class LocalSettingsPage extends React.PureComponent {
>
<FormattedMessage id='settings.confirm_before_clearing_draft' defaultMessage='Show confirmation dialog before overwriting the message being composed' />
</LocalSettingsPageItem>
<LocalSettingsPageItem
settings={settings}
item={['show_content_type_choice']}
id='mastodon-settings--show_content_type_choice'
onChange={onChange}
>
<FormattedMessage id='settings.show_content_type_choice' defaultMessage='Show content-type choice when authoring toots' />
</LocalSettingsPageItem>
<LocalSettingsPageItem
settings={settings}
item={['side_arm']}

@ -19,6 +19,7 @@ const initialState = ImmutableMap({
preselect_on_reply: true,
inline_preview_cards: true,
hicolor_privacy_icons: false,
show_content_type_choice: false,
content_warnings : ImmutableMap({
auto_unfold : false,
filter : null,

Loading…
Cancel
Save