Merge "Allow video files to be inserted in Pictures"
diff --git a/src/com/android/providers/media/MediaProvider.java b/src/com/android/providers/media/MediaProvider.java
index 6b60565..023d723 100644
--- a/src/com/android/providers/media/MediaProvider.java
+++ b/src/com/android/providers/media/MediaProvider.java
@@ -1766,7 +1766,8 @@
defaultPrimary = Environment.DIRECTORY_MOVIES;
allowedPrimary = Arrays.asList(
Environment.DIRECTORY_DCIM,
- Environment.DIRECTORY_MOVIES);
+ Environment.DIRECTORY_MOVIES,
+ Environment.DIRECTORY_PICTURES);
break;
case IMAGES_MEDIA:
case IMAGES_MEDIA_ID:
@@ -5343,13 +5344,11 @@
case DIRECTORY_AUDIOBOOKS:
uris[0] = Audio.Media.getContentUri(volName);
break;
- case DIRECTORY_PICTURES:
- uris[0] = Images.Media.getContentUri(volName);
- break;
case DIRECTORY_MOVIES:
uris[0] = Video.Media.getContentUri(volName);
break;
case DIRECTORY_DCIM:
+ case DIRECTORY_PICTURES:
if (mimeType.toLowerCase(Locale.ROOT).startsWith("image")) {
uris[0] = Images.Media.getContentUri(volName);
} else if (mimeType.toLowerCase(Locale.ROOT).startsWith("video")) {
diff --git a/tests/jni/FuseDaemonTest/src/com/android/tests/fused/FilePathAccessTest.java b/tests/jni/FuseDaemonTest/src/com/android/tests/fused/FilePathAccessTest.java
index 878d1ec..d9b0fe6 100644
--- a/tests/jni/FuseDaemonTest/src/com/android/tests/fused/FilePathAccessTest.java
+++ b/tests/jni/FuseDaemonTest/src/com/android/tests/fused/FilePathAccessTest.java
@@ -175,11 +175,19 @@
assertThrows(IOException.class, "Operation not permitted", () -> {
new File(DCIM_DIR, MUSIC_FILE_NAME).createNewFile();
});
+ // Only image and video files can be created in Pictures
+ assertThrows(IOException.class, "Operation not permitted", () -> {
+ new File(PICTURES_DIR, NONMEDIA_FILE_NAME).createNewFile();
+ });
+ assertThrows(IOException.class, "Operation not permitted", () -> {
+ new File(PICTURES_DIR, MUSIC_FILE_NAME).createNewFile();
+ });
assertCanCreateFile(new File(DCIM_DIR, IMAGE_FILE_NAME));
assertCanCreateFile(new File(MUSIC_DIR, MUSIC_FILE_NAME));
assertCanCreateFile(new File(MOVIES_DIR, VIDEO_FILE_NAME));
assertCanCreateFile(new File(DOWNLOAD_DIR, NONMEDIA_FILE_NAME));
+ assertCanCreateFile(new File(PICTURES_DIR, VIDEO_FILE_NAME));
// No file whatsoever can be created in the top level directory
assertThrows(IOException.class, "Operation not permitted", () -> {