From a7721f32fcf988ce8f78f952b4c76c14780cac01 Mon Sep 17 00:00:00 2001
From: dkhawk <107309+dkhawk@users.noreply.github.com>
Date: Wed, 12 Nov 2025 09:05:45 -0700
Subject: [PATCH 1/2] refactor: Improve null safety and readability in
createInfoWindow
---
.../google/maps/android/data/Renderer.java | 24 +++++++++++++------
1 file changed, 17 insertions(+), 7 deletions(-)
diff --git a/library/src/main/java/com/google/maps/android/data/Renderer.java b/library/src/main/java/com/google/maps/android/data/Renderer.java
index 1f59fc257..31a846df5 100644
--- a/library/src/main/java/com/google/maps/android/data/Renderer.java
+++ b/library/src/main/java/com/google/maps/android/data/Renderer.java
@@ -1145,23 +1145,33 @@ private void setMarkerInfoWindow(KmlStyle style, Marker marker,
/**
* Creates a new InfoWindowAdapter and sets text if marker snippet or title is set. This allows
- * the info window to have custom HTML.
+ * the info window to have custom HTML. If the marker has no title, the InfoWindow is deactivated.
*/
private void createInfoWindow() {
mMarkers.setInfoWindowAdapter(new GoogleMap.InfoWindowAdapter() {
- public View getInfoWindow(@NonNull Marker arg0) {
+ public View getInfoWindow(@NonNull Marker marker) {
return null;
}
- public View getInfoContents(@NonNull Marker arg0) {
+ @Override
+ public View getInfoContents(@NonNull Marker marker) {
+ String title = marker.getTitle();
+ if (title == null) {
+ return null;
+ }
+
View view = LayoutInflater.from(mContext).inflate(R.layout.amu_info_window, null);
TextView infoWindowText = view.findViewById(R.id.window);
- if (arg0.getSnippet() != null) {
- infoWindowText.setText(Html.fromHtml(arg0.getTitle() + "
" + arg0.getSnippet()));
- } else {
- infoWindowText.setText(Html.fromHtml(arg0.getTitle()));
+
+ StringBuilder infoText = new StringBuilder(title);
+
+ String snippet = marker.getSnippet();
+ if (snippet != null) {
+ infoText.append("
").append(snippet);
}
+ infoWindowText.setText(Html.fromHtml(infoText.toString()));
+
return view;
}
});
From 9059f09899cf59b20f6c8920fff054feb001f1ba Mon Sep 17 00:00:00 2001
From: semantic-release-bot
Date: Tue, 4 Nov 2025 17:19:55 +0000
Subject: [PATCH 2/2] chore(release): 3.19.1 [skip ci]
## [3.19.1](https://github.com/googlemaps/android-maps-utils/compare/v3.19.0...v3.19.1) (2025-11-04)
### Bug Fixes
* fixed InfoWindow creation in KmlParser ([#1624](https://github.com/googlemaps/android-maps-utils/issues/1624)) ([d74757c](https://github.com/googlemaps/android-maps-utils/commit/d74757c7c055f8e1b406766094d46c0f5e4913dd))
---
README.md | 2 +-
build.gradle.kts | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 042c02a42..630894233 100644
--- a/README.md
+++ b/README.md
@@ -45,7 +45,7 @@ dependencies {
// Utilities for Maps SDK for Android (requires Google Play Services)
// You do not need to add a separate dependency for the Maps SDK for Android
// since this library builds in the compatible version of the Maps SDK.
- implementation 'com.google.maps.android:android-maps-utils:3.19.0'
+ implementation 'com.google.maps.android:android-maps-utils:3.19.1'
// Optionally add the Kotlin Extensions (KTX) for full Kotlin language support
// See latest version at https://github.com/googlemaps/android-maps-ktx
diff --git a/build.gradle.kts b/build.gradle.kts
index ed032ad38..207f7e9f3 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -37,5 +37,5 @@ tasks.register("clean") {
allprojects {
group = "com.google.maps.android"
- version = "3.19.0"
+ version = "3.19.1"
}
\ No newline at end of file