|
|
|
@ -81,18 +81,6 @@ class ComposeForm extends ImmutablePureComponent { |
|
|
|
|
this.props.onChange(e.target.value); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
handleKeyDown = ({ ctrlKey, keyCode, metaKey, altKey }) => { |
|
|
|
|
// We submit the status on control/meta + enter.
|
|
|
|
|
if (keyCode === 13 && (ctrlKey || metaKey)) { |
|
|
|
|
this.handleSubmit(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Submit the status with secondary visibility on alt + enter.
|
|
|
|
|
if (keyCode === 13 && altKey) { |
|
|
|
|
this.handleSecondarySubmit(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
handleSubmit = (overriddenVisibility = null) => { |
|
|
|
|
const { textarea: { value }, uploadForm } = this; |
|
|
|
|
const { |
|
|
|
@ -171,10 +159,20 @@ class ComposeForm extends ImmutablePureComponent { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// When the escape key is released, we focus the UI.
|
|
|
|
|
handleKeyUp = ({ key }) => { |
|
|
|
|
handleKeyUp = ({ key, ctrlKey, keyCode, metaKey, altKey }) => { |
|
|
|
|
if (key === 'Escape') { |
|
|
|
|
document.querySelector('.ui').parentElement.focus(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// We submit the status on control/meta + enter.
|
|
|
|
|
if (keyCode === 13 && (ctrlKey || metaKey)) { |
|
|
|
|
this.handleSubmit(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Submit the status with secondary visibility on alt + enter.
|
|
|
|
|
if (keyCode === 13 && altKey) { |
|
|
|
|
this.handleSecondarySubmit(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Sets a reference to the textarea.
|
|
|
|
@ -307,7 +305,6 @@ class ComposeForm extends ImmutablePureComponent { |
|
|
|
|
placeholder={intl.formatMessage(messages.spoiler_placeholder)} |
|
|
|
|
value={spoilerText} |
|
|
|
|
onChange={this.handleChangeSpoiler} |
|
|
|
|
onKeyDown={this.handleKeyDown} |
|
|
|
|
onKeyUp={this.handleKeyUp} |
|
|
|
|
disabled={!spoiler} |
|
|
|
|
ref={this.handleRefSpoilerText} |
|
|
|
@ -328,9 +325,9 @@ class ComposeForm extends ImmutablePureComponent { |
|
|
|
|
disabled={isSubmitting} |
|
|
|
|
value={this.props.text} |
|
|
|
|
onChange={this.handleChange} |
|
|
|
|
onKeyUp={this.handleKeyUp} |
|
|
|
|
suggestions={this.props.suggestions} |
|
|
|
|
onFocus={this.handleFocus} |
|
|
|
|
onKeyDown={this.handleKeyDown} |
|
|
|
|
onSuggestionsFetchRequested={onFetchSuggestions} |
|
|
|
|
onSuggestionsClearRequested={onClearSuggestions} |
|
|
|
|
onSuggestionSelected={this.onSuggestionSelected} |
|
|
|
|