Loading play-services-maps-core-mapbox/src/main/kotlin/org/microg/gms/maps/mapbox/AbstractGoogleMap.kt +21 −1 Original line number Diff line number Diff line Loading @@ -8,6 +8,8 @@ import android.util.Log import com.google.android.gms.dynamic.IObjectWrapper import com.google.android.gms.dynamic.ObjectWrapper import com.google.android.gms.maps.internal.* import com.mapbox.mapboxsdk.location.engine.LocationEngineCallback import com.mapbox.mapboxsdk.location.engine.LocationEngineResult import org.microg.gms.maps.MapsConstants import org.microg.gms.maps.mapbox.model.AbstractMarker import org.microg.gms.maps.mapbox.model.DefaultInfoWindowAdapter Loading @@ -32,9 +34,27 @@ abstract class AbstractGoogleMap(context: Context) : IGoogleMapDelegate.Stub() { internal var markerClickListener: IOnMarkerClickListener? = null internal var circleClickListener: IOnCircleClickListener? = null internal var myLocationChangeListener: IOnMyLocationChangeListener? = null internal val locationEngineCallback = object : LocationEngineCallback<LocationEngineResult> { override fun onSuccess(result: LocationEngineResult?) { result?.lastLocation?.let { location -> Log.d(TAG, "myLocationChanged: $location") myLocationChangeListener?.onMyLocationChanged(ObjectWrapper.wrap(location)) onLocationUpdate(location) } } override fun onFailure(e: Exception) { Log.e(TAG, "Failed to obtain location update", e) } } internal abstract fun showInfoWindow(marker: AbstractMarker): Boolean internal abstract fun onLocationUpdate(location: Location) override fun setOnInfoWindowClickListener(listener: IOnInfoWindowClickListener?) { onInfoWindowClickListener = listener } Loading Loading @@ -77,7 +97,7 @@ abstract class AbstractGoogleMap(context: Context) : IGoogleMapDelegate.Stub() { } override fun setOnMyLocationChangeListener(listener: IOnMyLocationChangeListener?) { Log.d(TAG, "unimplemented Method: setOnMyLocationChangeListener") myLocationChangeListener = listener } override fun setOnMyLocationButtonClickListener(listener: IOnMyLocationButtonClickListener?) { Loading play-services-maps-core-mapbox/src/main/kotlin/org/microg/gms/maps/mapbox/GoogleMap.kt +4 −15 Original line number Diff line number Diff line Loading @@ -57,8 +57,6 @@ 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 com.mapbox.mapboxsdk.location.engine.LocationEngineCallback import com.mapbox.mapboxsdk.location.engine.LocationEngineResult import org.microg.gms.maps.MapsConstants.* import org.microg.gms.maps.mapbox.model.* import org.microg.gms.maps.mapbox.utils.MultiArchLoader Loading Loading @@ -97,19 +95,6 @@ class GoogleMapImpl(context: Context, var options: GoogleMapOptions) : AbstractG private var cameraMoveStartedListener: IOnCameraMoveStartedListener? = null private var cameraIdleListener: IOnCameraIdleListener? = null private var markerDragListener: IOnMarkerDragListener? = null private var myLocationChangeListener: IOnMyLocationChangeListener? = null private val locationEngineCallback = object : LocationEngineCallback<LocationEngineResult> { override fun onSuccess(result: LocationEngineResult?) { result?.lastLocation?.let { location -> Log.d(TAG, "myLocationChanged: $location") myLocationChangeListener?.onMyLocationChanged(ObjectWrapper.wrap(location)) } } override fun onFailure(e: Exception) { Log.w(TAG, e) } } var lineManager: LineManager? = null val pendingLines = mutableSetOf<Markup<Line, LineOptions>>() Loading Loading @@ -436,6 +421,10 @@ class GoogleMapImpl(context: Context, var options: GoogleMapOptions) : AbstractG } } override fun onLocationUpdate(location: Location) { // no action necessary, as the location component will automatically place a marker on the map } override fun setContentDescription(desc: String?) { mapView?.contentDescription = desc } Loading play-services-maps-core-mapbox/src/main/kotlin/org/microg/gms/maps/mapbox/LiteGoogleMap.kt +7 −15 Original line number Diff line number Diff line Loading @@ -29,7 +29,6 @@ import com.google.android.gms.maps.model.internal.* import com.mapbox.mapboxsdk.Mapbox import com.mapbox.mapboxsdk.WellKnownTileServer import com.mapbox.mapboxsdk.location.engine.* import com.mapbox.mapboxsdk.maps.Style import com.mapbox.mapboxsdk.plugins.annotation.SymbolOptions import com.mapbox.mapboxsdk.snapshotter.MapSnapshot import com.mapbox.mapboxsdk.snapshotter.MapSnapshotter Loading @@ -37,7 +36,6 @@ import com.mapbox.mapboxsdk.style.layers.* import com.mapbox.mapboxsdk.style.sources.GeoJsonSource import com.mapbox.turf.TurfConstants.UNIT_METERS import com.mapbox.turf.TurfMeasurement import org.microg.gms.maps.MapsConstants import org.microg.gms.maps.mapbox.model.* import org.microg.gms.maps.mapbox.utils.toGms import org.microg.gms.maps.mapbox.utils.toMapbox Loading Loading @@ -92,17 +90,6 @@ class LiteGoogleMapImpl(context: Context, var options: GoogleMapOptions) : Abstr private var myLocationEnabled = false private var myLocation: Location? = null private var locationEngineProvider: LocationEngine = LocationEngineDefault.getDefaultLocationEngine(mapContext) private val locationListener = object : LocationEngineCallback<LocationEngineResult> { override fun onSuccess(result: LocationEngineResult?) { this@LiteGoogleMapImpl.myLocation = result?.lastLocation postUpdateSnapshot() } override fun onFailure(exception: Exception) { // same behavior as MapLibre's LocationComponent Log.e(TAG, "Failed to obtain location update", exception) } } internal val markers: MutableList<LiteMarkerImpl> = mutableListOf() internal val polygons: MutableList<LitePolygonImpl> = mutableListOf() Loading Loading @@ -502,7 +489,7 @@ class LiteGoogleMapImpl(context: Context, var options: GoogleMapOptions) : Abstr LocationEngineRequest.Builder(DEFAULT_INTERVAL_MILLIS) .setFastestInterval(DEFAULT_FASTEST_INTERVAL_MILLIS) .setPriority(LocationEngineRequest.PRIORITY_HIGH_ACCURACY) .build(), locationListener, Looper.getMainLooper() .build(), locationEngineCallback, Looper.getMainLooper() ) } else { Loading @@ -511,7 +498,12 @@ class LiteGoogleMapImpl(context: Context, var options: GoogleMapOptions) : Abstr } private fun deactivateLocationProvider() { locationEngineProvider.removeLocationUpdates(locationListener) locationEngineProvider.removeLocationUpdates(locationEngineCallback) } override fun onLocationUpdate(location: Location) { this@LiteGoogleMapImpl.myLocation = location postUpdateSnapshot() } override fun getUiSettings(): IUiSettingsDelegate { Loading Loading
play-services-maps-core-mapbox/src/main/kotlin/org/microg/gms/maps/mapbox/AbstractGoogleMap.kt +21 −1 Original line number Diff line number Diff line Loading @@ -8,6 +8,8 @@ import android.util.Log import com.google.android.gms.dynamic.IObjectWrapper import com.google.android.gms.dynamic.ObjectWrapper import com.google.android.gms.maps.internal.* import com.mapbox.mapboxsdk.location.engine.LocationEngineCallback import com.mapbox.mapboxsdk.location.engine.LocationEngineResult import org.microg.gms.maps.MapsConstants import org.microg.gms.maps.mapbox.model.AbstractMarker import org.microg.gms.maps.mapbox.model.DefaultInfoWindowAdapter Loading @@ -32,9 +34,27 @@ abstract class AbstractGoogleMap(context: Context) : IGoogleMapDelegate.Stub() { internal var markerClickListener: IOnMarkerClickListener? = null internal var circleClickListener: IOnCircleClickListener? = null internal var myLocationChangeListener: IOnMyLocationChangeListener? = null internal val locationEngineCallback = object : LocationEngineCallback<LocationEngineResult> { override fun onSuccess(result: LocationEngineResult?) { result?.lastLocation?.let { location -> Log.d(TAG, "myLocationChanged: $location") myLocationChangeListener?.onMyLocationChanged(ObjectWrapper.wrap(location)) onLocationUpdate(location) } } override fun onFailure(e: Exception) { Log.e(TAG, "Failed to obtain location update", e) } } internal abstract fun showInfoWindow(marker: AbstractMarker): Boolean internal abstract fun onLocationUpdate(location: Location) override fun setOnInfoWindowClickListener(listener: IOnInfoWindowClickListener?) { onInfoWindowClickListener = listener } Loading Loading @@ -77,7 +97,7 @@ abstract class AbstractGoogleMap(context: Context) : IGoogleMapDelegate.Stub() { } override fun setOnMyLocationChangeListener(listener: IOnMyLocationChangeListener?) { Log.d(TAG, "unimplemented Method: setOnMyLocationChangeListener") myLocationChangeListener = listener } override fun setOnMyLocationButtonClickListener(listener: IOnMyLocationButtonClickListener?) { Loading
play-services-maps-core-mapbox/src/main/kotlin/org/microg/gms/maps/mapbox/GoogleMap.kt +4 −15 Original line number Diff line number Diff line Loading @@ -57,8 +57,6 @@ 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 com.mapbox.mapboxsdk.location.engine.LocationEngineCallback import com.mapbox.mapboxsdk.location.engine.LocationEngineResult import org.microg.gms.maps.MapsConstants.* import org.microg.gms.maps.mapbox.model.* import org.microg.gms.maps.mapbox.utils.MultiArchLoader Loading Loading @@ -97,19 +95,6 @@ class GoogleMapImpl(context: Context, var options: GoogleMapOptions) : AbstractG private var cameraMoveStartedListener: IOnCameraMoveStartedListener? = null private var cameraIdleListener: IOnCameraIdleListener? = null private var markerDragListener: IOnMarkerDragListener? = null private var myLocationChangeListener: IOnMyLocationChangeListener? = null private val locationEngineCallback = object : LocationEngineCallback<LocationEngineResult> { override fun onSuccess(result: LocationEngineResult?) { result?.lastLocation?.let { location -> Log.d(TAG, "myLocationChanged: $location") myLocationChangeListener?.onMyLocationChanged(ObjectWrapper.wrap(location)) } } override fun onFailure(e: Exception) { Log.w(TAG, e) } } var lineManager: LineManager? = null val pendingLines = mutableSetOf<Markup<Line, LineOptions>>() Loading Loading @@ -436,6 +421,10 @@ class GoogleMapImpl(context: Context, var options: GoogleMapOptions) : AbstractG } } override fun onLocationUpdate(location: Location) { // no action necessary, as the location component will automatically place a marker on the map } override fun setContentDescription(desc: String?) { mapView?.contentDescription = desc } Loading
play-services-maps-core-mapbox/src/main/kotlin/org/microg/gms/maps/mapbox/LiteGoogleMap.kt +7 −15 Original line number Diff line number Diff line Loading @@ -29,7 +29,6 @@ import com.google.android.gms.maps.model.internal.* import com.mapbox.mapboxsdk.Mapbox import com.mapbox.mapboxsdk.WellKnownTileServer import com.mapbox.mapboxsdk.location.engine.* import com.mapbox.mapboxsdk.maps.Style import com.mapbox.mapboxsdk.plugins.annotation.SymbolOptions import com.mapbox.mapboxsdk.snapshotter.MapSnapshot import com.mapbox.mapboxsdk.snapshotter.MapSnapshotter Loading @@ -37,7 +36,6 @@ import com.mapbox.mapboxsdk.style.layers.* import com.mapbox.mapboxsdk.style.sources.GeoJsonSource import com.mapbox.turf.TurfConstants.UNIT_METERS import com.mapbox.turf.TurfMeasurement import org.microg.gms.maps.MapsConstants import org.microg.gms.maps.mapbox.model.* import org.microg.gms.maps.mapbox.utils.toGms import org.microg.gms.maps.mapbox.utils.toMapbox Loading Loading @@ -92,17 +90,6 @@ class LiteGoogleMapImpl(context: Context, var options: GoogleMapOptions) : Abstr private var myLocationEnabled = false private var myLocation: Location? = null private var locationEngineProvider: LocationEngine = LocationEngineDefault.getDefaultLocationEngine(mapContext) private val locationListener = object : LocationEngineCallback<LocationEngineResult> { override fun onSuccess(result: LocationEngineResult?) { this@LiteGoogleMapImpl.myLocation = result?.lastLocation postUpdateSnapshot() } override fun onFailure(exception: Exception) { // same behavior as MapLibre's LocationComponent Log.e(TAG, "Failed to obtain location update", exception) } } internal val markers: MutableList<LiteMarkerImpl> = mutableListOf() internal val polygons: MutableList<LitePolygonImpl> = mutableListOf() Loading Loading @@ -502,7 +489,7 @@ class LiteGoogleMapImpl(context: Context, var options: GoogleMapOptions) : Abstr LocationEngineRequest.Builder(DEFAULT_INTERVAL_MILLIS) .setFastestInterval(DEFAULT_FASTEST_INTERVAL_MILLIS) .setPriority(LocationEngineRequest.PRIORITY_HIGH_ACCURACY) .build(), locationListener, Looper.getMainLooper() .build(), locationEngineCallback, Looper.getMainLooper() ) } else { Loading @@ -511,7 +498,12 @@ class LiteGoogleMapImpl(context: Context, var options: GoogleMapOptions) : Abstr } private fun deactivateLocationProvider() { locationEngineProvider.removeLocationUpdates(locationListener) locationEngineProvider.removeLocationUpdates(locationEngineCallback) } override fun onLocationUpdate(location: Location) { this@LiteGoogleMapImpl.myLocation = location postUpdateSnapshot() } override fun getUiSettings(): IUiSettingsDelegate { Loading