Loading src/com/android/documentsui/AbstractActionHandler.java +7 −0 Original line number Diff line number Diff line Loading @@ -356,6 +356,13 @@ public abstract class AbstractActionHandler<T extends Activity & CommonAddons> + mState.stack.getRoot()); } final DocumentInfo top = stack.peek(); if (top.isArchive()) { // Swap the zip file in original provider and the one provided by ArchiveProvider. stack.pop(); stack.push(mDocs.getArchiveDocument(top.derivedUri)); } mState.stack.reset(); // Update navigator to give horizontal breadcrumb a chance to update documents. It // doesn't update its content if the size of document stack doesn't change. Loading src/com/android/documentsui/LoadDocStackTask.java +0 −1 Original line number Diff line number Diff line Loading @@ -60,7 +60,6 @@ public class LoadDocStackTask extends PairedTask<Activity, Uri, DocumentStack> { @Override public @Nullable DocumentStack run(Uri... uris) { // assert(Features.OMC_RUNTIME); if (mDocs.isDocumentUri(uris[0])) { final Uri docUri; if (DocumentsContract.isTreeUri(uris[0])) { Loading tests/unit/com/android/documentsui/AbstractActionHandlerTest.java +37 −3 Original line number Diff line number Diff line Loading @@ -106,7 +106,8 @@ public class AbstractActionHandlerTest { } @Test public void testOpensContainerDocuments_jumpToNewLocation() throws Exception { public void testOpensContainerDocuments_OpenFolderInSearch_JumpsToNewLocation() throws Exception { if (!mEnv.features.isLaunchToDocumentEnabled()) { return; } Loading @@ -114,6 +115,7 @@ public class AbstractActionHandlerTest { mEnv.populateStack(); mEnv.searchViewManager.isSearching = true; mEnv.docs.nextIsDocumentsUri = true; mEnv.docs.nextPath = new Path( TestProvidersAccess.HOME.rootId, Arrays.asList(TestEnv.FOLDER_1.documentId, TestEnv.FOLDER_2.documentId)); Loading @@ -124,15 +126,18 @@ public class AbstractActionHandlerTest { mEnv.beforeAsserts(); assertEquals(mEnv.docs.nextPath.getPath().size(), mEnv.state.stack.size()); assertEquals(TestEnv.FOLDER_2, mEnv.state.stack.peek()); assertEquals(TestEnv.FOLDER_2, mEnv.state.stack.pop()); assertEquals(TestEnv.FOLDER_1, mEnv.state.stack.pop()); } @Test public void testOpensContainerDocuments_pushToRootDoc_NoFindPathSupport() throws Exception { public void testOpensContainerDocuments_ClickFolderInSearch_PushToRootDoc_NoFindPathSupport() throws Exception { mEnv.populateStack(); mEnv.searchViewManager.isSearching = true; mEnv.docs.nextIsDocumentsUri = true; mEnv.docs.nextDocuments = Arrays.asList(TestEnv.FOLDER_1, TestEnv.FOLDER_2); mHandler.openContainerDocument(TestEnv.FOLDER_2); Loading @@ -144,6 +149,35 @@ public class AbstractActionHandlerTest { assertEquals(TestEnv.FOLDER_0, mEnv.state.stack.pop()); } @Test public void testOpensContainerDocuments_ClickArchiveInSearch_opensArchiveInArchiveProvider() throws Exception { if (!mEnv.features.isLaunchToDocumentEnabled()) { return; } mEnv.populateStack(); mEnv.searchViewManager.isSearching = true; mEnv.docs.nextIsDocumentsUri = true; mEnv.docs.nextPath = new Path( TestProvidersAccess.HOME.rootId, Arrays.asList(TestEnv.FOLDER_1.documentId, TestEnv.FOLDER_2.documentId, TestEnv.FILE_ARCHIVE.documentId)); mEnv.docs.nextDocuments = Arrays.asList( TestEnv.FOLDER_1, TestEnv.FOLDER_2, TestEnv.FILE_ARCHIVE); mEnv.docs.nextDocument = TestEnv.FILE_IN_ARCHIVE; mHandler.openContainerDocument(TestEnv.FILE_ARCHIVE); mEnv.beforeAsserts(); assertEquals(mEnv.docs.nextPath.getPath().size(), mEnv.state.stack.size()); assertEquals(TestEnv.FILE_IN_ARCHIVE, mEnv.state.stack.pop()); assertEquals(TestEnv.FOLDER_2, mEnv.state.stack.pop()); assertEquals(TestEnv.FOLDER_1, mEnv.state.stack.pop()); } @Test public void testOpensDocument_AssertionErrorIfAlreadyInStack() throws Exception { mEnv.populateStack(); Loading Loading
src/com/android/documentsui/AbstractActionHandler.java +7 −0 Original line number Diff line number Diff line Loading @@ -356,6 +356,13 @@ public abstract class AbstractActionHandler<T extends Activity & CommonAddons> + mState.stack.getRoot()); } final DocumentInfo top = stack.peek(); if (top.isArchive()) { // Swap the zip file in original provider and the one provided by ArchiveProvider. stack.pop(); stack.push(mDocs.getArchiveDocument(top.derivedUri)); } mState.stack.reset(); // Update navigator to give horizontal breadcrumb a chance to update documents. It // doesn't update its content if the size of document stack doesn't change. Loading
src/com/android/documentsui/LoadDocStackTask.java +0 −1 Original line number Diff line number Diff line Loading @@ -60,7 +60,6 @@ public class LoadDocStackTask extends PairedTask<Activity, Uri, DocumentStack> { @Override public @Nullable DocumentStack run(Uri... uris) { // assert(Features.OMC_RUNTIME); if (mDocs.isDocumentUri(uris[0])) { final Uri docUri; if (DocumentsContract.isTreeUri(uris[0])) { Loading
tests/unit/com/android/documentsui/AbstractActionHandlerTest.java +37 −3 Original line number Diff line number Diff line Loading @@ -106,7 +106,8 @@ public class AbstractActionHandlerTest { } @Test public void testOpensContainerDocuments_jumpToNewLocation() throws Exception { public void testOpensContainerDocuments_OpenFolderInSearch_JumpsToNewLocation() throws Exception { if (!mEnv.features.isLaunchToDocumentEnabled()) { return; } Loading @@ -114,6 +115,7 @@ public class AbstractActionHandlerTest { mEnv.populateStack(); mEnv.searchViewManager.isSearching = true; mEnv.docs.nextIsDocumentsUri = true; mEnv.docs.nextPath = new Path( TestProvidersAccess.HOME.rootId, Arrays.asList(TestEnv.FOLDER_1.documentId, TestEnv.FOLDER_2.documentId)); Loading @@ -124,15 +126,18 @@ public class AbstractActionHandlerTest { mEnv.beforeAsserts(); assertEquals(mEnv.docs.nextPath.getPath().size(), mEnv.state.stack.size()); assertEquals(TestEnv.FOLDER_2, mEnv.state.stack.peek()); assertEquals(TestEnv.FOLDER_2, mEnv.state.stack.pop()); assertEquals(TestEnv.FOLDER_1, mEnv.state.stack.pop()); } @Test public void testOpensContainerDocuments_pushToRootDoc_NoFindPathSupport() throws Exception { public void testOpensContainerDocuments_ClickFolderInSearch_PushToRootDoc_NoFindPathSupport() throws Exception { mEnv.populateStack(); mEnv.searchViewManager.isSearching = true; mEnv.docs.nextIsDocumentsUri = true; mEnv.docs.nextDocuments = Arrays.asList(TestEnv.FOLDER_1, TestEnv.FOLDER_2); mHandler.openContainerDocument(TestEnv.FOLDER_2); Loading @@ -144,6 +149,35 @@ public class AbstractActionHandlerTest { assertEquals(TestEnv.FOLDER_0, mEnv.state.stack.pop()); } @Test public void testOpensContainerDocuments_ClickArchiveInSearch_opensArchiveInArchiveProvider() throws Exception { if (!mEnv.features.isLaunchToDocumentEnabled()) { return; } mEnv.populateStack(); mEnv.searchViewManager.isSearching = true; mEnv.docs.nextIsDocumentsUri = true; mEnv.docs.nextPath = new Path( TestProvidersAccess.HOME.rootId, Arrays.asList(TestEnv.FOLDER_1.documentId, TestEnv.FOLDER_2.documentId, TestEnv.FILE_ARCHIVE.documentId)); mEnv.docs.nextDocuments = Arrays.asList( TestEnv.FOLDER_1, TestEnv.FOLDER_2, TestEnv.FILE_ARCHIVE); mEnv.docs.nextDocument = TestEnv.FILE_IN_ARCHIVE; mHandler.openContainerDocument(TestEnv.FILE_ARCHIVE); mEnv.beforeAsserts(); assertEquals(mEnv.docs.nextPath.getPath().size(), mEnv.state.stack.size()); assertEquals(TestEnv.FILE_IN_ARCHIVE, mEnv.state.stack.pop()); assertEquals(TestEnv.FOLDER_2, mEnv.state.stack.pop()); assertEquals(TestEnv.FOLDER_1, mEnv.state.stack.pop()); } @Test public void testOpensDocument_AssertionErrorIfAlreadyInStack() throws Exception { mEnv.populateStack(); Loading