├── CODEOWNERS ├── mapbox ├── .gitignore ├── src │ └── main │ │ ├── AndroidManifest.xml │ │ └── java │ │ └── nz │ │ └── co │ │ └── trademe │ │ └── mapme │ │ └── mapbox │ │ ├── MapboxMapMeAdapter.kt │ │ ├── Extensions.kt │ │ ├── MapboxAnnotationFactory.kt │ │ └── MapboxMarkerAnnotation.kt ├── proguard-rules.pro └── build.gradle ├── mapme ├── .gitignore ├── src │ ├── main │ │ ├── AndroidManifest.xml │ │ └── java │ │ │ └── nz │ │ │ └── co │ │ │ └── trademe │ │ │ └── mapme │ │ │ ├── annotations │ │ │ ├── OnInfoWindowClickListener.java │ │ │ ├── OnMapAnnotationClickListener.java │ │ │ ├── AnnotationFactory.kt │ │ │ ├── MapAnnotation.kt │ │ │ ├── Placeholder.kt │ │ │ └── MarkerAnnotation.kt │ │ │ ├── LatLng.kt │ │ │ ├── UpdateOp.java │ │ │ ├── MapAdapterHelper.kt │ │ │ ├── OpReorderer.java │ │ │ └── MapMeAdapter.kt │ └── test │ │ └── java │ │ └── nz │ │ └── co │ │ └── trademe │ │ └── mapme │ │ ├── util │ │ ├── TestAnnotationFactory.kt │ │ ├── TestItem.kt │ │ ├── TestAnnotation.kt │ │ ├── ItemsHelper.kt │ │ └── TestAdapter.kt │ │ ├── AdapterHelperTest.kt │ │ ├── simple │ │ └── AdapterTestSimple.kt │ │ ├── move │ │ └── AdapterTestAdvanced.kt │ │ └── BaseAdapterTest.kt ├── proguard-rules.pro └── build.gradle ├── sample ├── .gitignore ├── src │ └── main │ │ ├── res │ │ ├── values │ │ │ ├── dimens.xml │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ ├── drawable-hdpi │ │ │ ├── marker_blue.png │ │ │ ├── marker_red.png │ │ │ └── marker_green.png │ │ ├── drawable-mdpi │ │ │ ├── marker_blue.png │ │ │ ├── marker_red.png │ │ │ └── marker_green.png │ │ ├── drawable-xhdpi │ │ │ ├── marker_red.png │ │ │ ├── marker_blue.png │ │ │ └── marker_green.png │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ ├── drawable-xxhdpi │ │ │ ├── marker_blue.png │ │ │ ├── marker_green.png │ │ │ └── marker_red.png │ │ ├── drawable-xxxhdpi │ │ │ ├── marker_blue.png │ │ │ ├── marker_red.png │ │ │ └── marker_green.png │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ ├── layout │ │ │ ├── mapbox_activity.xml │ │ │ ├── googlemaps_activity.xml │ │ │ ├── marker_bottom_sheet.xml │ │ │ └── choice_activity.xml │ │ └── menu │ │ │ └── menu.xml │ │ ├── ic_launcher-web.png │ │ ├── java │ │ └── nz │ │ │ └── co │ │ │ └── trademe │ │ │ └── mapme │ │ │ └── sample │ │ │ ├── Constants.java │ │ │ ├── SampleApplication.java │ │ │ ├── Util.java │ │ │ ├── activities │ │ │ ├── GoogleMapsActivity.java │ │ │ ├── ChoiceActivity.java │ │ │ ├── MapActivity.java │ │ │ ├── MapBoxActivity.java │ │ │ └── BaseActivity.java │ │ │ ├── MarkerBottomSheet.java │ │ │ ├── MarkerData.java │ │ │ └── SampleMapMeAdapter.java │ │ └── AndroidManifest.xml ├── proguard-rules.pro └── build.gradle ├── googlemaps ├── .gitignore ├── src │ └── main │ │ ├── AndroidManifest.xml │ │ └── java │ │ └── nz │ │ └── co │ │ └── trademe │ │ └── mapme │ │ └── googlemaps │ │ ├── GoogleMapMeAdapter.kt │ │ ├── Extensions.kt │ │ ├── GoogleMapAnnotationFactory.kt │ │ └── GoogleMapMarkerAnnotation.kt ├── proguard-rules.pro └── build.gradle ├── lint.xml ├── settings.gradle ├── img └── feature.png ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── .gitignore ├── CONTRIBUTING.md ├── gradle.properties ├── .travis.yml ├── RELEASING.md ├── common.gradle ├── LICENSE ├── .github └── workflows │ ├── snapshot.yml │ └── publish.yml ├── CHANGELOG.md ├── publish-root.gradle ├── gradlew.bat ├── publishing.gradle ├── gradlew └── README.md /CODEOWNERS: -------------------------------------------------------------------------------- 1 | @athornz -------------------------------------------------------------------------------- /mapbox/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /mapme/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /sample/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /googlemaps/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /lint.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':sample', ':mapme', ':googlemaps', ':mapbox' 2 | -------------------------------------------------------------------------------- /img/feature.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/img/feature.png -------------------------------------------------------------------------------- /mapbox/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /mapme/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /sample/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | -------------------------------------------------------------------------------- /sample/src/main/ic_launcher-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/ic_launcher-web.png -------------------------------------------------------------------------------- /googlemaps/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-hdpi/marker_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-hdpi/marker_blue.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-hdpi/marker_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-hdpi/marker_red.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-mdpi/marker_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-mdpi/marker_blue.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-mdpi/marker_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-mdpi/marker_red.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xhdpi/marker_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-xhdpi/marker_red.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-hdpi/marker_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-hdpi/marker_green.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-mdpi/marker_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-mdpi/marker_green.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xhdpi/marker_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-xhdpi/marker_blue.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xhdpi/marker_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-xhdpi/marker_green.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xxhdpi/marker_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-xxhdpi/marker_blue.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xxhdpi/marker_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-xxhdpi/marker_green.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xxhdpi/marker_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-xxhdpi/marker_red.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xxxhdpi/marker_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-xxxhdpi/marker_blue.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xxxhdpi/marker_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-xxxhdpi/marker_red.png -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /sample/src/main/res/drawable-xxxhdpi/marker_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TradeMe/MapMe/HEAD/sample/src/main/res/drawable-xxxhdpi/marker_green.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | /.idea 3 | .gradle 4 | /local.properties 5 | /.idea/workspace.xml 6 | /.idea/libraries 7 | .DS_Store 8 | /build 9 | /captures 10 | .externalNativeBuild 11 | -------------------------------------------------------------------------------- /mapme/src/main/java/nz/co/trademe/mapme/annotations/OnInfoWindowClickListener.java: -------------------------------------------------------------------------------- 1 | package nz.co.trademe.mapme.annotations; 2 | 3 | public interface OnInfoWindowClickListener { 4 | 5 | boolean onInfoWindowClick(MapAnnotation mapAnnotationObject); 6 | 7 | } -------------------------------------------------------------------------------- /sample/src/main/java/nz/co/trademe/mapme/sample/Constants.java: -------------------------------------------------------------------------------- 1 | package nz.co.trademe.mapme.sample; 2 | 3 | public class Constants { 4 | 5 | public static final double AUCKLAND_LAT = -36.8485; 6 | public static final double AUCKLAND_LON = 174.7633; 7 | } 8 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Fri Mar 10 13:26:55 NZDT 2017 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-all.zip 7 | -------------------------------------------------------------------------------- /mapme/src/main/java/nz/co/trademe/mapme/annotations/OnMapAnnotationClickListener.java: -------------------------------------------------------------------------------- 1 | package nz.co.trademe.mapme.annotations; 2 | 3 | import androidx.annotation.NonNull; 4 | 5 | public interface OnMapAnnotationClickListener { 6 | 7 | boolean onMapAnnotationClick(@NonNull MapAnnotation mapAnnotationObject); 8 | 9 | } -------------------------------------------------------------------------------- /mapbox/src/main/java/nz/co/trademe/mapme/mapbox/MapboxMapMeAdapter.kt: -------------------------------------------------------------------------------- 1 | package nz.co.trademe.mapme.mapbox 2 | 3 | import android.content.Context 4 | import com.mapbox.mapboxsdk.maps.MapboxMap 5 | import nz.co.trademe.mapme.MapMeAdapter 6 | 7 | abstract class MapboxMapMeAdapter(context: Context) : MapMeAdapter(context, MapboxAnnotationFactory()) -------------------------------------------------------------------------------- /sample/src/main/res/layout/mapbox_activity.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /sample/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | 8 | #ef5350 9 | #42A5F5 10 | #66BB6A 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing 2 | 3 | We welcome contributions to this repository. 4 | 5 | To avoid wasting anyone's time, ensure you *first discuss the change you wish to make by opening an issue*. 6 | 7 | All contributions must follow the conventions, code style and formatting of this repository. 8 | 9 | Other things to consider: 10 | * all tests should pass 11 | * new features should be accompanied by tests 12 | * breaking changes should be avoided 13 | -------------------------------------------------------------------------------- /googlemaps/src/main/java/nz/co/trademe/mapme/googlemaps/GoogleMapMeAdapter.kt: -------------------------------------------------------------------------------- 1 | package nz.co.trademe.mapme.googlemaps 2 | 3 | import android.content.Context 4 | import com.google.android.gms.maps.GoogleMap 5 | import nz.co.trademe.mapme.MapMeAdapter 6 | import nz.co.trademe.mapme.annotations.MapAnnotation 7 | import nz.co.trademe.mapme.annotations.OnInfoWindowClickListener 8 | 9 | abstract class GoogleMapMeAdapter(context: Context) : MapMeAdapter(context, GoogleMapAnnotationFactory()){ 10 | } 11 | 12 | -------------------------------------------------------------------------------- /sample/src/main/java/nz/co/trademe/mapme/sample/SampleApplication.java: -------------------------------------------------------------------------------- 1 | package nz.co.trademe.mapme.sample; 2 | 3 | import android.app.Application; 4 | 5 | 6 | import com.mapbox.mapboxsdk.Mapbox; 7 | 8 | import timber.log.Timber; 9 | 10 | public class SampleApplication extends Application { 11 | 12 | @Override 13 | public void onCreate() { 14 | super.onCreate(); 15 | Timber.plant(new Timber.DebugTree()); 16 | Mapbox.getInstance(this, getResources().getString(R.string.mapbox_key)); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | org.gradle.jvmargs=-Xmx1536m 2 | #Disables an error with Gradle that is fixed in Gradle 4.4 but an error is still thrown with AGP 3.0.1 3 | #error will be removed in 3.1.0 4 | #See https://d.android.com/r/tools/buildscript-classpath-check.html 5 | android.enableBuildScriptClasspathCheck=false 6 | 7 | # Bintray credentials - When publishing, ensure changes to this file are not added to source control 8 | BINTRAY_USERNAME=INSERT_USERNAME_HERE 9 | BINTRAY_API_KEY=INSERT_KEY_HERE 10 | android.useAndroidX=true 11 | android.enableJetifier=true -------------------------------------------------------------------------------- /mapme/src/main/java/nz/co/trademe/mapme/annotations/AnnotationFactory.kt: -------------------------------------------------------------------------------- 1 | package nz.co.trademe.mapme.annotations 2 | 3 | import android.graphics.Bitmap 4 | import nz.co.trademe.mapme.LatLng 5 | 6 | interface AnnotationFactory { 7 | 8 | fun createMarker(latLng: LatLng, icon: Bitmap?, title: String?): MarkerAnnotation 9 | 10 | fun clear(map: Map) 11 | 12 | fun setOnMarkerClickListener(map: Map, onClick: (marker: Any) -> Boolean) 13 | 14 | fun setOnInfoWindowClickListener(map: Map, onClick: (marker: Any) -> Boolean) 15 | 16 | } -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: android 2 | 3 | android: 4 | components: 5 | - tools 6 | - platform-tools 7 | 8 | before_install: 9 | - mkdir "$ANDROID_HOME/licenses" || true 10 | - echo "8933bad161af4178b1185d1a37fbf41ea5269c55" > "$ANDROID_HOME/licenses/android-sdk-license" 11 | - echo "d56f5187479451eabf01fb78af6dfcb131a6481e" > "$ANDROID_HOME/licenses/android-sdk-license" 12 | - echo "84831b9409646a918e30573bab4c9c91346d8abd" > "$ANDROID_HOME/licenses/android-sdk-preview-license" 13 | 14 | jdk: 15 | - oraclejdk8 16 | 17 | sudo: false 18 | 19 | cache: 20 | directories: 21 | - $HOME/.m2 -------------------------------------------------------------------------------- /mapme/src/main/java/nz/co/trademe/mapme/annotations/MapAnnotation.kt: -------------------------------------------------------------------------------- 1 | package nz.co.trademe.mapme.annotations 2 | 3 | import android.content.Context 4 | import nz.co.trademe.mapme.NO_POSITION 5 | import java.io.Serializable 6 | 7 | abstract class MapAnnotation : Serializable { 8 | 9 | var position = NO_POSITION 10 | var placeholder = false 11 | internal var isDirty = false 12 | 13 | abstract fun annotatesObject(nativeObject: Any): Boolean 14 | 15 | abstract fun addToMap(map: Any, context: Context) 16 | 17 | abstract fun removeFromMap(map: Any, context: Context) 18 | 19 | } 20 | 21 | -------------------------------------------------------------------------------- /mapbox/src/main/java/nz/co/trademe/mapme/mapbox/Extensions.kt: -------------------------------------------------------------------------------- 1 | @file:JvmName("MapBoxUtils") 2 | package nz.co.trademe.mapme.mapbox 3 | 4 | import android.content.Context 5 | import android.graphics.Bitmap 6 | import com.mapbox.mapboxsdk.annotations.Icon 7 | import com.mapbox.mapboxsdk.annotations.IconFactory 8 | import nz.co.trademe.mapme.LatLng 9 | 10 | fun LatLng.toMapBoxLatLng(): com.mapbox.mapboxsdk.geometry.LatLng { 11 | return com.mapbox.mapboxsdk.geometry.LatLng(this.latitude, this.longitude) 12 | } 13 | 14 | fun Bitmap.toMapboxIcon(context: Context): Icon { 15 | return IconFactory.getInstance(context).fromBitmap(this) 16 | } 17 | -------------------------------------------------------------------------------- /googlemaps/src/main/java/nz/co/trademe/mapme/googlemaps/Extensions.kt: -------------------------------------------------------------------------------- 1 | @file:JvmName("GoogleMapUtils") 2 | package nz.co.trademe.mapme.googlemaps 3 | 4 | import android.graphics.Bitmap 5 | import com.google.android.gms.maps.model.BitmapDescriptor 6 | import com.google.android.gms.maps.model.BitmapDescriptorFactory 7 | import nz.co.trademe.mapme.LatLng 8 | 9 | 10 | fun LatLng.toGoogleMapsLatLng(): com.google.android.gms.maps.model.LatLng { 11 | return com.google.android.gms.maps.model.LatLng(this.latitude, this.longitude) 12 | } 13 | 14 | fun Bitmap.toBitmapDescriptor(): BitmapDescriptor { 15 | return BitmapDescriptorFactory.fromBitmap(this) 16 | } -------------------------------------------------------------------------------- /RELEASING.md: -------------------------------------------------------------------------------- 1 | Releasing 2 | ======== 3 | 4 | 1. Change the version in `common.gradle` to a non-SNAPSHOT version. 5 | 2. Update the `CHANGELOG.md` for the impending release. 6 | 3. Update the `README.md` with the new version. 7 | 4. `git commit -am "Prepare for release X.Y.Z."` (where X.Y.Z is the new version) 8 | 5. `./gradlew clean build publishAarPublicationToBintrayRepository`. 9 | 6. Visit [Bintray](https://bintray.com) and publish the artifact. 10 | 7. `git tag -a X.Y.X -m "Version X.Y.Z"` (where X.Y.Z is the new version) 11 | 8. Update the version in `common.gradle` to the next SNAPSHOT version. 12 | 9. `git commit -am "Prepare next development version."` 13 | 10. `git push && git push --tags` 14 | -------------------------------------------------------------------------------- /mapme/src/test/java/nz/co/trademe/mapme/util/TestAnnotationFactory.kt: -------------------------------------------------------------------------------- 1 | package nz.co.trademe.mapme.util 2 | 3 | class TestAnnotationFactory : nz.co.trademe.mapme.annotations.AnnotationFactory { 4 | 5 | override fun createMarker(latLng: nz.co.trademe.mapme.LatLng, icon: android.graphics.Bitmap?, title: String?): nz.co.trademe.mapme.annotations.MarkerAnnotation { 6 | return TestAnnotation() 7 | } 8 | 9 | override fun clear(map: TestMap) { 10 | } 11 | 12 | override fun setOnMarkerClickListener(map: TestMap, onClick: (marker: Any) -> Boolean) { 13 | } 14 | 15 | override fun setOnInfoWindowClickListener(map: TestMap, onClick: (marker: Any) -> Boolean) { 16 | } 17 | } 18 | 19 | -------------------------------------------------------------------------------- /sample/src/main/res/layout/googlemaps_activity.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /common.gradle: -------------------------------------------------------------------------------- 1 | ext.version = "1.2.1" 2 | ext.group = "nz.co.trademe.mapme" 3 | ext.repo = "mapme" 4 | ext.org = "trademe" 5 | ext.scm = 'https://github.com/TradeMe/MapMe.git' 6 | ext.url = 'https://github.com/TradeMe/MapMe' 7 | ext.description = 'MapMe is an Android library that brings the adapter pattern to Maps, simplifying the management of markers and annotations.' 8 | 9 | ext.connection = 'scm:git:github.com/TradeMe/MapMe.git' 10 | ext.developerConnection = 'scm:git:ssh://github.com/TradeMe/MapMe.git' 11 | 12 | ext.compileSdk = 30 13 | ext.minSdk = 19 14 | ext.buildTools = "29.0.3" 15 | ext.kotlin_version = '1.5.0' 16 | ext.dokka_version = '0.9.15' 17 | ext.gradle_version = '4.0.1' 18 | ext.mapbox_version = '6.4.0' 19 | ext.google_play_services_version = '15.0.1' 20 | ext.androidx_version = '1.0.0' 21 | ext.android_maven_version = '3.6.2' 22 | 23 | -------------------------------------------------------------------------------- /sample/src/main/res/layout/marker_bottom_sheet.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 19 | 20 | -------------------------------------------------------------------------------- /sample/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | MapMe 3 | Google Maps 4 | MapBox 5 | Map type 6 | Remove 7 | Add 10 markers 8 | Remove 5 9 | Add 5, remove 5 10 | Change 5 11 | Move and change 12 | Move and change special 13 | Detect moves 14 | RecyclerView 15 | MapMe - Google Maps 16 | MapMe - Mapbox 17 | 18 | -------------------------------------------------------------------------------- /sample/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 10 | 11 | 15 | 16 | 19 | 20 |