import third_parties.daveKoeller.AlphanumComparator;\r
import android.accounts.Account;\r
import android.content.Context;\r
-<<<<<<< HEAD
+import android.content.SharedPreferences;\r
import android.graphics.Bitmap;\r
import android.graphics.BitmapFactory;\r
import android.media.ThumbnailUtils;\r
-=======
-import android.content.SharedPreferences;\r
-import android.graphics.Bitmap;\r
import android.preference.PreferenceManager;\r
->>>>>>> upstream/develop
import android.view.LayoutInflater;\r
import android.view.View;\r
import android.view.ViewGroup;\r
import android.widget.BaseAdapter;\r
+import android.widget.Filter;\r
+import android.widget.Filterable;\r
import android.widget.GridView;\r
import android.widget.ImageView;\r
import android.widget.ListAdapter;\r
-import android.widget.ListView;\r
import android.widget.TextView;\r
\r
import com.owncloud.android.R;\r
import com.owncloud.android.files.services.FileUploader.FileUploaderBinder;\r
import com.owncloud.android.ui.activity.ComponentsGetter;\r
import com.owncloud.android.utils.DisplayUtils;\r
-<<<<<<< HEAD
-import com.owncloud.android.utils.Log_OC;\r
-\r
-=======
import com.owncloud.android.utils.FileStorageUtils;\r
->>>>>>> upstream/develop
\r
/**\r
* This Adapter populates a ListView with all files and folders in an ownCloud\r
private Context mContext;\r
private OCFile mFile = null;\r
private Vector<OCFile> mFiles = null;\r
+ private Vector<OCFile> mFilesOrig = new Vector<OCFile>();\r
private boolean mJustFolders;\r
\r
private FileDataStorageManager mStorageManager;
private Account mAccount;
private ComponentsGetter mTransferServiceGetter;\r
-<<<<<<< HEAD
private enum ViewType {LIST_ITEM, GRID_IMAGE, GRID_ITEM };\r
-=======
private Integer mSortOrder;\r
public static final Integer SORT_NAME = 0;\r
public static final Integer SORT_DATE = 1;\r
public static final Integer SORT_SIZE = 2;\r
private Boolean mSortAscending;\r
private SharedPreferences mAppPreferences;\r
->>>>>>> upstream/develop
\r
public FileListListAdapter(\r
boolean justFolders, \r
Context context, \r
ComponentsGetter transferServiceGetter\r
) {\r
-\r
+ \r
mJustFolders = justFolders;\r
mContext = context;\r
mAccount = AccountUtils.getCurrentOwnCloudAccount(mContext);\r
-
mTransferServiceGetter = transferServiceGetter;
\r
mAppPreferences = PreferenceManager\r
\r
// initialise thumbnails cache on background thread\r
new ThumbnailsCacheManager.InitDiskCacheTask().execute();\r
-\r
}\r
@Override\r
view = inflator.inflate(R.layout.list_item, null);\r
break;\r
}\r
-<<<<<<< HEAD
\r
view.invalidate();\r
\r
ImageView fileIcon = (ImageView) view.findViewById(R.id.thumbnail);\r
TextView fileName;\r
String name;\r
-=======
- \r
- if (mFiles != null && mFiles.size() > position) {\r
- OCFile file = mFiles.get(position);\r
- TextView fileName = (TextView) view.findViewById(R.id.Filename); \r
- String name = file.getFileName();\r
-\r
- fileName.setText(name);\r
- ImageView fileIcon = (ImageView) view.findViewById(R.id.imageView1);\r
- fileIcon.setTag(file.getFileId());\r
- ImageView sharedIconV = (ImageView) view.findViewById(R.id.sharedIcon);\r
- ImageView sharedWithMeIconV = (ImageView) view.findViewById(R.id.sharedWithMeIcon);\r
- sharedWithMeIconV.setVisibility(View.GONE);\r
-\r
- ImageView localStateView = (ImageView) view.findViewById(R.id.imageView2);\r
- localStateView.bringToFront();\r
- FileDownloaderBinder downloaderBinder = \r
- mTransferServiceGetter.getFileDownloaderBinder();\r
- FileUploaderBinder uploaderBinder = mTransferServiceGetter.getFileUploaderBinder();\r
- if (downloaderBinder != null && downloaderBinder.isDownloading(mAccount, file)) {\r
- localStateView.setImageResource(R.drawable.downloading_file_indicator);\r
- localStateView.setVisibility(View.VISIBLE);\r
- } else if (uploaderBinder != null && uploaderBinder.isUploading(mAccount, file)) {\r
- localStateView.setImageResource(R.drawable.uploading_file_indicator);\r
- localStateView.setVisibility(View.VISIBLE);\r
- } else if (file.isDown()) {\r
- localStateView.setImageResource(R.drawable.local_file_indicator);\r
- localStateView.setVisibility(View.VISIBLE);\r
- } else {\r
- localStateView.setVisibility(View.INVISIBLE);\r
- }\r
- \r
- TextView fileSizeV = (TextView) view.findViewById(R.id.file_size);\r
- TextView lastModV = (TextView) view.findViewById(R.id.last_mod);\r
- ImageView checkBoxV = (ImageView) view.findViewById(R.id.custom_checkbox);\r
->>>>>>> upstream/develop
\r
switch (viewType){\r
case LIST_ITEM:\r
ImageView checkBoxV = (ImageView) view.findViewById(R.id.custom_checkbox);\r
\r
lastModV.setVisibility(View.VISIBLE);\r
-<<<<<<< HEAD
lastModV.setText(DisplayUtils.unixTimeToHumanReadable(file.getModificationTimestamp()));\r
\r
checkBoxV.setVisibility(View.GONE);\r
\r
if (file.isShareByLink()) {\r
sharedIconV.setVisibility(View.VISIBLE);\r
-=======
- lastModV.setText(\r
- DisplayUtils.unixTimeToHumanReadable(file.getModificationTimestamp())\r
- );\r
- // this if-else is needed even thoe fav icon is visible by default\r
- // because android reuses views in listview\r
- if (!file.keepInSync()) {\r
- view.findViewById(R.id.imageView3).setVisibility(View.GONE);\r
->>>>>>> upstream/develop
} else {\r
sharedIconV.setVisibility(View.GONE);\r
}\r
}\r
checkBoxV.setVisibility(View.VISIBLE);\r
}\r
-<<<<<<< HEAD
\r
localStateView.bringToFront();\r
FileDownloaderBinder downloaderBinder = mTransferServiceGetter.getFileDownloaderBinder();\r
\r
// No Folder\r
if (!file.isFolder()) {\r
- if (file.isImage() && file.isDown()){\r
- Bitmap bitmap = BitmapFactory.decodeFile(file.getStoragePath());\r
- fileIcon.setImageBitmap(ThumbnailUtils.extractThumbnail(bitmap, 200, 200));\r
- } else {\r
- fileIcon.setImageResource(DisplayUtils.getResourceId(file.getMimetype(), file.getFileName()));\r
- }\r
- } else {\r
- // Folder\r
-=======
- checkBoxV.setVisibility(View.VISIBLE);\r
- } \r
- \r
- // get Thumbnail if file is image\r
if (file.isImage() && file.getRemoteId() != null){\r
- // Thumbnail in Cache?\r
+ // Thumbnail in Cache?\r
Bitmap thumbnail = ThumbnailsCacheManager.getBitmapFromDiskCache(\r
String.valueOf(file.getRemoteId())\r
- );\r
+ );\r
if (thumbnail != null && !file.needsUpdateThumbnail()){\r
fileIcon.setImageBitmap(thumbnail);\r
} else {\r
// generate new Thumbnail\r
if (ThumbnailsCacheManager.cancelPotentialWork(file, fileIcon)) {\r
- final ThumbnailsCacheManager.ThumbnailGenerationTask task = \r
+ final ThumbnailsCacheManager.ThumbnailGenerationTask task =\r
new ThumbnailsCacheManager.ThumbnailGenerationTask(\r
fileIcon, mStorageManager, mAccount\r
- );\r
+ );\r
if (thumbnail == null) {\r
thumbnail = ThumbnailsCacheManager.mDefaultImg;\r
}\r
final AsyncDrawable asyncDrawable = new AsyncDrawable(\r
- mContext.getResources(), \r
- thumbnail, \r
+ mContext.getResources(),\r
+ thumbnail,\r
task\r
- );\r
+ );\r
fileIcon.setImageDrawable(asyncDrawable);\r
task.execute(file);\r
+\r
}\r
}\r
- } else {\r
- fileIcon.setImageResource(\r
- DisplayUtils.getResourceId(file.getMimetype(), file.getFileName())\r
- );\r
}\r
-
- if (checkIfFileIsSharedWithMe(file)) {\r
- sharedWithMeIconV.setVisibility(View.VISIBLE);\r
+ else {\r
+ fileIcon.setImageResource(DisplayUtils.getResourceId(file.getMimetype(), file.getFileName()));\r
}\r
- } \r
- else {\r
- // TODO Re-enable when server supports folder-size calculation\r
-// if (FileStorageUtils.getDefaultSavePathFor(mAccount.name, file) != null){\r
-// fileSizeV.setVisibility(View.VISIBLE);\r
-// fileSizeV.setText(getFolderSizeHuman(FileStorageUtils.getDefaultSavePathFor(mAccount.name, file)));\r
-// } else {\r
- fileSizeV.setVisibility(View.INVISIBLE);\r
-// }\r
-
- lastModV.setVisibility(View.VISIBLE);\r
- lastModV.setText(\r
- DisplayUtils.unixTimeToHumanReadable(file.getModificationTimestamp())\r
- );\r
- checkBoxV.setVisibility(View.GONE);\r
- view.findViewById(R.id.imageView3).setVisibility(View.GONE);\r
-\r
->>>>>>> upstream/develop
+ } else {\r
+ // Folder\r
if (checkIfFileIsSharedWithMe(file)) {\r
fileIcon.setImageResource(R.drawable.shared_with_me_folder);\r
} else if (file.isShareByLink()) {\r
// folder-public one\r
fileIcon.setImageResource(R.drawable.folder_public);\r
} else {\r
- fileIcon.setImageResource(\r
- DisplayUtils.getResourceId(file.getMimetype(), file.getFileName())\r
- );\r
+ fileIcon.setImageResource(DisplayUtils.getResourceId(file.getMimetype(), file.getFileName()));\r
}\r
} \r
}\r
}\r
if (mStorageManager != null) {\r
mFiles = mStorageManager.getFolderContent(mFile);\r
+ mFilesOrig.clear();\r
+ mFilesOrig.addAll(mFiles);\r
+ \r
if (mJustFolders) {\r
mFiles = getFolders(mFiles);\r
}\r
mSortAscending = ascending;\r
\r
sortDirectory();\r
- }
+ }
}\r