extracted method and improved code

Signed-off-by: camillo-positano <camillo.positano@hotmail.it>
This commit is contained in:
camillo-positano 2024-06-20 17:51:53 +02:00 committed by Alper Öztürk
parent d42198a96f
commit 92d641eabc

View file

@ -296,27 +296,20 @@ public final class ThumbnailsCacheManager {
if (file.getRemoteId() != null || file.isPreviewAvailable()) { if (file.getRemoteId() != null || file.isPreviewAvailable()) {
// Thumbnail in cache? // Thumbnail in cache?
thumbnail = ThumbnailsCacheManager.getBitmapFromDiskCache( thumbnail = ThumbnailsCacheManager.getBitmapFromDiskCache(
ThumbnailsCacheManager.PREFIX_RESIZED_IMAGE + file.getRemoteId() ThumbnailsCacheManager.PREFIX_RESIZED_IMAGE + file.getRemoteId());
);
if (thumbnail != null && !file.isUpdateThumbnailNeeded()) { if (thumbnail != null && !file.isUpdateThumbnailNeeded())
Float size = (float) ThumbnailsCacheManager.getThumbnailDimension(); return getThumbnailFromCache(thumbnail);
// resized dimensions return getThumbnailFromServerAndAddToCache(thumbnail);
ImageDimension imageDimension = file.getImageDimension();
if (imageDimension == null ||
imageDimension.getWidth() != size ||
imageDimension.getHeight() != size) {
file.setImageDimension(new ImageDimension(thumbnail.getWidth(), thumbnail.getHeight()));
storageManager.saveFile(file);
} }
if (MimeTypeUtil.isVideo(file)) { Log_OC.d(TAG, "File cannot be previewed");
return ThumbnailsCacheManager.addVideoOverlay(thumbnail, MainApp.getAppContext()); return null;
} else {
return thumbnail;
} }
} else {
@Nullable
private Bitmap getThumbnailFromServerAndAddToCache(Bitmap thumbnail) {
try { try {
mClient = OwnCloudClientManagerFactory.getDefaultSingleton().getClientFor(user.toOwnCloudAccount(), mClient = OwnCloudClientManagerFactory.getDefaultSingleton().getClientFor(user.toOwnCloudAccount(),
MainApp.getAppContext()); MainApp.getAppContext());
@ -337,10 +330,24 @@ public final class ThumbnailsCacheManager {
return thumbnail; return thumbnail;
} }
private Bitmap getThumbnailFromCache(Bitmap thumbnail) {
float size = (float) ThumbnailsCacheManager.getThumbnailDimension();
// resized dimensions
ImageDimension imageDimension = file.getImageDimension();
if (imageDimension == null ||
imageDimension.getWidth() != size ||
imageDimension.getHeight() != size) {
file.setImageDimension(new ImageDimension(thumbnail.getWidth(), thumbnail.getHeight()));
storageManager.saveFile(file);
} }
Log_OC.d(TAG, "File cannot be previewed"); if (MimeTypeUtil.isVideo(file)) {
return null; return ThumbnailsCacheManager.addVideoOverlay(thumbnail, MainApp.getAppContext());
} else {
return thumbnail;
}
} }
protected void onPostExecute(Bitmap bitmap) { protected void onPostExecute(Bitmap bitmap) {