From d0622d14b151dcfaa2888c37359460e50b79bbfc Mon Sep 17 00:00:00 2001 From: Josephine Lim Date: Mon, 15 May 2017 11:18:53 +0200 Subject: [PATCH 1/4] Display toast if no nearby places found --- .../nrw/commons/nearby/NearbyActivity.java | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java index 43966f7a4..e64a29229 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java @@ -1,5 +1,6 @@ package fr.free.nrw.commons.nearby; +import android.content.Context; import android.net.Uri; import android.os.AsyncTask; import android.os.Bundle; @@ -10,6 +11,7 @@ import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.widget.ProgressBar; +import android.widget.Toast; import butterknife.BindView; import butterknife.ButterKnife; @@ -51,7 +53,7 @@ public class NearbyActivity extends BaseActivity { locationManager = new LocationServiceManager(this); locationManager.registerLocationManager(); curLatLang = locationManager.getLatestLocation(); - nearbyAsyncTask = new NearbyAsyncTask(); + nearbyAsyncTask = new NearbyAsyncTask(this); nearbyAsyncTask.execute(); } @@ -104,7 +106,7 @@ public class NearbyActivity extends BaseActivity { } protected void refreshView() { - nearbyAsyncTask = new NearbyAsyncTask(); + nearbyAsyncTask = new NearbyAsyncTask(this); nearbyAsyncTask.execute(); } @@ -120,6 +122,12 @@ public class NearbyActivity extends BaseActivity { private class NearbyAsyncTask extends AsyncTask> { + private Context mContext; + + private NearbyAsyncTask (Context context) { + mContext = context; + } + @Override protected void onPreExecute() { super.onPreExecute(); @@ -151,6 +159,14 @@ public class NearbyActivity extends BaseActivity { gsonPlaceList = gson.toJson(placeList); gsonCurLatLng = gson.toJson(curLatLang); + if (placeList.size() == 0) { + CharSequence text = "No nearby places found"; + int duration = Toast.LENGTH_SHORT; + + Toast toast = Toast.makeText(mContext, text, duration); + toast.show(); + } + bundle.clear(); bundle.putString("PlaceList", gsonPlaceList); bundle.putString("CurLatLng", gsonCurLatLng); From 4a53db8476b390ed7cbebda65b73ddefef14cea6 Mon Sep 17 00:00:00 2001 From: Josephine Lim Date: Mon, 15 May 2017 11:20:53 +0200 Subject: [PATCH 2/4] Add string resources --- .../main/java/fr/free/nrw/commons/nearby/NearbyActivity.java | 4 +--- app/src/main/res/values/strings.xml | 1 + 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java index e64a29229..633be2794 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyActivity.java @@ -160,10 +160,8 @@ public class NearbyActivity extends BaseActivity { gsonCurLatLng = gson.toJson(curLatLang); if (placeList.size() == 0) { - CharSequence text = "No nearby places found"; int duration = Toast.LENGTH_SHORT; - - Toast toast = Toast.makeText(mContext, text, duration); + Toast toast = Toast.makeText(mContext, R.string.no_nearby, duration); toast.show(); } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 10616fed5..c2df9e32d 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -157,6 +157,7 @@ Tap this message (or hit back) to skip this step. Optional permission: Get current location for category suggestions OK Nearby Places + No nearby places found Warning This file already exists on Commons. Are you sure you want to proceed? Yes From 83727e43e636d0151f47ce3f500fbf41a918dc0f Mon Sep 17 00:00:00 2001 From: Dinu Kumarasiri Date: Mon, 15 May 2017 11:16:40 +0200 Subject: [PATCH 3/4] Add upload date to the image description --- .../commons/media/MediaDetailFragment.java | 16 +++++++++ .../main/res/layout/fragment_media_detail.xml | 35 +++++++++++++++++++ app/src/main/res/values/strings.xml | 1 + 3 files changed, 52 insertions(+) diff --git a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java index b32d83a31..a3b2d74e1 100644 --- a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java @@ -23,7 +23,9 @@ import com.nostra13.universalimageloader.core.assist.FailReason; import com.nostra13.universalimageloader.core.assist.ImageLoadingListener; import java.io.IOException; +import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Date; import fr.free.nrw.commons.CommonsApplication; import fr.free.nrw.commons.License; @@ -71,6 +73,7 @@ public class MediaDetailFragment extends Fragment { private TextView desc; private TextView license; private TextView coordinates; + private TextView uploadedDate; private LinearLayout categoryContainer; private ScrollView scrollView; private ArrayList categoryNames; @@ -125,6 +128,7 @@ public class MediaDetailFragment extends Fragment { desc = (TextView) view.findViewById(R.id.mediaDetailDesc); license = (TextView) view.findViewById(R.id.mediaDetailLicense); coordinates = (TextView) view.findViewById(R.id.mediaDetailCoordinates); + uploadedDate = (TextView) view.findViewById(R.id.mediaDetailuploadeddate); categoryContainer = (LinearLayout) view.findViewById(R.id.mediaDetailCategoryContainer); licenseList = new LicenseList(getActivity()); @@ -229,6 +233,7 @@ public class MediaDetailFragment extends Fragment { desc.setText(prettyDescription(media)); license.setText(prettyLicense(media)); coordinates.setText(prettyCoordinates(media)); + uploadedDate.setText(prettyUploadedDate(media)); categoryNames.removeAll(categoryNames); categoryNames.addAll(media.getCategories()); @@ -392,6 +397,17 @@ public class MediaDetailFragment extends Fragment { } } + private String prettyUploadedDate(Media media) { + Date date = media.getDateUploaded(); + if(date.toString() == null || date.toString().isEmpty()) { + return "Uploaded date not available"; + } + SimpleDateFormat formatter = new SimpleDateFormat("dd MMM yyyy"); + String formattedDate = formatter.format(date); + // Timber.d("Media uploaded date is: s%", formattedDate); + return formattedDate; + } + /** * Returns the coordinates nicely formatted. * diff --git a/app/src/main/res/layout/fragment_media_detail.xml b/app/src/main/res/layout/fragment_media_detail.xml index 279957270..121f777c4 100644 --- a/app/src/main/res/layout/fragment_media_detail.xml +++ b/app/src/main/res/layout/fragment_media_detail.xml @@ -217,6 +217,41 @@ android:id="@+id/mediaDetailCategoryContainer" /> + + + + + + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index bad2512de..410b8a9c1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -165,6 +165,7 @@ Tap this message (or hit back) to skip this step. Title of the media Description Description of the media goes here. This can potentially be fairly long, and will need to wrap across multiple lines. We hope it looks nice though. + Uploaded date> Become a Beta Tester Opt-in to our beta channel on Google Play and get early access to new features and bug fixes https://play.google.com/apps/testing/fr.free.nrw.commons From a2a2589df38e439e438b4f16a20fb5f07e43c26a Mon Sep 17 00:00:00 2001 From: Dinu Kumarasiri Date: Mon, 15 May 2017 11:32:48 +0200 Subject: [PATCH 4/4] Fix codecy failures --- .../java/fr/free/nrw/commons/media/MediaDetailFragment.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java index a3b2d74e1..6d46da801 100644 --- a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.java @@ -399,12 +399,11 @@ public class MediaDetailFragment extends Fragment { private String prettyUploadedDate(Media media) { Date date = media.getDateUploaded(); - if(date.toString() == null || date.toString().isEmpty()) { + if (date.toString() == null || date.toString().isEmpty()) { return "Uploaded date not available"; } SimpleDateFormat formatter = new SimpleDateFormat("dd MMM yyyy"); String formattedDate = formatter.format(date); - // Timber.d("Media uploaded date is: s%", formattedDate); return formattedDate; }