summaryrefslogtreecommitdiffstats
path: root/packages/ExternalStorageProvider
diff options
context:
space:
mode:
authorMakoto Onuki <omakoto@google.com>2015-07-01 14:55:14 -0700
committerMakoto Onuki <omakoto@google.com>2015-07-01 15:11:46 -0700
commit14a6df7d7626b5e3c739e4dafd11073a471c91a8 (patch)
treebd7ee64b25b0870be3b3626b37d287f17bf52bf1 /packages/ExternalStorageProvider
parent0794acc557f52960e52b369c6e4e5bf0bc575d02 (diff)
downloadframeworks_base-14a6df7d7626b5e3c739e4dafd11073a471c91a8.zip
frameworks_base-14a6df7d7626b5e3c739e4dafd11073a471c91a8.tar.gz
frameworks_base-14a6df7d7626b5e3c739e4dafd11073a471c91a8.tar.bz2
If user ejects a storage from details, take user to...
... the storage list view 1. Change to ExternalStorageProvider When available volumes have changed, it now notifies on "content://com.android.externalstorage.documents" rather than on "content://com.android.externalstorage.documents/root/", because it'll also affect "content://com.android.externalstorage.documents/document/*/children". 2. Change to DocumentUI - DirectoryLoader now won't crash when a provider returns null. - DirectoryFragment now closes itself (i.e. emulate a back press) when a load failed. - It now correctly reloads contents when a volume is ejected thanks to 1. Bug 21472170 Change-Id: Icf4bbc2ebb9067313dbbb67083cd4115b0a75c58
Diffstat (limited to 'packages/ExternalStorageProvider')
-rw-r--r--packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java b/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java
index 4143e15..4f0c6a41 100644
--- a/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java
+++ b/packages/ExternalStorageProvider/src/com/android/externalstorage/ExternalStorageProvider.java
@@ -62,6 +62,9 @@ public class ExternalStorageProvider extends DocumentsProvider {
public static final String AUTHORITY = "com.android.externalstorage.documents";
+ private static final Uri BASE_URI =
+ new Uri.Builder().scheme(ContentResolver.SCHEME_CONTENT).authority(AUTHORITY).build();
+
// docId format: root:path/to/file
private static final String[] DEFAULT_ROOT_PROJECTION = new String[] {
@@ -170,8 +173,10 @@ public class ExternalStorageProvider extends DocumentsProvider {
Log.d(TAG, "After updating volumes, found " + mRoots.size() + " active roots");
- getContext().getContentResolver()
- .notifyChange(DocumentsContract.buildRootsUri(AUTHORITY), null, false);
+ // Note this affects content://com.android.externalstorage.documents/root/39BD-07C5
+ // as well as content://com.android.externalstorage.documents/document/*/children,
+ // so just notify on content://com.android.externalstorage.documents/.
+ getContext().getContentResolver().notifyChange(BASE_URI, null, false);
}
private static String[] resolveRootProjection(String[] projection) {