瀏覽代碼

Added 'Pending' placeholder for still-unknown size of incoming federated folders

Andy Scherzinger 8 年之前
父節點
當前提交
70e8f62581
共有 2 個文件被更改,包括 16 次插入10 次删除
  1. 1 0
      res/values/strings.xml
  2. 15 10
      src/com/owncloud/android/utils/DisplayUtils.java

+ 1 - 0
res/values/strings.xml

@@ -104,6 +104,7 @@
     <string name="common_loading">Loading &#8230;</string>
     <string name="common_unknown">unknown</string>
     <string name="common_error_unknown">Unknown error</string>
+    <string name="common_pending">Pending</string>
     <string name="about_title">About</string>
     <string name="change_password">Change password</string>
     <string name="delete_account">Remove account</string>

+ 15 - 10
src/com/owncloud/android/utils/DisplayUtils.java

@@ -96,19 +96,24 @@ public class DisplayUtils {
      *     <li>rounds the size based on the suffix to 0,1 or 2 decimals</li>
      * </ul>
      *
-     * @param bytes        Input file size
-     * @return something readable like "12 MB"
+     * @param bytes Input file size
+     * @return something readable like "12 MB", {@link com.owncloud.android.R.string#common_pending} for negative
+     * byte values
      */
     public static String bytesToHumanReadable(long bytes) {
-        double result = bytes;
-        int suffixIndex = 0;
-        while (result > 1024 && suffixIndex < sizeSuffixes.length) {
-            result /= 1024.;
-            suffixIndex++;
-        }
+        if (bytes < 0) {
+            return MainApp.getAppContext().getString(R.string.common_pending);
+        } else {
+            double result = bytes;
+            int suffixIndex = 0;
+            while (result > 1024 && suffixIndex < sizeSuffixes.length) {
+                result /= 1024.;
+                suffixIndex++;
+            }
 
-        return new BigDecimal(result).setScale(
-                sizeScales[suffixIndex], BigDecimal.ROUND_HALF_UP) + " " + sizeSuffixes[suffixIndex];
+            return new BigDecimal(result).setScale(
+                    sizeScales[suffixIndex], BigDecimal.ROUND_HALF_UP) + " " + sizeSuffixes[suffixIndex];
+        }
     }
 
     /**