fix Problem with < Android 3.0
authortobiasKaminsky <tobias@kaminsky.me>
Wed, 12 Nov 2014 13:51:56 +0000 (14:51 +0100)
committertobiasKaminsky <tobias@kaminsky.me>
Wed, 12 Nov 2014 13:51:56 +0000 (14:51 +0100)
src/com/owncloud/android/utils/DisplayUtils.java

index cdd8683..544a923 100644 (file)
@@ -279,13 +279,28 @@ public class DisplayUtils {
     }\r
     \r
     public static CharSequence getRelativeDateTimeString(Context c, long time, long minResolution, long transitionResolution, int flags){\r
     }\r
     \r
     public static CharSequence getRelativeDateTimeString(Context c, long time, long minResolution, long transitionResolution, int flags){\r
+        CharSequence dateString = "";\r
+        \r
+        // in Future\r
         if (time > System.currentTimeMillis()){\r
             return DisplayUtils.unixTimeToHumanReadable(time);\r
         if (time > System.currentTimeMillis()){\r
             return DisplayUtils.unixTimeToHumanReadable(time);\r
-        } else if ((System.currentTimeMillis() - time) < 60000) {\r
-            return  c.getString(R.string.file_list_seconds_ago)  + ", " + \r
-                DateFormat.getTimeFormat(c).format(new Date(time));\r
+        } \r
+        // < 60 seconds -> seconds ago\r
+        else if ((System.currentTimeMillis() - time) < 60 * 1000) {\r
+            return c.getString(R.string.file_list_seconds_ago);\r
         } else {\r
         } else {\r
-            return DateUtils.getRelativeDateTimeString(c, time, minResolution, transitionResolution, flags);\r
+            // Workaround 2.x bug\r
+            if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.HONEYCOMB && (System.currentTimeMillis() - time) > 24 * 60 * 60 * 1000){\r
+                Date date = new Date(time);\r
+                date.setHours(0);\r
+                date.setMinutes(0);\r
+                date.setSeconds(0);\r
+                dateString = DateUtils.getRelativeDateTimeString(c, date.getTime(), minResolution, transitionResolution, flags);\r
+            } else {\r
+                dateString = DateUtils.getRelativeDateTimeString(c, time, minResolution, transitionResolution, flags);\r
+            }\r
         }\r
         }\r
+        \r
+        return dateString.toString().split(",")[0];\r
     }\r
 }\r
     }\r
 }\r