Refactor contentType selection in glitch composer
This commit is contained in:
		
							parent
							
								
									2cd7bfac23
								
							
						
					
					
						commit
						4fbce23992
					
				@ -38,7 +38,6 @@ class ComposeForm extends ImmutablePureComponent {
 | 
			
		||||
    suggestions: ImmutablePropTypes.list,
 | 
			
		||||
    spoiler: PropTypes.bool,
 | 
			
		||||
    privacy: PropTypes.string,
 | 
			
		||||
    contentType: PropTypes.string,
 | 
			
		||||
    spoilerText: PropTypes.string,
 | 
			
		||||
    focusDate: PropTypes.instanceOf(Date),
 | 
			
		||||
    caretPosition: PropTypes.number,
 | 
			
		||||
@ -67,7 +66,6 @@ class ComposeForm extends ImmutablePureComponent {
 | 
			
		||||
    preselectOnReply: PropTypes.bool,
 | 
			
		||||
    onChangeSpoilerness: PropTypes.func,
 | 
			
		||||
    onChangeVisibility: PropTypes.func,
 | 
			
		||||
    onChangeContentType: PropTypes.func,
 | 
			
		||||
    onMount: PropTypes.func,
 | 
			
		||||
    onUnmount: PropTypes.func,
 | 
			
		||||
    onPaste: PropTypes.func,
 | 
			
		||||
@ -287,12 +285,10 @@ class ComposeForm extends ImmutablePureComponent {
 | 
			
		||||
      media,
 | 
			
		||||
      onChangeSpoilerness,
 | 
			
		||||
      onChangeVisibility,
 | 
			
		||||
      onChangeContentType,
 | 
			
		||||
      onClearSuggestions,
 | 
			
		||||
      onFetchSuggestions,
 | 
			
		||||
      onPaste,
 | 
			
		||||
      privacy,
 | 
			
		||||
      contentType,
 | 
			
		||||
      sensitive,
 | 
			
		||||
      showSearch,
 | 
			
		||||
      sideArm,
 | 
			
		||||
@ -360,11 +356,9 @@ class ComposeForm extends ImmutablePureComponent {
 | 
			
		||||
          advancedOptions={advancedOptions}
 | 
			
		||||
          disabled={isSubmitting}
 | 
			
		||||
          onChangeVisibility={onChangeVisibility}
 | 
			
		||||
          onChangeContentType={onChangeContentType}
 | 
			
		||||
          onToggleSpoiler={spoilersAlwaysOn ? null : onChangeSpoilerness}
 | 
			
		||||
          onUpload={onPaste}
 | 
			
		||||
          privacy={privacy}
 | 
			
		||||
          contentType={contentType}
 | 
			
		||||
          sensitive={sensitive || (spoilersAlwaysOn && spoilerText && spoilerText.length > 0)}
 | 
			
		||||
          spoiler={spoilersAlwaysOn ? (spoilerText && spoilerText.length > 0) : spoiler}
 | 
			
		||||
        />
 | 
			
		||||
@ -375,7 +369,6 @@ class ComposeForm extends ImmutablePureComponent {
 | 
			
		||||
          onSecondarySubmit={handleSecondarySubmit}
 | 
			
		||||
          onSubmit={handleSubmit}
 | 
			
		||||
          privacy={privacy}
 | 
			
		||||
          contentType={contentType}
 | 
			
		||||
          sideArm={sideArm}
 | 
			
		||||
        />
 | 
			
		||||
      </div>
 | 
			
		||||
 | 
			
		||||
@ -6,7 +6,6 @@ import {
 | 
			
		||||
  changeComposeSpoilerText,
 | 
			
		||||
  changeComposeSpoilerness,
 | 
			
		||||
  changeComposeVisibility,
 | 
			
		||||
  changeComposeContentType,
 | 
			
		||||
  clearComposeSuggestions,
 | 
			
		||||
  fetchComposeSuggestions,
 | 
			
		||||
  insertEmojiCompose,
 | 
			
		||||
@ -58,7 +57,6 @@ function mapStateToProps (state) {
 | 
			
		||||
    media: state.getIn(['compose', 'media_attachments']),
 | 
			
		||||
    preselectDate: state.getIn(['compose', 'preselectDate']),
 | 
			
		||||
    privacy: state.getIn(['compose', 'privacy']),
 | 
			
		||||
    contentType: state.getIn(['compose', 'content_type']),
 | 
			
		||||
    sideArm: sideArmPrivacy,
 | 
			
		||||
    sensitive: state.getIn(['compose', 'sensitive']),
 | 
			
		||||
    showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']),
 | 
			
		||||
@ -100,10 +98,6 @@ const mapDispatchToProps = (dispatch, { intl }) => ({
 | 
			
		||||
    dispatch(changeComposeSpoilerText(text));
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
  onChangeContentType(value) {
 | 
			
		||||
    dispatch(changeComposeContentType(value));
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
  onPaste(files) {
 | 
			
		||||
    dispatch(uploadCompose(files));
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
@ -2,8 +2,10 @@ import { connect } from 'react-redux';
 | 
			
		||||
import Options from '../components/options';
 | 
			
		||||
import {
 | 
			
		||||
  changeComposeAdvancedOption,
 | 
			
		||||
  changeComposeContentType,
 | 
			
		||||
  addPoll,
 | 
			
		||||
  removePoll,
 | 
			
		||||
} from 'flavours/glitch/actions/compose';
 | 
			
		||||
import { addPoll, removePoll } from 'flavours/glitch/actions/compose';
 | 
			
		||||
import { closeModal, openModal } from 'flavours/glitch/actions/modal';
 | 
			
		||||
 | 
			
		||||
function mapStateToProps (state) {
 | 
			
		||||
@ -18,6 +20,7 @@ function mapStateToProps (state) {
 | 
			
		||||
    hasMedia: media && !!media.size,
 | 
			
		||||
    allowPoll: !(media && !!media.size),
 | 
			
		||||
    showContentTypeChoice: state.getIn(['local_settings', 'show_content_type_choice']),
 | 
			
		||||
    contentType: state.getIn(['compose', 'content_type']),
 | 
			
		||||
  };
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@ -27,6 +30,10 @@ const mapDispatchToProps = (dispatch) => ({
 | 
			
		||||
    dispatch(changeComposeAdvancedOption(option, value));
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
  onChangeContentType(value) {
 | 
			
		||||
    dispatch(changeComposeContentType(value));
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
  onTogglePoll() {
 | 
			
		||||
    dispatch((_, getState) => {
 | 
			
		||||
      if (getState().getIn(['compose', 'poll'])) {
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user