From feb2b5878b3e3ec551d64872c35edec2a0187812 Mon Sep 17 00:00:00 2001 From: Nathan Marrs Date: Tue, 13 Jun 2023 19:15:51 +0200 Subject: [PATCH] Geomap: Optimize panel rendering behavior (#69827) --- public/app/plugins/panel/geomap/utils/tootltip.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/public/app/plugins/panel/geomap/utils/tootltip.ts b/public/app/plugins/panel/geomap/utils/tootltip.ts index aa5600dbee3..1d5c601e823 100644 --- a/public/app/plugins/panel/geomap/utils/tootltip.ts +++ b/public/app/plugins/panel/geomap/utils/tootltip.ts @@ -99,7 +99,10 @@ export const pointerMoveListener = (evt: MapBrowserEvent, panel: Geo panel.hoverPayload.layers = layers.length ? layers : undefined; panel.props.eventBus.publish(panel.hoverEvent); - panel.setState({ ttip: { ...hoverPayload } }); + // This check optimizes Geomap panel re-render behavior (without it, Geomap renders on every mouse move event) + if (panel.state.ttip === undefined || panel.state.ttip?.layers !== hoverPayload.layers || hoverPayload.layers) { + panel.setState({ ttip: { ...hoverPayload } }); + } if (!layers.length) { // clear mouse events