浏览代码

do not show "set picture as" for svg images

tobiasKaminsky 8 年之前
父节点
当前提交
5126eeac10

+ 4 - 4
src/main/java/com/owncloud/android/files/FileMenuFilter.java

@@ -78,7 +78,7 @@ public class FileMenuFilter {
      */
     public FileMenuFilter(OCFile targetFile, Account account, ComponentsGetter cg,
                           Context context) {
-        this(Arrays.asList(new OCFile[]{targetFile}), account, cg, context);
+        this(Arrays.asList(targetFile), account, cg, context);
     }
 
     /**
@@ -259,10 +259,10 @@ public class FileMenuFilter {
 
 
         // SET PICTURE AS
-        if (!isSingleImage()) {
-            toHide.add(R.id.action_set_as_wallpaper);
-        } else {
+        if (isSingleImage() && !MimeTypeUtil.isSVG(mFiles.iterator().next())) {
             toShow.add(R.id.action_set_as_wallpaper);
+        } else {
+            toHide.add(R.id.action_set_as_wallpaper);
         }
     }
 

+ 4 - 0
src/main/java/com/owncloud/android/utils/MimeTypeUtil.java

@@ -175,6 +175,10 @@ public class MimeTypeUtil {
         return isImage(extractMimeType(file));
     }
 
+    public static boolean isSVG(OCFile file) {
+        return "image/svg+xml".equalsIgnoreCase(file.getMimetype());
+    }
+
     /**
      * @param file the file to be analyzed
      * @return 'True' if the file contains audio