Ver código fonte

thumbnail generation also when "file is kept in original folder" is set

tobiasKaminsky 8 anos atrás
pai
commit
adaf5cf09e

+ 10 - 1
src/com/owncloud/android/datamodel/ThumbnailsCacheManager.java

@@ -146,6 +146,7 @@ public class ThumbnailsCacheManager {
         private final WeakReference<ImageView> mImageViewReference;
         private static Account mAccount;
         private Object mFile;
+        private String mImageKey = null;
         private FileDataStorageManager mStorageManager;
 
 
@@ -185,6 +186,9 @@ public class ThumbnailsCacheManager {
                 }
 
                 mFile = params[0];
+                if (params.length == 2){
+                    mImageKey = (String) params[1];
+                }
                 
                 if (mFile instanceof OCFile) {
                     thumbnail = doOCFileInBackground();
@@ -336,7 +340,12 @@ public class ThumbnailsCacheManager {
         private Bitmap doFileInBackground() {
             File file = (File)mFile;
 
-            final String imageKey = String.valueOf(file.hashCode());
+            final String imageKey;
+            if (mImageKey != null) {
+                imageKey = mImageKey;
+            } else {
+                imageKey = String.valueOf(file.hashCode());
+            }
 
             // Check disk cache in background thread
             Bitmap thumbnail = getBitmapFromDiskCache(imageKey);

+ 7 - 2
src/com/owncloud/android/files/services/FileUploader.java

@@ -49,7 +49,6 @@ import com.owncloud.android.authentication.AuthenticatorActivity;
 import com.owncloud.android.datamodel.FileDataStorageManager;
 import com.owncloud.android.datamodel.OCFile;
 import com.owncloud.android.datamodel.ThumbnailsCacheManager;
-import com.owncloud.android.db.DbHandler;
 import com.owncloud.android.datamodel.UploadsStorageManager;
 import com.owncloud.android.datamodel.UploadsStorageManager.UploadStatus;
 import com.owncloud.android.db.OCUpload;
@@ -70,6 +69,7 @@ import com.owncloud.android.ui.activity.FileActivity;
 import com.owncloud.android.ui.activity.UploadListActivity;
 import com.owncloud.android.utils.ErrorMessageAdapter;
 
+import java.io.File;
 import java.util.AbstractList;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -952,7 +952,12 @@ public class FileUploader extends Service
         // generate new Thumbnail
         final ThumbnailsCacheManager.ThumbnailGenerationTask task =
                 new ThumbnailsCacheManager.ThumbnailGenerationTask(mStorageManager, mCurrentAccount);
-        task.execute(file);
+
+        Object[] params = new Object[2];
+        params[0] = new File(mCurrentUpload.getOriginalStoragePath());
+        params[1] = mCurrentUpload.getFile().getRemoteId();
+
+        task.execute(params);
     }