Fix #357 - Also make textarea blur close suggestions which make it more accessible on touch devices
parent
0a84ab43d2
commit
c3e9ba6a66
|
@ -55,7 +55,7 @@ const AutosuggestTextarea = React.createClass({
|
||||||
if (token != null && this.state.lastToken !== token) {
|
if (token != null && this.state.lastToken !== token) {
|
||||||
this.setState({ lastToken: token, selectedSuggestion: 0, tokenStart });
|
this.setState({ lastToken: token, selectedSuggestion: 0, tokenStart });
|
||||||
this.props.onSuggestionsFetchRequested(token);
|
this.props.onSuggestionsFetchRequested(token);
|
||||||
} else if (token === null && this.state.lastToken != null) {
|
} else if (token === null) {
|
||||||
this.setState({ lastToken: null });
|
this.setState({ lastToken: null });
|
||||||
this.props.onSuggestionsClearRequested();
|
this.props.onSuggestionsClearRequested();
|
||||||
}
|
}
|
||||||
|
@ -107,6 +107,10 @@ const AutosuggestTextarea = React.createClass({
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
onBlur () {
|
||||||
|
this.setState({ suggestionsHidden: true });
|
||||||
|
},
|
||||||
|
|
||||||
onSuggestionClick (suggestion, e) {
|
onSuggestionClick (suggestion, e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
this.props.onSuggestionSelected(this.state.tokenStart, this.state.lastToken, suggestion);
|
this.props.onSuggestionSelected(this.state.tokenStart, this.state.lastToken, suggestion);
|
||||||
|
@ -137,6 +141,7 @@ const AutosuggestTextarea = React.createClass({
|
||||||
onChange={this.onChange}
|
onChange={this.onChange}
|
||||||
onKeyDown={this.onKeyDown}
|
onKeyDown={this.onKeyDown}
|
||||||
onKeyUp={onKeyUp}
|
onKeyUp={onKeyUp}
|
||||||
|
onBlur={this.onBlur}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<div style={{ display: (suggestions.size > 0 && !suggestionsHidden) ? 'block' : 'none' }} className='autosuggest-textarea__suggestions'>
|
<div style={{ display: (suggestions.size > 0 && !suggestionsHidden) ? 'block' : 'none' }} className='autosuggest-textarea__suggestions'>
|
||||||
|
|
|
@ -566,6 +566,10 @@
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: darken(#d9e1e8, 10%);
|
||||||
|
}
|
||||||
|
|
||||||
&.selected {
|
&.selected {
|
||||||
background: #2b90d9;
|
background: #2b90d9;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
|
|
Reference in New Issue