diff options
Diffstat (limited to 'main/src/cgeo/geocaching/ui')
| -rw-r--r-- | main/src/cgeo/geocaching/ui/CacheDetailsCreator.java | 18 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/ui/CacheListAdapter.java | 6 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/ui/Formatter.java | 10 |
3 files changed, 20 insertions, 14 deletions
diff --git a/main/src/cgeo/geocaching/ui/CacheDetailsCreator.java b/main/src/cgeo/geocaching/ui/CacheDetailsCreator.java index 5db562e..f1cee05 100644 --- a/main/src/cgeo/geocaching/ui/CacheDetailsCreator.java +++ b/main/src/cgeo/geocaching/ui/CacheDetailsCreator.java @@ -22,6 +22,7 @@ import android.widget.RelativeLayout; import android.widget.TextView; import java.util.ArrayList; +import java.util.Date; import java.util.List; public final class CacheDetailsCreator { @@ -179,12 +180,17 @@ public final class CacheDetailsCreator { } public void addEventDate(@NonNull Geocache cache) { - if (cache.isEventCache() && cache.getHiddenDate() != null) { - final long time = cache.getHiddenDate().getTime(); - if (time > 0) { - final String dateString = DateUtils.formatDateTime(CgeoApplication.getInstance().getBaseContext(), time, DateUtils.FORMAT_SHOW_WEEKDAY) + ", " + Formatter.formatFullDate(time); - add(R.string.cache_event, dateString); - } + if (!cache.isEventCache()) { + return; + } + final Date hiddenDate = cache.getHiddenDate(); + if (hiddenDate == null) { + return; + } + final long time = hiddenDate.getTime(); + if (time > 0) { + final String dateString = DateUtils.formatDateTime(CgeoApplication.getInstance().getBaseContext(), time, DateUtils.FORMAT_SHOW_WEEKDAY) + ", " + Formatter.formatFullDate(time); + add(R.string.cache_event, dateString); } } } diff --git a/main/src/cgeo/geocaching/ui/CacheListAdapter.java b/main/src/cgeo/geocaching/ui/CacheListAdapter.java index 56cc60a..9646c6a 100644 --- a/main/src/cgeo/geocaching/ui/CacheListAdapter.java +++ b/main/src/cgeo/geocaching/ui/CacheListAdapter.java @@ -400,7 +400,7 @@ public class CacheListAdapter extends ArrayAdapter<Geocache> { } Spannable spannable = null; - if (cache.isDisabled() || cache.isArchived() || isPastEvent(cache)) { // strike + if (cache.isDisabled() || cache.isArchived() || DateUtils.isPastEvent(cache)) { // strike spannable = Spannable.Factory.getInstance().newSpannable(cache.getName()); spannable.setSpan(new StrikethroughSpan(), 0, spannable.toString().length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); } @@ -489,10 +489,6 @@ public class CacheListAdapter extends ArrayAdapter<Geocache> { return v; } - private static boolean isPastEvent(final Geocache cache) { - return cache.isEventCache() && DateUtils.daysSince(cache.getHiddenDate().getTime()) > 0; - } - private static Drawable getCacheIcon(Geocache cache) { int hashCode = getIconHashCode(cache.getType(), cache.hasUserModifiedCoords() || cache.hasFinalDefined()); final Drawable drawable = gcIconDrawables.get(hashCode); diff --git a/main/src/cgeo/geocaching/ui/Formatter.java b/main/src/cgeo/geocaching/ui/Formatter.java index 49c7a50..9242b9a 100644 --- a/main/src/cgeo/geocaching/ui/Formatter.java +++ b/main/src/cgeo/geocaching/ui/Formatter.java @@ -15,6 +15,7 @@ import android.text.format.DateUtils; import java.text.DateFormat; import java.util.ArrayList; +import java.util.Date; import java.util.List; public abstract class Formatter { @@ -110,7 +111,7 @@ public abstract class Formatter { /** * Generate a numeric date and time string according to system-wide settings (locale, * date format) such as "7 september at 12:35". - * + * * @param date * milliseconds since the epoch * @return the formatted string @@ -153,8 +154,11 @@ public abstract class Formatter { // don't show "not chosen" for events and virtuals, that should be the normal case if (cache.getSize() != CacheSize.UNKNOWN && cache.showSize()) { infos.add(cache.getSize().getL10n()); - } else if (cache.isEventCache() && cache.getHiddenDate() != null) { - infos.add(Formatter.formatShortDate(cache.getHiddenDate().getTime())); + } else if (cache.isEventCache()) { + final Date hiddenDate = cache.getHiddenDate(); + if (hiddenDate != null) { + infos.add(Formatter.formatShortDate(hiddenDate.getTime())); + } } } |
