TBR: Reintroducing "Just now"
TODO(rosswang): We will want to revisit our capitalization
scheme. e.g. "Last Updated: 4 days ago". I did try "Last Updated: just
now" but that looks weird.
Change-Id: I47e9dca6a8e7fb6ad491c0cbe8401a4a9b4a5e5d
diff --git a/app/src/main/java/io/v/todos/TaskViewHolder.java b/app/src/main/java/io/v/todos/TaskViewHolder.java
index 89e8262..4b032fb 100644
--- a/app/src/main/java/io/v/todos/TaskViewHolder.java
+++ b/app/src/main/java/io/v/todos/TaskViewHolder.java
@@ -35,6 +35,6 @@
}
private String computeCreated(Task task) {
- return UIUtil.computeTimeAgo("Created", task.addedAt);
+ return UIUtil.computeTimeAgo(getCardView().getContext(), "Created", task.addedAt);
}
}
diff --git a/app/src/main/java/io/v/todos/TodoListViewHolder.java b/app/src/main/java/io/v/todos/TodoListViewHolder.java
index 0394188..a70cb8f 100644
--- a/app/src/main/java/io/v/todos/TodoListViewHolder.java
+++ b/app/src/main/java/io/v/todos/TodoListViewHolder.java
@@ -34,7 +34,8 @@
}
private String computeTimeAgo(ListMetadata listMetadata) {
- return UIUtil.computeTimeAgo("Last Updated", listMetadata.updatedAt);
+ return UIUtil.computeTimeAgo(getCardView().getContext(), "Last Updated",
+ listMetadata.updatedAt);
}
private String computeCompleted(ListMetadata listMetadata) {
diff --git a/app/src/main/java/io/v/todos/UIUtil.java b/app/src/main/java/io/v/todos/UIUtil.java
index 779d093..9fcb33c 100644
--- a/app/src/main/java/io/v/todos/UIUtil.java
+++ b/app/src/main/java/io/v/todos/UIUtil.java
@@ -11,15 +11,21 @@
import android.view.WindowManager;
import android.widget.EditText;
-/**
- * Created by alexfandrianto on 4/18/16.
- */
-public class UIUtil {
- public static String computeTimeAgo(String prefix, long startTime) {
- return prefix + ": " + DateUtils.getRelativeTimeSpanString(startTime);
+public final class UIUtil {
+ private UIUtil() {
+ }
+
+ private static final long JUST_NOW_DURATION = 60 * 1000 - 1;
+
+ public static String computeTimeAgo(Context context, String prefix, long startTime) {
+ long now = System.currentTimeMillis();
+ return prefix + ": " + (now - startTime > JUST_NOW_DURATION ?
+ DateUtils.getRelativeTimeSpanString(startTime, now, DateUtils.MINUTE_IN_MILLIS) :
+ context.getString(R.string.just_now));
}
private static AlertDialog lastDialog;
+
public static AlertDialog getLastDialog() {
return lastDialog;
}
@@ -74,6 +80,8 @@
public static abstract class DialogResponseListener {
public abstract void handleResponse(String response);
- public void handleDelete() {}
+
+ public void handleDelete() {
+ }
}
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 7cd0203..b63528a 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -9,6 +9,7 @@
<string name="init_persistence">Initializing…</string>
<string name="no_lists">No todo lists.\nPress \'+\' to add lists.</string>
<string name="no_tasks">No tasks.\nPress \'+\' to add tasks.</string>
+ <string name="just_now">Just now</string>
<!-- Errors -->
<string name="err_init">Unable to initialize persistence</string>
<string name="err_sync">Unable to sync</string>