show thumbnail while waiting for resized image
authortobiasKaminsky <tobias@kaminsky.me>
Fri, 13 Nov 2015 15:41:05 +0000 (16:41 +0100)
committertobiasKaminsky <tobias@kaminsky.me>
Fri, 13 Nov 2015 15:41:05 +0000 (16:41 +0100)
src/com/owncloud/android/datamodel/ThumbnailsCacheManager.java
src/com/owncloud/android/ui/preview/PreviewImageFragment.java

index 939bc9a..0e2a3e7 100644 (file)
@@ -230,7 +230,7 @@ public class ThumbnailsCacheManager {
                             }
                         }
                         imageView.setImageBitmap(bitmap);
                             }
                         }
                         imageView.setImageBitmap(bitmap);
-                        imageView.setVisibility(View.VISIBLE);
+                        // imageView.setVisibility(View.VISIBLE);
                     }
                 }
             }
                     }
                 }
             }
index 0166829..60f201e 100644 (file)
@@ -208,17 +208,29 @@ public class PreviewImageFragment extends FileFragment {
             mImageView.setTag(getFile().getFileId());
 
             if (mShowResizedImage){
             mImageView.setTag(getFile().getFileId());
 
             if (mShowResizedImage){
-                Bitmap thumbnail = ThumbnailsCacheManager.getBitmapFromDiskCache(
-                        String.valueOf("r" + getFile().getRemoteId())
-                );
+                Bitmap resizedImage = ThumbnailsCacheManager.getBitmapFromDiskCache(
+                        String.valueOf("r" + getFile().getRemoteId()));
 
 
-                if (thumbnail != null && !getFile().needsUpdateThumbnail()){
+                if (resizedImage != null && !getFile().needsUpdateThumbnail()){
                     mProgressWheel.setVisibility(View.GONE);
                     mProgressWheel.setVisibility(View.GONE);
-                    mImageView.setImageBitmap(thumbnail);
+                    mImageView.setImageBitmap(resizedImage);
                     mImageView.setVisibility(View.VISIBLE);
                     mImageView.setVisibility(View.VISIBLE);
-                    mBitmap  = thumbnail;
+                    mBitmap  = resizedImage;
                 } else {
                 } else {
-                    // generate new Thumbnail
+                    // show thumbnail while loading resized image
+                    Bitmap thumbnail = ThumbnailsCacheManager.getBitmapFromDiskCache(
+                            String.valueOf("t" + getFile().getRemoteId()));
+
+                    if (thumbnail != null){
+                        mImageView.setImageBitmap(thumbnail);
+                        mProgressWheel.setVisibility(View.VISIBLE);
+                        mImageView.setVisibility(View.VISIBLE);
+                        mBitmap = thumbnail;
+                    } else {
+                        thumbnail = ThumbnailsCacheManager.mDefaultImg;
+                    }
+
+                    // generate new resized image
                     if (ThumbnailsCacheManager.cancelPotentialWork(getFile(), mImageView) &&
                         mContainerActivity.getStorageManager() != null) {
                         final ThumbnailsCacheManager.ThumbnailGenerationTask task =
                     if (ThumbnailsCacheManager.cancelPotentialWork(getFile(), mImageView) &&
                         mContainerActivity.getStorageManager() != null) {
                         final ThumbnailsCacheManager.ThumbnailGenerationTask task =
@@ -226,13 +238,13 @@ public class PreviewImageFragment extends FileFragment {
                                         mImageView, mContainerActivity.getStorageManager(),
                                         mContainerActivity.getStorageManager().getAccount(),
                                         mProgressWheel);
                                         mImageView, mContainerActivity.getStorageManager(),
                                         mContainerActivity.getStorageManager().getAccount(),
                                         mProgressWheel);
-                        if (thumbnail == null) {
-                            thumbnail = ThumbnailsCacheManager.mDefaultImg;
+                        if (resizedImage == null) {
+                            resizedImage = thumbnail;
                         }
                         final ThumbnailsCacheManager.AsyncDrawable asyncDrawable =
                                 new ThumbnailsCacheManager.AsyncDrawable(
                                         MainApp.getAppContext().getResources(),
                         }
                         final ThumbnailsCacheManager.AsyncDrawable asyncDrawable =
                                 new ThumbnailsCacheManager.AsyncDrawable(
                                         MainApp.getAppContext().getResources(),
-                                        thumbnail,
+                                        resizedImage,
                                         task
                                 );
                         mImageView.setImageDrawable(asyncDrawable);
                                         task
                                 );
                         mImageView.setImageDrawable(asyncDrawable);