logo

mastofe

My custom branche(s) on git.pleroma.social/pleroma/mastofe
commit: 29d8313b28ee5a0f6e18141028185e757035b547
parent: 682507bc3c954239c11934faddcd3ba2934a4d4d
Author: fusshi- <dikky1218@users.noreply.github.com>
Date:   Wed, 10 May 2017 09:51:43 +0900

Disabled auto focus on toot form when search results are shown. (#2942)


Diffstat:

Mapp/javascript/mastodon/components/autosuggest_textarea.js9+++++++--
Mapp/javascript/mastodon/features/compose/components/compose_form.js10++++++++--
Mapp/javascript/mastodon/features/compose/containers/compose_form_container.js3++-
3 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/app/javascript/mastodon/components/autosuggest_textarea.js b/app/javascript/mastodon/components/autosuggest_textarea.js @@ -153,7 +153,7 @@ class AutosuggestTextarea extends ImmutablePureComponent { } render () { - const { value, suggestions, disabled, placeholder, onKeyUp } = this.props; + const { value, suggestions, disabled, placeholder, onKeyUp, autoFocus } = this.props; const { suggestionsHidden, selectedSuggestion } = this.state; const style = { direction: 'ltr' }; @@ -168,7 +168,7 @@ class AutosuggestTextarea extends ImmutablePureComponent { className='autosuggest-textarea__textarea' disabled={disabled} placeholder={placeholder} - autoFocus={true} + autoFocus={autoFocus} value={value} onChange={this.onChange} onKeyDown={this.onKeyDown} @@ -208,6 +208,11 @@ AutosuggestTextarea.propTypes = { onKeyUp: PropTypes.func, onKeyDown: PropTypes.func, onPaste: PropTypes.func.isRequired, + autoFocus: PropTypes.bool +}; + +AutosuggestTextarea.defaultProps = { + autoFucus: true, }; export default AutosuggestTextarea; diff --git a/app/javascript/mastodon/features/compose/components/compose_form.js b/app/javascript/mastodon/features/compose/components/compose_form.js @@ -118,7 +118,7 @@ class ComposeForm extends ImmutablePureComponent { } render () { - const { intl, onPaste } = this.props; + const { intl, onPaste, showSearch } = this.props; const disabled = this.props.is_submitting; const text = [this.props.spoiler_text, this.props.text].join(''); @@ -156,6 +156,7 @@ class ComposeForm extends ImmutablePureComponent { onSuggestionsClearRequested={this.onSuggestionsClearRequested} onSuggestionSelected={this.onSuggestionSelected} onPaste={onPaste} + autoFocus={!showSearch} /> <EmojiPickerDropdown onPickEmoji={this.handleEmojiPick} /> @@ -204,7 +205,12 @@ ComposeForm.propTypes = { onSuggestionSelected: PropTypes.func.isRequired, onChangeSpoilerText: PropTypes.func.isRequired, onPaste: PropTypes.func.isRequired, - onPickEmoji: PropTypes.func.isRequired + onPickEmoji: PropTypes.func.isRequired, + showSearch: PropTypes.bool, +}; + +ComposeForm.defaultProps = { + showSearch: false }; export default injectIntl(ComposeForm); diff --git a/app/javascript/mastodon/features/compose/containers/compose_form_container.js b/app/javascript/mastodon/features/compose/containers/compose_form_container.js @@ -22,7 +22,8 @@ const mapStateToProps = state => ({ preselectDate: state.getIn(['compose', 'preselectDate']), is_submitting: state.getIn(['compose', 'is_submitting']), is_uploading: state.getIn(['compose', 'is_uploading']), - me: state.getIn(['compose', 'me']) + me: state.getIn(['compose', 'me']), + showSearch: state.getIn(['search', 'submitted']) && !state.getIn(['search', 'hidden']) }); const mapDispatchToProps = (dispatch) => ({