Merge branch 'zmatsuo-detailThumbnail' into develop

This commit is contained in:
masensio 2015-10-15 16:12:06 +02:00
commit fc40765890

View file

@ -22,6 +22,8 @@
package com.owncloud.android.ui.fragment; package com.owncloud.android.ui.fragment;
import android.accounts.Account; import android.accounts.Account;
import android.graphics.Bitmap;
import android.os.Bundle; import android.os.Bundle;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.Menu; import android.view.Menu;
@ -38,6 +40,7 @@ import android.widget.TextView;
import com.owncloud.android.R; import com.owncloud.android.R;
import com.owncloud.android.datamodel.FileDataStorageManager; import com.owncloud.android.datamodel.FileDataStorageManager;
import com.owncloud.android.datamodel.OCFile; import com.owncloud.android.datamodel.OCFile;
import com.owncloud.android.datamodel.ThumbnailsCacheManager;
import com.owncloud.android.files.FileMenuFilter; import com.owncloud.android.files.FileMenuFilter;
import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder; import com.owncloud.android.files.services.FileDownloader.FileDownloaderBinder;
import com.owncloud.android.files.services.FileUploader.FileUploaderBinder; import com.owncloud.android.files.services.FileUploader.FileUploaderBinder;
@ -339,7 +342,7 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
// set file details // set file details
setFilename(file.getFileName()); setFilename(file.getFileName());
setFiletype(file.getMimetype(), file.getFileName()); setFiletype(file);
setFilesize(file.getFileLength()); setFilesize(file.getFileLength());
setTimeModified(file.getModificationTimestamp()); setTimeModified(file.getModificationTimestamp());
@ -393,18 +396,31 @@ public class FileDetailFragment extends FileFragment implements OnClickListener
/** /**
* Updates the MIME type in view * Updates the MIME type in view
* @param mimetype MIME type to set * @param file : An {@link OCFile}
* @param filename Name of the file, to deduce the icon to use in case the MIME type is not precise enough
*/ */
private void setFiletype(String mimetype, String filename) { private void setFiletype(OCFile file) {
String mimetype = file.getMimetype();
TextView tv = (TextView) getView().findViewById(R.id.fdType); TextView tv = (TextView) getView().findViewById(R.id.fdType);
if (tv != null) { if (tv != null) {
// mimetype MIME type to set
String printableMimetype = DisplayUtils.convertMIMEtoPrettyPrint(mimetype); String printableMimetype = DisplayUtils.convertMIMEtoPrettyPrint(mimetype);
tv.setText(printableMimetype); tv.setText(printableMimetype);
} }
ImageView iv = (ImageView) getView().findViewById(R.id.fdIcon); ImageView iv = (ImageView) getView().findViewById(R.id.fdIcon);
if (iv != null) { if (iv != null) {
iv.setImageResource(MimetypeIconUtil.getFileTypeIconId(mimetype, filename)); Bitmap thumbnail = null;
if (file.isImage()) {
String tagId = String.valueOf(file.getRemoteId());
thumbnail = ThumbnailsCacheManager.getBitmapFromDiskCache(tagId);
}
if (thumbnail != null) {
// Display thumbnail
iv.setImageBitmap(thumbnail);
} else {
// Name of the file, to deduce the icon to use in case the MIME type is not precise enough
String filename = file.getFileName();
iv.setImageResource(MimetypeIconUtil.getFileTypeIconId(mimetype, filename));
}
} }
} }