aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSpanky <2788886+SpankyWorks@users.noreply.github.com>2018-08-18 12:40:35 -0500
committerEugen Rochko <eugen@zeonfederated.com>2018-08-18 19:40:35 +0200
commit7a0f781aa9aad505dbde6a2bf3aa5048638c2de0 (patch)
tree444875dad83b3d3b07746429f00f6313f57e1808
parent298ee84488758fc08a0ae9233e04c9637aa2fe02 (diff)
downloadmastodon-7a0f781aa9aad505dbde6a2bf3aa5048638c2de0.tar
mastodon-7a0f781aa9aad505dbde6a2bf3aa5048638c2de0.tar.gz
mastodon-7a0f781aa9aad505dbde6a2bf3aa5048638c2de0.tar.bz2
mastodon-7a0f781aa9aad505dbde6a2bf3aa5048638c2de0.zip
Fix ctrl+enter not submitting toot when text cursor is composing image description (#8273)
-rw-r--r--app/javascript/mastodon/features/compose/components/upload.js13
-rw-r--r--app/javascript/mastodon/features/compose/containers/upload_container.js5
2 files changed, 18 insertions, 0 deletions
diff --git a/app/javascript/mastodon/features/compose/components/upload.js b/app/javascript/mastodon/features/compose/components/upload.js
index bfa2b4727..3d09217dc 100644
--- a/app/javascript/mastodon/features/compose/components/upload.js
+++ b/app/javascript/mastodon/features/compose/components/upload.js
@@ -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>
diff --git a/app/javascript/mastodon/features/compose/containers/upload_container.js b/app/javascript/mastodon/features/compose/containers/upload_container.js
index d6b57e5ff..9f3aab4bc 100644
--- a/app/javascript/mastodon/features/compose/containers/upload_container.js
+++ b/app/javascript/mastodon/features/compose/containers/upload_container.js
@@ -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);