summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCameron Mace <cameron@mapbox.com>2016-10-21 10:29:12 -0400
committerGitHub <noreply@github.com>2016-10-21 10:29:12 -0400
commitda9864f25d03cc8cda4df0cb7e675f3abca2a67b (patch)
tree4a75b934d742d57a41f78111ba1f4d40b6efc3ff
parent7bbd49c72c0daa7036a575a49f6cf13bf8a7020e (diff)
downloadqtlocation-mapboxgl-da9864f25d03cc8cda4df0cb7e675f3abca2a67b.tar.gz
Made telemetry dialog material (#6726)
* Made telemetry dialog material * cleaned up attribution_main_menu
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java81
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/res/layout/attribution_list_item.xml12
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/res/layout/attribution_telemetry_view.xml21
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/res/values/arrays.xml10
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/res/values/strings.xml3
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/res/values/styles.xml2
6 files changed, 48 insertions, 81 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
index a0ff646dde..c1d807d451 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java
@@ -18,7 +18,6 @@ import android.graphics.Canvas;
import android.graphics.PointF;
import android.graphics.RectF;
import android.graphics.SurfaceTexture;
-import android.graphics.drawable.ColorDrawable;
import android.location.Location;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
@@ -51,11 +50,9 @@ import android.view.TextureView;
import android.view.View;
import android.view.ViewConfiguration;
import android.view.ViewGroup;
-import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.FrameLayout;
import android.widget.ImageView;
-import android.widget.ListView;
import android.widget.ZoomButtonsController;
import com.almeros.android.multitouch.gesturedetectors.RotateGestureDetector;
@@ -2869,14 +2866,15 @@ public class MapView extends FrameLayout {
// Called when someone presses the attribution icon
@Override
- public void onClick(View v) {
- Context context = v.getContext();
- String[] items = context.getResources().getStringArray(R.array.attribution_names);
- AlertDialog.Builder builder = new AlertDialog.Builder(context, R.style.AttributionAlertDialogStyle);
+ public void onClick(View view) {
+
+ AlertDialog.Builder builder = new AlertDialog.Builder(mapView.getContext(), R.style.TelemAlertDialogStyle);
builder.setTitle(R.string.attributionsDialogTitle);
- builder.setAdapter(new ArrayAdapter<>(context, R.layout.attribution_list_item, items), this);
- AlertDialog dialog = builder.show();
- dialog.getWindow().setBackgroundDrawable(new ColorDrawable(mapView.getAttributionTintColor()));
+ String[] items = mapView.getContext().getResources().getStringArray(R.array.attribution_names);
+ builder.setAdapter(new ArrayAdapter<>(mapView.getContext(), R.layout.attribution_list_item, items), this);
+ AlertDialog attributionDialog = builder.show();
+
+ // TODO Change listview text color to mapView.getAttributionTintColor()
}
// Called when someone selects an attribution, 'Improve this map' adds location data to the url
@@ -2884,45 +2882,38 @@ public class MapView extends FrameLayout {
public void onClick(DialogInterface dialog, int which) {
final Context context = ((Dialog) dialog).getContext();
if (which == ATTRIBUTION_INDEX_TELEMETRY_SETTINGS) {
-
- int array = R.array.attribution_telemetry_options;
- if (MapboxEventManager.getMapboxEventManager().isTelemetryEnabled()) {
- array = R.array.attribution_telemetry_options_already_participating;
- }
- String[] items = context.getResources().getStringArray(array);
- AlertDialog.Builder builder = new AlertDialog.Builder(context, R.style.AttributionAlertDialogStyle);
+ AlertDialog.Builder builder = new AlertDialog.Builder(context, R.style.TelemAlertDialogStyle);
builder.setTitle(R.string.attributionTelemetryTitle);
- LayoutInflater factory = LayoutInflater.from(context);
- View content = factory.inflate(R.layout.attribution_telemetry_view, null);
-
- ListView lv = (ListView) content.findViewById(R.id.telemetryOptionsList);
- lv.setAdapter(new ArrayAdapter<String>(context, R.layout.attribution_list_item, items));
- lv.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
-
- builder.setView(content);
- final AlertDialog telemDialog = builder.show();
- lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
+ builder.setMessage(R.string.attributionTelemetryMessage);
+ builder.setPositiveButton(R.string.attributionTelemetryPositive, new DialogInterface.OnClickListener() {
@Override
- public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
- switch (position) {
- case 0:
- String url = context.getResources().getStringArray(R.array.attribution_links)[3];
- Intent intent = new Intent(Intent.ACTION_VIEW);
- intent.setData(Uri.parse(url));
- context.startActivity(intent);
- telemDialog.cancel();
- return;
- case 1:
- MapboxEventManager.getMapboxEventManager().setTelemetryEnabled(false);
- telemDialog.cancel();
- return;
- case 2:
- MapboxEventManager.getMapboxEventManager().setTelemetryEnabled(true);
- telemDialog.cancel();
- return;
- }
+ public void onClick(DialogInterface dialog, int which) {
+ MapboxEventManager.getMapboxEventManager().setTelemetryEnabled(true);
+ dialog.cancel();
}
});
+ builder.setNeutralButton(R.string.attributionTelemetryNeutral, new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ String url = context.getResources().getStringArray(R.array.attribution_links)[3];
+ Intent intent = new Intent(Intent.ACTION_VIEW);
+ intent.setData(Uri.parse(url));
+ context.startActivity(intent);
+ dialog.cancel();
+ }
+ });
+ builder.setNegativeButton(R.string.attributionTelemetryNegative, new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ MapboxEventManager.getMapboxEventManager().setTelemetryEnabled(false);
+ dialog.cancel();
+ }
+ });
+
+ AlertDialog telemDialog = builder.show();
+ telemDialog.getButton(AlertDialog.BUTTON_POSITIVE).setTextColor(mapView.getAttributionTintColor());
+ telemDialog.getButton(AlertDialog.BUTTON_NEGATIVE).setTextColor(mapView.getAttributionTintColor());
+ telemDialog.getButton(AlertDialog.BUTTON_NEUTRAL).setTextColor(mapView.getAttributionTintColor());
return;
}
String url = context.getResources().getStringArray(R.array.attribution_links)[which];
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/layout/attribution_list_item.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/layout/attribution_list_item.xml
index 1252fb194f..763bb118e0 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/res/layout/attribution_list_item.xml
+++ b/platform/android/MapboxGLAndroidSDK/src/main/res/layout/attribution_list_item.xml
@@ -1,11 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
-<TextView xmlns:android="http://schemas.android.com/apk/res/android"
+<TextView
+ xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:minHeight="?android:attr/listPreferredItemHeightSmall"
- android:paddingLeft="16dp"
- android:paddingRight="16dp"
- android:textAppearance="?android:attr/textAppearanceListItemSmall"
- android:textColor="@android:color/white" />
+ android:paddingLeft="24dp"
+ android:paddingRight="24dp"
+ android:textAllCaps="true"
+ android:textAppearance="?android:attr/textAppearanceButton"
+ android:textColor="@color/mapbox_blue"/>
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/layout/attribution_telemetry_view.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/layout/attribution_telemetry_view.xml
deleted file mode 100644
index b4d2326833..0000000000
--- a/platform/android/MapboxGLAndroidSDK/src/main/res/layout/attribution_telemetry_view.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:orientation="vertical"
- >
-
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/attributionTelemetryMessage"
- android:gravity="center_horizontal"/>
-
- <ListView
- android:id="@+id/telemetryOptionsList"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- />
-
-</LinearLayout>
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/values/arrays.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/values/arrays.xml
index d5d26d09d2..bb466880aa 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/res/values/arrays.xml
+++ b/platform/android/MapboxGLAndroidSDK/src/main/res/values/arrays.xml
@@ -6,16 +6,6 @@
<item>Improve this map</item>
<item>Telemetry Settings</item>
</array>
- <array name="attribution_telemetry_options">
- <item>Tell Me More</item>
- <item>Don\'t Participate</item>
- <item>Participate</item>
- </array>
- <array name="attribution_telemetry_options_already_participating">
- <item>Tell Me More</item>
- <item>Stop Participating</item>
- <item>Keep Participating</item>
- </array>
<!-- If editing this array update MapView.ATTRIBUTION_INDEX_IMPROVE_THIS_MAP -->
<array name="attribution_links" formatted="false" translatable="false">
<item>https://www.mapbox.com/about/maps/</item>
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/values/strings.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/values/strings.xml
index 687b85b2d8..c8bb9d65ba 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/res/values/strings.xml
+++ b/platform/android/MapboxGLAndroidSDK/src/main/res/values/strings.xml
@@ -5,6 +5,9 @@
<string name="attributionsDialogTitle">Mapbox Android SDK</string>
<string name="attributionTelemetryTitle">Make Mapbox Maps Better</string>
<string name="attributionTelemetryMessage">You are helping to make OpenStreetMap and Mapbox maps better by contributing anonymous usage data.</string>
+ <string name="attributionTelemetryPositive">Agree</string>
+ <string name="attributionTelemetryNegative">Disagree</string>
+ <string name="attributionTelemetryNeutral">More info</string>
<string name="mapboxIconContentDescription">The Mapbox logo.</string>
<string name="infoWindowTitle">Title</string>
<string name="infoWindowDescription">Description</string>
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/res/values/styles.xml b/platform/android/MapboxGLAndroidSDK/src/main/res/values/styles.xml
index a46f58ae80..708cfc72e9 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/res/values/styles.xml
+++ b/platform/android/MapboxGLAndroidSDK/src/main/res/values/styles.xml
@@ -6,4 +6,6 @@
<item name="android:textColorPrimary">@android:color/white</item>
</style>
+ <style name="TelemAlertDialogStyle" parent="Theme.AppCompat.Light.Dialog.Alert"/>
+
</resources> \ No newline at end of file