From c4eb63c1d41c613ceacf668cd7d9443c4c823963 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sun, 13 Nov 2016 13:13:36 +0100 Subject: Debounce autosuggestions requests --- .../javascripts/components/features/compose/components/search.jsx | 2 ++ .../javascripts/components/features/ui/components/compose_form.jsx | 2 ++ 2 files changed, 4 insertions(+) (limited to 'app') diff --git a/app/assets/javascripts/components/features/compose/components/search.jsx b/app/assets/javascripts/components/features/compose/components/search.jsx index e81771e6a..93f7df775 100644 --- a/app/assets/javascripts/components/features/compose/components/search.jsx +++ b/app/assets/javascripts/components/features/compose/components/search.jsx @@ -2,6 +2,7 @@ import PureRenderMixin from 'react-addons-pure-render-mixin'; import ImmutablePropTypes from 'react-immutable-proptypes'; import Autosuggest from 'react-autosuggest'; import AutosuggestAccountContainer from '../containers/autosuggest_account_container'; +import { debounce } from 'react-decoration'; const getSuggestionValue = suggestion => suggestion.value; @@ -77,6 +78,7 @@ const Search = React.createClass({ this.props.onClear(); }, + @debounce(500) onSuggestionsFetchRequested ({ value }) { value = value.replace('#', ''); this.props.onFetch(value.trim()); diff --git a/app/assets/javascripts/components/features/ui/components/compose_form.jsx b/app/assets/javascripts/components/features/ui/components/compose_form.jsx index 20dc32709..aef228d58 100644 --- a/app/assets/javascripts/components/features/ui/components/compose_form.jsx +++ b/app/assets/javascripts/components/features/ui/components/compose_form.jsx @@ -6,6 +6,7 @@ import ReplyIndicator from './reply_indicator'; import UploadButton from './upload_button'; import Autosuggest from 'react-autosuggest'; import AutosuggestAccountContainer from '../../compose/containers/autosuggest_account_container'; +import { debounce } from 'react-decoration'; const getTokenForSuggestions = (str, caretPosition) => { let word; @@ -104,6 +105,7 @@ const ComposeForm = React.createClass({ this.props.onClearSuggestions(); }, + @debounce(500) onSuggestionsFetchRequested ({ value }) { const textarea = this.autosuggest.input; -- cgit