Geomap: Optimize panel rendering behavior (#69827)

This commit is contained in:
Nathan Marrs
2023-06-13 10:15:51 -07:00
committed by GitHub
parent bc48622919
commit feb2b5878b
@@ -99,7 +99,10 @@ export const pointerMoveListener = (evt: MapBrowserEvent<MouseEvent>, 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