From 056f9bf3c296240cb55c356148c36332748fec31 Mon Sep 17 00:00:00 2001 From: Claire Date: Fri, 23 Feb 2024 01:43:21 +0100 Subject: [PATCH] =?UTF-8?q?Add=20back=20=E2=80=9Cspoilers=20always=20on?= =?UTF-8?q?=E2=80=9D=20feature?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../glitch/features/compose/components/compose_form.jsx | 3 ++- .../glitch/features/compose/components/sensitive_button.jsx | 3 ++- .../features/compose/containers/compose_form_container.js | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/app/javascript/flavours/glitch/features/compose/components/compose_form.jsx b/app/javascript/flavours/glitch/features/compose/components/compose_form.jsx index 737bbfc126..43e4a9d6cb 100644 --- a/app/javascript/flavours/glitch/features/compose/components/compose_form.jsx +++ b/app/javascript/flavours/glitch/features/compose/components/compose_form.jsx @@ -48,6 +48,7 @@ class ComposeForm extends ImmutablePureComponent { text: PropTypes.string.isRequired, suggestions: ImmutablePropTypes.list, spoiler: PropTypes.bool, + spoilerAlwaysOn: PropTypes.bool, privacy: PropTypes.string, spoilerText: PropTypes.string, focusDate: PropTypes.instanceOf(Date), @@ -296,7 +297,7 @@ class ComposeForm extends ImmutablePureComponent {
- + {!this.props.spoilerAlwaysOn && }
diff --git a/app/javascript/flavours/glitch/features/compose/components/sensitive_button.jsx b/app/javascript/flavours/glitch/features/compose/components/sensitive_button.jsx index 37debf9dd7..deb401bfb7 100644 --- a/app/javascript/flavours/glitch/features/compose/components/sensitive_button.jsx +++ b/app/javascript/flavours/glitch/features/compose/components/sensitive_button.jsx @@ -24,8 +24,9 @@ export const SensitiveButton = () => { const spoilersAlwaysOn = useAppSelector((state) => state.getIn(['local_settings', 'always_show_spoilers_field'])); const spoilerText = useAppSelector((state) => state.getIn(['compose', 'spoiler_text'])); const sensitive = useAppSelector((state) => state.getIn(['compose', 'sensitive'])); - const disabled = useAppSelector((state) => state.getIn(['compose', 'spoiler'])); + const spoiler = useAppSelector((state) => state.getIn(['compose', 'spoiler'])); const mediaCount = useAppSelector((state) => state.getIn(['compose', 'media_attachments']).size); + const disabled = spoilersAlwaysOn ? (spoilerText && spoilerText.length > 0) : spoiler; const active = sensitive || (spoilersAlwaysOn && spoilerText && spoilerText.length > 0); diff --git a/app/javascript/flavours/glitch/features/compose/containers/compose_form_container.js b/app/javascript/flavours/glitch/features/compose/containers/compose_form_container.js index ba20698bac..90de5c8de6 100644 --- a/app/javascript/flavours/glitch/features/compose/containers/compose_form_container.js +++ b/app/javascript/flavours/glitch/features/compose/containers/compose_form_container.js @@ -15,7 +15,8 @@ import ComposeForm from '../components/compose_form'; const mapStateToProps = state => ({ text: state.getIn(['compose', 'text']), suggestions: state.getIn(['compose', 'suggestions']), - spoiler: state.getIn(['compose', 'spoiler']), + spoiler: state.getIn(['local_settings', 'always_show_spoilers_field']) || state.getIn(['compose', 'spoiler']), + spoilerAlwaysOn: state.getIn(['local_settings', 'always_show_spoilers_field']), spoilerText: state.getIn(['compose', 'spoiler_text']), privacy: state.getIn(['compose', 'privacy']), focusDate: state.getIn(['compose', 'focusDate']),