Google Earth KML Placemark description not updating

28 Views Asked by At

I have an application that generates Google Earth KML files. It defines placemarks that are clickable. When clicked they display a description in a pop-up panel.

Up until recently this was working fine, but now clicking the first placemark works as expected, but when clicking subsequent placemarks the description panel title is updated but the body remains the same. Am I doing something wrong here with the structure of the KML? If I close the placemark description and then click it works as expected.

This is a cut down example of a KML file that demonstrates the issue:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<kml:kml xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:xal="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0">
    <kml:Document>
        <kml:name>stackoverflow.adi</kml:name>
        <kml:open>1</kml:open>
        <kml:Style id="style_fixed">
            <kml:IconStyle>
                <kml:scale>1.0</kml:scale>
                <kml:heading>0.0</kml:heading>
                <kml:Icon>
                    <kml:href>https://maps.google.com/mapfiles/kml/shapes/ranger_station.png</kml:href>
                </kml:Icon>
            </kml:IconStyle>
            <kml:LabelStyle>
                <kml:color>ff43b3ff</kml:color>
                <kml:scale>1.0</kml:scale>
            </kml:LabelStyle>
        </kml:Style>
        <kml:Folder>
            <kml:name>Contacts</kml:name>
            <kml:open>1</kml:open>
            <kml:Folder>
                <kml:name>M0NOM</kml:name>
                <kml:open>1</kml:open>
                <kml:Folder>
                    <kml:name>M0NOM</kml:name>
                    <kml:open>0</kml:open>
                    <kml:Placemark>
                        <kml:name>M0NOM</kml:name>
                        <kml:description>&lt;html lang="en"&gt;&lt;body&gt;M0NOM Body&lt;/body&gt;&lt;/html&gt;</kml:description>
                        <kml:LookAt>
                            <kml:longitude>-2.875</kml:longitude>
                            <kml:latitude>54.35416666666666</kml:latitude>
                            <kml:altitude>0.0</kml:altitude>
                            <kml:heading>0.0</kml:heading>
                            <kml:tilt>0.0</kml:tilt>
                            <kml:range>500.0</kml:range>
                        </kml:LookAt>
                        <kml:styleUrl>#style_fixed</kml:styleUrl>
                        <kml:Point>
                            <kml:coordinates>-2.875,54.35416666666666</kml:coordinates>
                        </kml:Point>
                    </kml:Placemark>
                </kml:Folder>
                <kml:Folder>
                    <kml:name>G8CPZ</kml:name>
                    <kml:open>0</kml:open>
                    <kml:Placemark id="20240207_12:00_G8CPZ">
                        <kml:name>G8CPZ</kml:name>
                        <kml:description>&lt;html lang="en"&gt;&lt;body&gt;G8CPZ Body&lt;/body&gt;&lt;/html&gt;</kml:description>
                        <kml:LookAt>
                            <kml:longitude>-2.6999999999999886</kml:longitude>
                            <kml:latitude>54.30000000000001</kml:latitude>
                            <kml:altitude>0.0</kml:altitude>
                            <kml:heading>0.0</kml:heading>
                            <kml:tilt>0.0</kml:tilt>
                            <kml:range>500.0</kml:range>
                        </kml:LookAt>
                        <kml:styleUrl>#style_fixed</kml:styleUrl>
                        <kml:Point>
                            <kml:coordinates>-2.6999999999999886,54.30000000000001</kml:coordinates>
                        </kml:Point>
                    </kml:Placemark>
                </kml:Folder>
            </kml:Folder>
        </kml:Folder>
    </kml:Document>
</kml:kml>

0

There are 0 best solutions below