summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortobrun <tobrun.van.nuland@gmail.com>2019-04-15 13:12:10 +0200
committertobrun <tobrun.van.nuland@gmail.com>2019-04-16 11:03:20 +0200
commitfac18a01387efda1417e7fb1e190140fe7938bf9 (patch)
tree07282fa36377d44697461315eb47f57232d54dfd
parenta8526b4c91a2eaad0f915a59f420c513d40aa1ac (diff)
downloadqtlocation-mapboxgl-upstream/tvn-default-nav-test-app.tar.gz
[android] - provide default navigation experience for singleInstance activitiesupstream/tvn-default-nav-test-app
-rw-r--r--platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/feature/QueryRenderedFeaturesBoxCountActivity.java27
-rw-r--r--platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/FragmentBackStackActivity.kt51
-rw-r--r--platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/maplayout/SimpleMapActivity.java21
-rw-r--r--platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewDebugModeActivity.java22
-rw-r--r--platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/utils/NavUtils.java14
5 files changed, 109 insertions, 26 deletions
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/feature/QueryRenderedFeaturesBoxCountActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/feature/QueryRenderedFeaturesBoxCountActivity.java
index 9031240443..75cbf2ac0b 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/feature/QueryRenderedFeaturesBoxCountActivity.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/feature/QueryRenderedFeaturesBoxCountActivity.java
@@ -4,21 +4,21 @@ import android.graphics.PointF;
import android.graphics.RectF;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
+import android.view.MenuItem;
import android.view.View;
import android.widget.Toast;
-
import com.google.gson.JsonElement;
import com.mapbox.geojson.Feature;
import com.mapbox.mapboxsdk.maps.MapView;
import com.mapbox.mapboxsdk.maps.MapboxMap;
import com.mapbox.mapboxsdk.maps.Style;
import com.mapbox.mapboxsdk.testapp.R;
+import com.mapbox.mapboxsdk.testapp.utils.NavUtils;
+import timber.log.Timber;
import java.util.List;
import java.util.Map;
-import timber.log.Timber;
-
/**
* Test activity showcasing using the query rendered features API to count features in a rectangle.
*/
@@ -93,7 +93,7 @@ public class QueryRenderedFeaturesBoxCountActivity extends AppCompatActivity {
if (mapboxMap != null) {
// Regression test for #14394
- mapboxMap.queryRenderedFeatures(new PointF(0,0));
+ mapboxMap.queryRenderedFeatures(new PointF(0, 0));
}
}
@@ -132,4 +132,23 @@ public class QueryRenderedFeaturesBoxCountActivity extends AppCompatActivity {
super.onLowMemory();
mapView.onLowMemory();
}
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ switch (item.getItemId()) {
+ case android.R.id.home:
+ // activity uses singleInstance for testing purposes
+ // code below provides a default navigation when using the app
+ onBackPressed();
+ return true;
+ }
+ return super.onOptionsItemSelected(item);
+ }
+
+ @Override
+ public void onBackPressed() {
+ // activity uses singleInstance for testing purposes
+ // code below provides a default navigation when using the app
+ NavUtils.navigateHome(this);
+ }
}
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/FragmentBackStackActivity.kt b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/FragmentBackStackActivity.kt
index be4d3d2f1b..febe17a701 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/FragmentBackStackActivity.kt
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/fragment/FragmentBackStackActivity.kt
@@ -7,6 +7,7 @@ import com.mapbox.mapboxsdk.maps.MapboxMap
import com.mapbox.mapboxsdk.maps.Style
import com.mapbox.mapboxsdk.maps.SupportMapFragment
import com.mapbox.mapboxsdk.testapp.R
+import com.mapbox.mapboxsdk.testapp.utils.NavUtils
import kotlinx.android.synthetic.main.activity_backstack_fragment.*
/**
@@ -14,32 +15,38 @@ import kotlinx.android.synthetic.main.activity_backstack_fragment.*
*/
class FragmentBackStackActivity : AppCompatActivity() {
- private lateinit var mapFragment: SupportMapFragment
+ private lateinit var mapFragment: SupportMapFragment
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- setContentView(R.layout.activity_backstack_fragment)
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ setContentView(R.layout.activity_backstack_fragment)
- mapFragment = SupportMapFragment.newInstance()
- mapFragment.getMapAsync { initMap(it) }
+ mapFragment = SupportMapFragment.newInstance()
+ mapFragment.getMapAsync { initMap(it) }
- supportFragmentManager.beginTransaction().apply {
- add(R.id.container, mapFragment)
- }.commit()
+ supportFragmentManager.beginTransaction().apply {
+ add(R.id.container, mapFragment)
+ }.commit()
- button.setOnClickListener { handleClick(it) }
- }
-
- private fun initMap(mapboxMap: MapboxMap) {
- mapboxMap.setStyle(Style.SATELLITE) {
- mapboxMap.setPadding(300, 300, 300, 300)
- }
- }
+ button.setOnClickListener { handleClick(it) }
+ }
- private fun handleClick(button: View) {
- supportFragmentManager.beginTransaction().apply {
- replace(R.id.container, NestedViewPagerActivity.ItemAdapter.EmptyFragment())
- addToBackStack("map_empty_fragment")
- }.commit()
+ private fun initMap(mapboxMap: MapboxMap) {
+ mapboxMap.setStyle(Style.SATELLITE) {
+ mapboxMap.setPadding(300, 300, 300, 300)
}
+ }
+
+ private fun handleClick(button: View) {
+ supportFragmentManager.beginTransaction().apply {
+ replace(R.id.container, NestedViewPagerActivity.ItemAdapter.EmptyFragment())
+ addToBackStack("map_empty_fragment")
+ }.commit()
+ }
+
+ override fun onBackPressed() {
+ // activity uses singleInstance for testing purposes
+ // code below provides a default navigation when using the app
+ NavUtils.navigateHome(this)
+ }
} \ No newline at end of file
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/maplayout/SimpleMapActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/maplayout/SimpleMapActivity.java
index 7d2d245f6e..66faf9b7a8 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/maplayout/SimpleMapActivity.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/maplayout/SimpleMapActivity.java
@@ -2,9 +2,11 @@ package com.mapbox.mapboxsdk.testapp.activity.maplayout;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
+import android.view.MenuItem;
import com.mapbox.mapboxsdk.maps.MapView;
import com.mapbox.mapboxsdk.maps.Style;
import com.mapbox.mapboxsdk.testapp.R;
+import com.mapbox.mapboxsdk.testapp.utils.NavUtils;
/**
* Test activity showcasing a simple MapView without any MapboxMap interaction.
@@ -65,4 +67,23 @@ public class SimpleMapActivity extends AppCompatActivity {
super.onSaveInstanceState(outState);
mapView.onSaveInstanceState(outState);
}
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ switch (item.getItemId()) {
+ case android.R.id.home:
+ // activity uses singleInstance for testing purposes
+ // code below provides a default navigation when using the app
+ onBackPressed();
+ return true;
+ }
+ return super.onOptionsItemSelected(item);
+ }
+
+ @Override
+ public void onBackPressed() {
+ // activity uses singleInstance for testing purposes
+ // code below provides a default navigation when using the app
+ NavUtils.navigateHome(this);
+ }
}
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewDebugModeActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewDebugModeActivity.java
index 47df5f6cd5..d2d527f6a7 100644
--- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewDebugModeActivity.java
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/textureview/TextureViewDebugModeActivity.java
@@ -1,8 +1,10 @@
package com.mapbox.mapboxsdk.testapp.activity.textureview;
+import android.view.MenuItem;
import com.mapbox.mapboxsdk.maps.MapboxMapOptions;
import com.mapbox.mapboxsdk.maps.OnMapReadyCallback;
import com.mapbox.mapboxsdk.testapp.activity.maplayout.DebugModeActivity;
+import com.mapbox.mapboxsdk.testapp.utils.NavUtils;
/**
* Test activity showcasing the different debug modes and allows to cycle between the default map styles.
@@ -15,4 +17,24 @@ public class TextureViewDebugModeActivity extends DebugModeActivity implements O
mapboxMapOptions.textureMode(true);
return mapboxMapOptions;
}
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ switch (item.getItemId()) {
+ case android.R.id.home:
+ // activity uses singleInstance for testing purposes
+ // code below provides a default navigation when using the app
+ onBackPressed();
+ return true;
+ }
+ return super.onOptionsItemSelected(item);
+ }
+
+
+ @Override
+ public void onBackPressed() {
+ // activity uses singleInstance for testing purposes
+ // code below provides a default navigation when using the app
+ NavUtils.navigateHome(this);
+ }
}
diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/utils/NavUtils.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/utils/NavUtils.java
new file mode 100644
index 0000000000..f59e80e921
--- /dev/null
+++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/utils/NavUtils.java
@@ -0,0 +1,14 @@
+package com.mapbox.mapboxsdk.testapp.utils;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.support.annotation.NonNull;
+import com.mapbox.mapboxsdk.testapp.activity.FeatureOverviewActivity;
+
+public class NavUtils {
+
+ public static void navigateHome(@NonNull Activity context) {
+ context.startActivity(new Intent(context, FeatureOverviewActivity.class));
+ context.finish();
+ }
+}