Loading play-services-api/src/main/aidl/com/google/android/gms/maps/internal/IGoogleMapDelegate.aidl +4 −2 Original line number Diff line number Diff line Loading @@ -18,6 +18,8 @@ import com.google.android.gms.maps.internal.IOnMapLongClickListener; import com.google.android.gms.maps.internal.IOnMarkerClickListener; import com.google.android.gms.maps.internal.IOnMarkerDragListener; import com.google.android.gms.maps.internal.IOnInfoWindowClickListener; import com.google.android.gms.maps.internal.IOnInfoWindowCloseListener; import com.google.android.gms.maps.internal.IOnInfoWindowLongClickListener; import com.google.android.gms.maps.internal.IInfoWindowAdapter; import com.google.android.gms.maps.internal.IOnMapLoadedCallback; import com.google.android.gms.maps.internal.IOnMyLocationChangeListener; Loading Loading @@ -120,9 +122,9 @@ interface IGoogleMapDelegate { void onExitAmbient() = 81; //void setOnGroundOverlayClickListener(IOnGroundOverlayClickListener listener) = 82; //void setInfoWindowLongClickListener(IOnInfoWindowLongClickListener listener) = 83; void setInfoWindowLongClickListener(IOnInfoWindowLongClickListener listener) = 83; //void setPolygonClickListener(IOnPolygonClickListener listener) = 84; //void setInfoWindowCloseListener(IOnInfoWindowCloseListener listener) = 85; void setInfoWindowCloseListener(IOnInfoWindowCloseListener listener) = 85; //void setPolylineClickListener(IOnPolylineClickListener listener) = 86; //void setCircleClickListener(IOnCircleClickListener listener) = 88; Loading play-services-api/src/main/aidl/com/google/android/gms/maps/internal/IOnInfoWindowCloseListener.aidl 0 → 100644 +7 −0 Original line number Diff line number Diff line package com.google.android.gms.maps.internal; import com.google.android.gms.maps.model.internal.IMarkerDelegate; interface IOnInfoWindowCloseListener { void onInfoWindowClose(IMarkerDelegate marker); } play-services-api/src/main/aidl/com/google/android/gms/maps/internal/IOnInfoWindowLongClickListener.aidl 0 → 100644 +7 −0 Original line number Diff line number Diff line package com.google.android.gms.maps.internal; import com.google.android.gms.maps.model.internal.IMarkerDelegate; interface IOnInfoWindowLongClickListener { void onInfoWindowLongClick(IMarkerDelegate marker); } play-services-maps-core-mapbox/src/main/kotlin/org/microg/gms/maps/mapbox/GoogleMap.kt +44 −6 Original line number Diff line number Diff line Loading @@ -54,6 +54,9 @@ import com.mapbox.mapboxsdk.plugins.annotation.Annotation import com.mapbox.mapboxsdk.style.layers.Property.LINE_CAP_ROUND import com.google.android.gms.dynamic.unwrap import com.mapbox.mapboxsdk.WellKnownTileServer import org.microg.gms.maps.mapbox.model.DefaultInfoWindowAdapter import org.microg.gms.maps.mapbox.model.InfoWindow import org.microg.gms.maps.mapbox.model.getInfoWindowViewFor import com.mapbox.mapboxsdk.camera.CameraUpdateFactory import com.mapbox.mapboxsdk.maps.OnMapReadyCallback import org.microg.gms.maps.MapsConstants.* Loading Loading @@ -100,6 +103,12 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) private var mapLongClickListener: IOnMapLongClickListener? = null private var markerClickListener: IOnMarkerClickListener? = null private var markerDragListener: IOnMarkerDragListener? = null private var infoWindowAdapter: IInfoWindowAdapter = DefaultInfoWindowAdapter(MapContext(context)) internal var onInfoWindowClickListener: IOnInfoWindowClickListener? = null internal var onInfoWindowLongClickListener: IOnInfoWindowLongClickListener? = null internal var onInfoWindowCloseListener: IOnInfoWindowCloseListener? = null var currentInfoWindow: InfoWindow? = null var lineManager: LineManager? = null val pendingLines = mutableSetOf<PolylineImpl>() Loading Loading @@ -483,13 +492,19 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) } override fun setOnInfoWindowClickListener(listener: IOnInfoWindowClickListener?) { Log.d(TAG, "unimplemented Method: setOnInfoWindowClickListener") onInfoWindowClickListener = listener } override fun setInfoWindowLongClickListener(listener: IOnInfoWindowLongClickListener) { onInfoWindowLongClickListener = listener } override fun setInfoWindowAdapter(adapter: IInfoWindowAdapter?) { Log.d(TAG, "unimplemented Method: setInfoWindowAdapter") override fun setInfoWindowCloseListener(listener: IOnInfoWindowCloseListener) { onInfoWindowCloseListener = listener } override fun setInfoWindowAdapter(adapter: IInfoWindowAdapter?) { infoWindowAdapter = adapter ?: DefaultInfoWindowAdapter(MapContext(context)) } override fun getTestingHelper(): IObjectWrapper? { Loading Loading @@ -611,6 +626,7 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) map.addOnCameraMoveListener { try { cameraMoveListener?.onCameraMove() currentInfoWindow?.update() } catch (e: Exception) { Log.w(TAG, e) } Loading @@ -631,7 +647,11 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) } map.addOnMapClickListener { latlng -> try { mapClickListener?.let { if (!hasSymbolAt(latlng)) it.onMapClick(latlng.toGms()); } if (!hasSymbolAt(latlng)) { mapClickListener?.onMapClick(latlng.toGms()) currentInfoWindow?.close() currentInfoWindow = null } } catch (e: Exception) { Log.w(TAG, e) } Loading Loading @@ -688,12 +708,17 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) } symbolManager.iconAllowOverlap = true symbolManager.addClickListener { val marker = markers[it.id] try { markers[it.id]?.let { markerClickListener?.onMarkerClick(it) } == true if (markers[it.id]?.let { markerClickListener?.onMarkerClick(it) } == true) { return@addClickListener true } } catch (e: Exception) { Log.w(TAG, e) false return@addClickListener false } marker?.let { showInfoWindow(it) } == true } symbolManager.addDragListener(object : OnSymbolDragListener { override fun onAnnotationDragStarted(annotation: Symbol?) { Loading Loading @@ -761,6 +786,17 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) } } internal fun showInfoWindow(marker: MarkerImpl): Boolean { infoWindowAdapter.getInfoWindowViewFor(marker, MapContext(context))?.let { infoView -> currentInfoWindow?.close() currentInfoWindow = InfoWindow(infoView, this, marker).also { infoWindow -> mapView?.let { infoWindow.open(it) } } return true } return false } override fun useViewLifecycleWhenInFragment(): Boolean { Log.d(TAG, "unimplemented Method: useViewLifecycleWhenInFragment") return false Loading @@ -782,6 +818,8 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) symbolManager?.onDestroy() symbolManager = null currentInfoWindow?.close() pendingMarkers.clear() markers.clear() Loading play-services-maps-core-mapbox/src/main/kotlin/org/microg/gms/maps/mapbox/model/BitmapDescriptor.kt +1 −1 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ import com.mapbox.mapboxsdk.plugins.annotation.SymbolOptions import com.mapbox.mapboxsdk.style.layers.Property.ICON_ANCHOR_TOP_LEFT import com.mapbox.mapboxsdk.utils.ColorUtils open class BitmapDescriptorImpl(private val id: String, private val size: FloatArray) { open class BitmapDescriptorImpl(private val id: String, internal val size: FloatArray) { open fun applyTo(options: SymbolOptions, anchor: FloatArray, dpiFactor: Float): SymbolOptions { return options.withIconImage(id).withIconAnchor(ICON_ANCHOR_TOP_LEFT).withIconOffset(arrayOf(-anchor[0] * size[0] / dpiFactor, -anchor[1] * size[1] / dpiFactor)) } Loading Loading
play-services-api/src/main/aidl/com/google/android/gms/maps/internal/IGoogleMapDelegate.aidl +4 −2 Original line number Diff line number Diff line Loading @@ -18,6 +18,8 @@ import com.google.android.gms.maps.internal.IOnMapLongClickListener; import com.google.android.gms.maps.internal.IOnMarkerClickListener; import com.google.android.gms.maps.internal.IOnMarkerDragListener; import com.google.android.gms.maps.internal.IOnInfoWindowClickListener; import com.google.android.gms.maps.internal.IOnInfoWindowCloseListener; import com.google.android.gms.maps.internal.IOnInfoWindowLongClickListener; import com.google.android.gms.maps.internal.IInfoWindowAdapter; import com.google.android.gms.maps.internal.IOnMapLoadedCallback; import com.google.android.gms.maps.internal.IOnMyLocationChangeListener; Loading Loading @@ -120,9 +122,9 @@ interface IGoogleMapDelegate { void onExitAmbient() = 81; //void setOnGroundOverlayClickListener(IOnGroundOverlayClickListener listener) = 82; //void setInfoWindowLongClickListener(IOnInfoWindowLongClickListener listener) = 83; void setInfoWindowLongClickListener(IOnInfoWindowLongClickListener listener) = 83; //void setPolygonClickListener(IOnPolygonClickListener listener) = 84; //void setInfoWindowCloseListener(IOnInfoWindowCloseListener listener) = 85; void setInfoWindowCloseListener(IOnInfoWindowCloseListener listener) = 85; //void setPolylineClickListener(IOnPolylineClickListener listener) = 86; //void setCircleClickListener(IOnCircleClickListener listener) = 88; Loading
play-services-api/src/main/aidl/com/google/android/gms/maps/internal/IOnInfoWindowCloseListener.aidl 0 → 100644 +7 −0 Original line number Diff line number Diff line package com.google.android.gms.maps.internal; import com.google.android.gms.maps.model.internal.IMarkerDelegate; interface IOnInfoWindowCloseListener { void onInfoWindowClose(IMarkerDelegate marker); }
play-services-api/src/main/aidl/com/google/android/gms/maps/internal/IOnInfoWindowLongClickListener.aidl 0 → 100644 +7 −0 Original line number Diff line number Diff line package com.google.android.gms.maps.internal; import com.google.android.gms.maps.model.internal.IMarkerDelegate; interface IOnInfoWindowLongClickListener { void onInfoWindowLongClick(IMarkerDelegate marker); }
play-services-maps-core-mapbox/src/main/kotlin/org/microg/gms/maps/mapbox/GoogleMap.kt +44 −6 Original line number Diff line number Diff line Loading @@ -54,6 +54,9 @@ import com.mapbox.mapboxsdk.plugins.annotation.Annotation import com.mapbox.mapboxsdk.style.layers.Property.LINE_CAP_ROUND import com.google.android.gms.dynamic.unwrap import com.mapbox.mapboxsdk.WellKnownTileServer import org.microg.gms.maps.mapbox.model.DefaultInfoWindowAdapter import org.microg.gms.maps.mapbox.model.InfoWindow import org.microg.gms.maps.mapbox.model.getInfoWindowViewFor import com.mapbox.mapboxsdk.camera.CameraUpdateFactory import com.mapbox.mapboxsdk.maps.OnMapReadyCallback import org.microg.gms.maps.MapsConstants.* Loading Loading @@ -100,6 +103,12 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) private var mapLongClickListener: IOnMapLongClickListener? = null private var markerClickListener: IOnMarkerClickListener? = null private var markerDragListener: IOnMarkerDragListener? = null private var infoWindowAdapter: IInfoWindowAdapter = DefaultInfoWindowAdapter(MapContext(context)) internal var onInfoWindowClickListener: IOnInfoWindowClickListener? = null internal var onInfoWindowLongClickListener: IOnInfoWindowLongClickListener? = null internal var onInfoWindowCloseListener: IOnInfoWindowCloseListener? = null var currentInfoWindow: InfoWindow? = null var lineManager: LineManager? = null val pendingLines = mutableSetOf<PolylineImpl>() Loading Loading @@ -483,13 +492,19 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) } override fun setOnInfoWindowClickListener(listener: IOnInfoWindowClickListener?) { Log.d(TAG, "unimplemented Method: setOnInfoWindowClickListener") onInfoWindowClickListener = listener } override fun setInfoWindowLongClickListener(listener: IOnInfoWindowLongClickListener) { onInfoWindowLongClickListener = listener } override fun setInfoWindowAdapter(adapter: IInfoWindowAdapter?) { Log.d(TAG, "unimplemented Method: setInfoWindowAdapter") override fun setInfoWindowCloseListener(listener: IOnInfoWindowCloseListener) { onInfoWindowCloseListener = listener } override fun setInfoWindowAdapter(adapter: IInfoWindowAdapter?) { infoWindowAdapter = adapter ?: DefaultInfoWindowAdapter(MapContext(context)) } override fun getTestingHelper(): IObjectWrapper? { Loading Loading @@ -611,6 +626,7 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) map.addOnCameraMoveListener { try { cameraMoveListener?.onCameraMove() currentInfoWindow?.update() } catch (e: Exception) { Log.w(TAG, e) } Loading @@ -631,7 +647,11 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) } map.addOnMapClickListener { latlng -> try { mapClickListener?.let { if (!hasSymbolAt(latlng)) it.onMapClick(latlng.toGms()); } if (!hasSymbolAt(latlng)) { mapClickListener?.onMapClick(latlng.toGms()) currentInfoWindow?.close() currentInfoWindow = null } } catch (e: Exception) { Log.w(TAG, e) } Loading Loading @@ -688,12 +708,17 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) } symbolManager.iconAllowOverlap = true symbolManager.addClickListener { val marker = markers[it.id] try { markers[it.id]?.let { markerClickListener?.onMarkerClick(it) } == true if (markers[it.id]?.let { markerClickListener?.onMarkerClick(it) } == true) { return@addClickListener true } } catch (e: Exception) { Log.w(TAG, e) false return@addClickListener false } marker?.let { showInfoWindow(it) } == true } symbolManager.addDragListener(object : OnSymbolDragListener { override fun onAnnotationDragStarted(annotation: Symbol?) { Loading Loading @@ -761,6 +786,17 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) } } internal fun showInfoWindow(marker: MarkerImpl): Boolean { infoWindowAdapter.getInfoWindowViewFor(marker, MapContext(context))?.let { infoView -> currentInfoWindow?.close() currentInfoWindow = InfoWindow(infoView, this, marker).also { infoWindow -> mapView?.let { infoWindow.open(it) } } return true } return false } override fun useViewLifecycleWhenInFragment(): Boolean { Log.d(TAG, "unimplemented Method: useViewLifecycleWhenInFragment") return false Loading @@ -782,6 +818,8 @@ class GoogleMapImpl(private val context: Context, var options: GoogleMapOptions) symbolManager?.onDestroy() symbolManager = null currentInfoWindow?.close() pendingMarkers.clear() markers.clear() Loading
play-services-maps-core-mapbox/src/main/kotlin/org/microg/gms/maps/mapbox/model/BitmapDescriptor.kt +1 −1 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ import com.mapbox.mapboxsdk.plugins.annotation.SymbolOptions import com.mapbox.mapboxsdk.style.layers.Property.ICON_ANCHOR_TOP_LEFT import com.mapbox.mapboxsdk.utils.ColorUtils open class BitmapDescriptorImpl(private val id: String, private val size: FloatArray) { open class BitmapDescriptorImpl(private val id: String, internal val size: FloatArray) { open fun applyTo(options: SymbolOptions, anchor: FloatArray, dpiFactor: Float): SymbolOptions { return options.withIconImage(id).withIconAnchor(ICON_ANCHOR_TOP_LEFT).withIconOffset(arrayOf(-anchor[0] * size[0] / dpiFactor, -anchor[1] * size[1] / dpiFactor)) } Loading