Fix ctrl+enter not submitting toot when text cursor is composing image description (#8273)
This commit is contained in:
		
							parent
							
								
									298ee84488
								
							
						
					
					
						commit
						7a0f781aa9
					
				@ -20,6 +20,7 @@ export default class Upload extends ImmutablePureComponent {
 | 
			
		||||
    onUndo: PropTypes.func.isRequired,
 | 
			
		||||
    onDescriptionChange: PropTypes.func.isRequired,
 | 
			
		||||
    onOpenFocalPoint: PropTypes.func.isRequired,
 | 
			
		||||
    onSubmit: PropTypes.func.isRequired,
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  state = {
 | 
			
		||||
@ -28,6 +29,17 @@ export default class Upload extends ImmutablePureComponent {
 | 
			
		||||
    dirtyDescription: null,
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  handleKeyDown = (e) => {
 | 
			
		||||
    if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) {
 | 
			
		||||
      this.handleSubmit();
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  handleSubmit = () => {
 | 
			
		||||
    this.handleInputBlur();
 | 
			
		||||
    this.props.onSubmit();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  handleUndoClick = () => {
 | 
			
		||||
    this.props.onUndo(this.props.media.get('id'));
 | 
			
		||||
  }
 | 
			
		||||
@ -93,6 +105,7 @@ export default class Upload extends ImmutablePureComponent {
 | 
			
		||||
                    onFocus={this.handleInputFocus}
 | 
			
		||||
                    onChange={this.handleInputChange}
 | 
			
		||||
                    onBlur={this.handleInputBlur}
 | 
			
		||||
                    onKeyDown={this.handleKeyDown}
 | 
			
		||||
                  />
 | 
			
		||||
                </label>
 | 
			
		||||
              </div>
 | 
			
		||||
 | 
			
		||||
@ -2,6 +2,7 @@ import { connect } from 'react-redux';
 | 
			
		||||
import Upload from '../components/upload';
 | 
			
		||||
import { undoUploadCompose, changeUploadCompose } from '../../../actions/compose';
 | 
			
		||||
import { openModal } from '../../../actions/modal';
 | 
			
		||||
import { submitCompose } from '../../../actions/compose';
 | 
			
		||||
 | 
			
		||||
const mapStateToProps = (state, { id }) => ({
 | 
			
		||||
  media: state.getIn(['compose', 'media_attachments']).find(item => item.get('id') === id),
 | 
			
		||||
@ -21,6 +22,10 @@ const mapDispatchToProps = dispatch => ({
 | 
			
		||||
    dispatch(openModal('FOCAL_POINT', { id }));
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
  onSubmit () {
 | 
			
		||||
    dispatch(submitCompose());
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
export default connect(mapStateToProps, mapDispatchToProps)(Upload);
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user