diff --git a/src/panels/lovelace/cards/hui-map-card.ts b/src/panels/lovelace/cards/hui-map-card.ts index 7f1e2fc200..d84694d048 100644 --- a/src/panels/lovelace/cards/hui-map-card.ts +++ b/src/panels/lovelace/cards/hui-map-card.ts @@ -34,7 +34,10 @@ import { HistoryStates, subscribeHistoryStatesTimeWindow, } from "../../../data/history"; -import { hasConfigOrEntitiesChanged } from "../common/has-changed"; +import { + hasConfigChanged, + hasConfigOrEntitiesChanged, +} from "../common/has-changed"; import { HomeAssistant } from "../../../types"; import { findEntities } from "../common/find-entities"; import { processConfigEntities } from "../common/process-config-entities"; @@ -194,7 +197,15 @@ class HuiMapCard extends LitElement implements LovelaceCard { return true; } - return hasConfigOrEntitiesChanged(this, changedProps); + if (this._config?.geo_location_sources) { + if (oldHass.states !== this.hass.states) { + return true; + } + } + + return this._config?.entities + ? hasConfigOrEntitiesChanged(this, changedProps) + : hasConfigChanged(this, changedProps); } public connectedCallback() { diff --git a/src/panels/lovelace/common/has-changed.ts b/src/panels/lovelace/common/has-changed.ts index 36d2cfabda..1abf9d11ff 100644 --- a/src/panels/lovelace/common/has-changed.ts +++ b/src/panels/lovelace/common/has-changed.ts @@ -4,7 +4,10 @@ import { EntityRegistryDisplayEntry } from "../../../data/entity_registry"; import { HomeAssistant } from "../../../types"; import { processConfigEntities } from "./process-config-entities"; -function hasConfigChanged(element: any, changedProps: PropertyValues): boolean { +export function hasConfigChanged( + element: any, + changedProps: PropertyValues +): boolean { if (changedProps.has("_config")) { return true; }