diff --git a/public/app/plugins/datasource/graphite/FunctionEditor.tsx b/public/app/plugins/datasource/graphite/FunctionEditor.tsx index b4450a58fa8..1c07341f0d4 100644 --- a/public/app/plugins/datasource/graphite/FunctionEditor.tsx +++ b/public/app/plugins/datasource/graphite/FunctionEditor.tsx @@ -1,5 +1,5 @@ import React, { Suspense } from 'react'; -import { PopoverController, Popover } from '@grafana/ui'; +import { PopoverController, Popover, ClickOutsideWrapper } from '@grafana/ui'; import { FunctionDescriptor, FunctionEditorControls, FunctionEditorControlsProps } from './FunctionEditorControls'; interface FunctionEditorProps extends FunctionEditorControlsProps { @@ -73,7 +73,7 @@ class FunctionEditor extends React.PureComponent + {(showPopper, hidePopper, popperProps) => { return ( <> @@ -85,26 +85,30 @@ class FunctionEditor extends React.PureComponent { this.setState({ showingDescription: false }); - hidePopper(); }} - onMouseEnter={showPopper} renderArrow={({ arrowProps, placement }) => (
)} /> )} - - { - hidePopper(); - this.setState({ showingDescription: false }); + { + if (popperProps.show) { + hidePopper(); + } }} - style={{ cursor: 'pointer' }} > - {this.props.func.def.name} - + { + this.setState({ showingDescription: false }); + }} + style={{ cursor: 'pointer' }} + > + {this.props.func.def.name} + + ); }}