Merge pull request #13530 from grafana/davkal/13485-cursor-suggestions

Explore: reset typeahead on cursor move
This commit is contained in:
Torkel Ödegaard 2018-10-04 18:05:32 +02:00 committed by GitHub
commit 1da352822a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -179,15 +179,21 @@ class QueryField extends React.PureComponent<TypeaheadFieldProps, TypeaheadField
}
onChange = ({ value }) => {
const changed = value.document !== this.state.value.document;
const textChanged = value.document !== this.state.value.document;
// Control editor loop, then pass text change up to parent
this.setState({ value }, () => {
if (changed) {
if (textChanged) {
this.handleChangeValue();
}
});
if (changed) {
// Show suggest menu on text input
if (textChanged && value.selection.isCollapsed) {
// Need one paint to allow DOM-based typeahead rules to work
window.requestAnimationFrame(this.handleTypeahead);
} else {
this.resetTypeahead();
}
};