Loading core/java/android/provider/DocumentsContract.java +3 −0 Original line number Original line Diff line number Diff line Loading @@ -73,6 +73,9 @@ public final class DocumentsContract { */ */ public static final String PROVIDER_INTERFACE = "android.content.action.DOCUMENTS_PROVIDER"; public static final String PROVIDER_INTERFACE = "android.content.action.DOCUMENTS_PROVIDER"; /** {@hide} */ public static final String EXTRA_PACKAGE_NAME = "android.content.extra.PACKAGE_NAME"; /** {@hide} */ /** {@hide} */ public static final String ACTION_MANAGE_ROOT = "android.provider.action.MANAGE_ROOT"; public static final String ACTION_MANAGE_ROOT = "android.provider.action.MANAGE_ROOT"; /** {@hide} */ /** {@hide} */ Loading packages/DocumentsUI/src/com/android/documentsui/DocumentsActivity.java +8 −3 Original line number Original line Diff line number Diff line Loading @@ -292,7 +292,7 @@ public class DocumentsActivity extends Activity { @Override @Override protected Void doInBackground(Void... params) { protected Void doInBackground(Void... params) { // Restore last stack for calling package // Restore last stack for calling package final String packageName = getCallingPackage(); final String packageName = getCallingPackageMaybeExtra(); final Cursor cursor = getContentResolver() final Cursor cursor = getContentResolver() .query(RecentsProvider.buildResume(packageName), null, null, null, null); .query(RecentsProvider.buildResume(packageName), null, null, null, null); try { try { Loading Loading @@ -783,6 +783,11 @@ public class DocumentsActivity extends Activity { return mState.stack.peek(); return mState.stack.peek(); } } private String getCallingPackageMaybeExtra() { final String extra = getIntent().getStringExtra(DocumentsContract.EXTRA_PACKAGE_NAME); return (extra != null) ? extra : getCallingPackage(); } public Executor getCurrentExecutor() { public Executor getCurrentExecutor() { final DocumentInfo cwd = getCurrentDirectory(); final DocumentInfo cwd = getCurrentDirectory(); if (cwd != null && cwd.authority != null) { if (cwd != null && cwd.authority != null) { Loading Loading @@ -921,7 +926,7 @@ public class DocumentsActivity extends Activity { if (requestCode == CODE_FORWARD && resultCode != RESULT_CANCELED) { if (requestCode == CODE_FORWARD && resultCode != RESULT_CANCELED) { // Remember that we last picked via external app // Remember that we last picked via external app final String packageName = getCallingPackage(); final String packageName = getCallingPackageMaybeExtra(); final ContentValues values = new ContentValues(); final ContentValues values = new ContentValues(); values.put(ResumeColumns.EXTERNAL, 1); values.put(ResumeColumns.EXTERNAL, 1); getContentResolver().insert(RecentsProvider.buildResume(packageName), values); getContentResolver().insert(RecentsProvider.buildResume(packageName), values); Loading Loading @@ -1002,7 +1007,7 @@ public class DocumentsActivity extends Activity { } } // Remember location for next app launch // Remember location for next app launch final String packageName = getCallingPackage(); final String packageName = getCallingPackageMaybeExtra(); values.clear(); values.clear(); values.put(ResumeColumns.STACK, rawStack); values.put(ResumeColumns.STACK, rawStack); values.put(ResumeColumns.EXTERNAL, 0); values.put(ResumeColumns.EXTERNAL, 0); Loading Loading
core/java/android/provider/DocumentsContract.java +3 −0 Original line number Original line Diff line number Diff line Loading @@ -73,6 +73,9 @@ public final class DocumentsContract { */ */ public static final String PROVIDER_INTERFACE = "android.content.action.DOCUMENTS_PROVIDER"; public static final String PROVIDER_INTERFACE = "android.content.action.DOCUMENTS_PROVIDER"; /** {@hide} */ public static final String EXTRA_PACKAGE_NAME = "android.content.extra.PACKAGE_NAME"; /** {@hide} */ /** {@hide} */ public static final String ACTION_MANAGE_ROOT = "android.provider.action.MANAGE_ROOT"; public static final String ACTION_MANAGE_ROOT = "android.provider.action.MANAGE_ROOT"; /** {@hide} */ /** {@hide} */ Loading
packages/DocumentsUI/src/com/android/documentsui/DocumentsActivity.java +8 −3 Original line number Original line Diff line number Diff line Loading @@ -292,7 +292,7 @@ public class DocumentsActivity extends Activity { @Override @Override protected Void doInBackground(Void... params) { protected Void doInBackground(Void... params) { // Restore last stack for calling package // Restore last stack for calling package final String packageName = getCallingPackage(); final String packageName = getCallingPackageMaybeExtra(); final Cursor cursor = getContentResolver() final Cursor cursor = getContentResolver() .query(RecentsProvider.buildResume(packageName), null, null, null, null); .query(RecentsProvider.buildResume(packageName), null, null, null, null); try { try { Loading Loading @@ -783,6 +783,11 @@ public class DocumentsActivity extends Activity { return mState.stack.peek(); return mState.stack.peek(); } } private String getCallingPackageMaybeExtra() { final String extra = getIntent().getStringExtra(DocumentsContract.EXTRA_PACKAGE_NAME); return (extra != null) ? extra : getCallingPackage(); } public Executor getCurrentExecutor() { public Executor getCurrentExecutor() { final DocumentInfo cwd = getCurrentDirectory(); final DocumentInfo cwd = getCurrentDirectory(); if (cwd != null && cwd.authority != null) { if (cwd != null && cwd.authority != null) { Loading Loading @@ -921,7 +926,7 @@ public class DocumentsActivity extends Activity { if (requestCode == CODE_FORWARD && resultCode != RESULT_CANCELED) { if (requestCode == CODE_FORWARD && resultCode != RESULT_CANCELED) { // Remember that we last picked via external app // Remember that we last picked via external app final String packageName = getCallingPackage(); final String packageName = getCallingPackageMaybeExtra(); final ContentValues values = new ContentValues(); final ContentValues values = new ContentValues(); values.put(ResumeColumns.EXTERNAL, 1); values.put(ResumeColumns.EXTERNAL, 1); getContentResolver().insert(RecentsProvider.buildResume(packageName), values); getContentResolver().insert(RecentsProvider.buildResume(packageName), values); Loading Loading @@ -1002,7 +1007,7 @@ public class DocumentsActivity extends Activity { } } // Remember location for next app launch // Remember location for next app launch final String packageName = getCallingPackage(); final String packageName = getCallingPackageMaybeExtra(); values.clear(); values.clear(); values.put(ResumeColumns.STACK, rawStack); values.put(ResumeColumns.STACK, rawStack); values.put(ResumeColumns.EXTERNAL, 0); values.put(ResumeColumns.EXTERNAL, 0); Loading