Fixed bug. Regular files are showing folder icon
authorjabarros <jabarros@solidgear.es>
Wed, 25 Jun 2014 10:01:35 +0000 (12:01 +0200)
committerDavid A. Velasco <dvelasco@solidgear.es>
Tue, 1 Jul 2014 07:59:35 +0000 (09:59 +0200)
src/com/owncloud/android/ui/adapter/FileListListAdapter.java

index bf1ccb1..f1790d1 100644 (file)
@@ -49,7 +49,6 @@ import com.owncloud.android.utils.DisplayUtils;
  */\r
 public class FileListListAdapter extends BaseAdapter implements ListAdapter {\r
     private final static String PERMISSION_SHARED_WITH_ME = "S";\r
-    private final static String FILE_CONTENTTYPE_FOLDER = "DIR";\r
 \r
     private Context mContext;\r
     private OCFile mFile = null;\r
@@ -119,30 +118,6 @@ public class FileListListAdapter extends BaseAdapter implements ListAdapter {
             ImageView shareWithMeIconV = (ImageView) view.findViewById(R.id.shareWithMeIcon);\r
             shareWithMeIconV.setVisibility(View.GONE);\r
 \r
-            if (file.isShareByLink()) {\r
-                shareIconV.setVisibility(View.VISIBLE);\r
-            } else {\r
-                shareIconV.setVisibility(View.GONE);\r
-            }\r
-\r
-            // Checks if parent folder does not include 'S' permission\r
-            if (mFile.getPermissions() != null && !mFile.getPermissions().contains(PERMISSION_SHARED_WITH_ME)) {\r
-\r
-                // Checks if file/folder is shared with me\r
-                if (file.getPermissions() != null && file.getPermissions().contains(PERMISSION_SHARED_WITH_ME)) {\r
-\r
-                    // For folders, also update left icon\r
-                    if (file.getMimetype().equals(FILE_CONTENTTYPE_FOLDER)) {\r
-                        fileIcon.setImageResource(R.drawable.shared_with_me_folder);\r
-                    } else {\r
-                        fileIcon.setImageResource(DisplayUtils.getResourceId(file.getMimetype(), file.getFileName()));\r
-                    }\r
-                    shareWithMeIconV.setVisibility(View.VISIBLE);\r
-                } else {\r
-                    fileIcon.setImageResource(DisplayUtils.getResourceId(file.getMimetype(), file.getFileName()));\r
-                }\r
-            }\r
-\r
             ImageView localStateView = (ImageView) view.findViewById(R.id.imageView2);\r
             FileDownloaderBinder downloaderBinder = mTransferServiceGetter.getFileDownloaderBinder();\r
             FileUploaderBinder uploaderBinder = mTransferServiceGetter.getFileUploaderBinder();\r
@@ -187,7 +162,12 @@ public class FileListListAdapter extends BaseAdapter implements ListAdapter {
                     }\r
                     checkBoxV.setVisibility(View.VISIBLE);\r
                 }\r
-                \r
+\r
+                fileIcon.setImageResource(DisplayUtils.getResourceId(file.getMimetype(), file.getFileName()));\r
+\r
+                if (checkIfFileIsSharedWithMe(file)) {\r
+                    shareWithMeIconV.setVisibility(View.VISIBLE);\r
+                }\r
             } \r
             else {\r
                 \r
@@ -197,6 +177,19 @@ public class FileListListAdapter extends BaseAdapter implements ListAdapter {
                 lastModV.setText(DisplayUtils.unixTimeToHumanReadable(file.getModificationTimestamp()));\r
                 checkBoxV.setVisibility(View.GONE);\r
                 view.findViewById(R.id.imageView3).setVisibility(View.GONE);\r
+\r
+                if (checkIfFileIsSharedWithMe(file)) {\r
+                    fileIcon.setImageResource(R.drawable.shared_with_me_folder);\r
+                    shareWithMeIconV.setVisibility(View.VISIBLE);\r
+                } else {\r
+                    fileIcon.setImageResource(DisplayUtils.getResourceId(file.getMimetype(), file.getFileName()));\r
+                }\r
+            }\r
+\r
+            if (file.isShareByLink()) {\r
+                shareIconV.setVisibility(View.VISIBLE);\r
+            } else {\r
+                shareIconV.setVisibility(View.GONE);\r
             }\r
         }\r
 \r
@@ -237,4 +230,15 @@ public class FileListListAdapter extends BaseAdapter implements ListAdapter {
         notifyDataSetChanged();\r
     }\r
     \r
+    /**\r
+     * Check if parent folder does not include 'S' permission and if file/folder\r
+     * is shared with me\r
+     * \r
+     * @param file: OCFile\r
+     * @return boolean: True if it is shared with me and false if it is not\r
+     */\r
+    private boolean checkIfFileIsSharedWithMe(OCFile file) {\r
+        return (mFile.getPermissions() != null && !mFile.getPermissions().contains(PERMISSION_SHARED_WITH_ME)\r
+                && file.getPermissions() != null && file.getPermissions().contains(PERMISSION_SHARED_WITH_ME));\r
+    }\r
 }\r