Loading packages/DocumentsUI/src/com/android/documentsui/BaseActivity.java +3 −2 Original line number Original line Diff line number Diff line Loading @@ -300,10 +300,11 @@ public abstract class BaseActivity extends Activity { void onDirectoryCreated(DocumentInfo doc) { void onDirectoryCreated(DocumentInfo doc) { checkArgument(doc.isDirectory()); checkArgument(doc.isDirectory()); openDirectory(doc); openContainerDocument(doc); } } void openDirectory(DocumentInfo doc) { void openContainerDocument(DocumentInfo doc) { checkArgument(doc.isContainer()); mState.stack.push(doc); mState.stack.push(doc); mState.stackTouched = true; mState.stackTouched = true; onCurrentDirectoryChanged(ANIM_DOWN); onCurrentDirectoryChanged(ANIM_DOWN); Loading packages/DocumentsUI/src/com/android/documentsui/DocumentsActivity.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -421,8 +421,8 @@ public class DocumentsActivity extends BaseActivity { @Override @Override public void onDocumentPicked(DocumentInfo doc, DocumentContext context) { public void onDocumentPicked(DocumentInfo doc, DocumentContext context) { final FragmentManager fm = getFragmentManager(); final FragmentManager fm = getFragmentManager(); if (doc.isDirectory()) { if (doc.isContainer()) { openDirectory(doc); openContainerDocument(doc); } else if (mState.action == ACTION_OPEN || mState.action == ACTION_GET_CONTENT) { } else if (mState.action == ACTION_OPEN || mState.action == ACTION_GET_CONTENT) { // Explicit file picked, return // Explicit file picked, return new ExistingFinishTask(doc.derivedUri).executeOnExecutor(getExecutorForCurrentDirectory()); new ExistingFinishTask(doc.derivedUri).executeOnExecutor(getExecutorForCurrentDirectory()); Loading packages/DocumentsUI/src/com/android/documentsui/DownloadsActivity.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -185,8 +185,8 @@ public class DownloadsActivity extends BaseActivity { @Override @Override public void onDocumentPicked(DocumentInfo doc, DocumentContext context) { public void onDocumentPicked(DocumentInfo doc, DocumentContext context) { final FragmentManager fm = getFragmentManager(); final FragmentManager fm = getFragmentManager(); if (doc.isDirectory()) { if (doc.isContainer()) { openDirectory(doc); openContainerDocument(doc); } else { } else { // First try managing the document; we expect manager to filter // First try managing the document; we expect manager to filter // based on authority, so we don't grant. // based on authority, so we don't grant. Loading packages/DocumentsUI/src/com/android/documentsui/FilesActivity.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -311,8 +311,8 @@ public class FilesActivity extends BaseActivity { @Override @Override public void onDocumentPicked(DocumentInfo doc, @Nullable DocumentContext siblings) { public void onDocumentPicked(DocumentInfo doc, @Nullable DocumentContext siblings) { if (doc.isDirectory()) { if (doc.isContainer()) { openDirectory(doc); openContainerDocument(doc); } else { } else { openDocument(doc, siblings); openDocument(doc, siblings); } } Loading packages/DocumentsUI/src/com/android/documentsui/model/DocumentInfo.java +8 −0 Original line number Original line Diff line number Diff line Loading @@ -243,6 +243,14 @@ public class DocumentInfo implements Durable, Parcelable { return (flags & Document.FLAG_DIR_HIDE_GRID_TITLES) != 0; return (flags & Document.FLAG_DIR_HIDE_GRID_TITLES) != 0; } } public boolean isArchive() { return (flags & Document.FLAG_ARCHIVE) != 0; } public boolean isContainer() { return isDirectory() || isArchive(); } public int hashCode() { public int hashCode() { return derivedUri.hashCode() + mimeType.hashCode(); return derivedUri.hashCode() + mimeType.hashCode(); } } Loading Loading
packages/DocumentsUI/src/com/android/documentsui/BaseActivity.java +3 −2 Original line number Original line Diff line number Diff line Loading @@ -300,10 +300,11 @@ public abstract class BaseActivity extends Activity { void onDirectoryCreated(DocumentInfo doc) { void onDirectoryCreated(DocumentInfo doc) { checkArgument(doc.isDirectory()); checkArgument(doc.isDirectory()); openDirectory(doc); openContainerDocument(doc); } } void openDirectory(DocumentInfo doc) { void openContainerDocument(DocumentInfo doc) { checkArgument(doc.isContainer()); mState.stack.push(doc); mState.stack.push(doc); mState.stackTouched = true; mState.stackTouched = true; onCurrentDirectoryChanged(ANIM_DOWN); onCurrentDirectoryChanged(ANIM_DOWN); Loading
packages/DocumentsUI/src/com/android/documentsui/DocumentsActivity.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -421,8 +421,8 @@ public class DocumentsActivity extends BaseActivity { @Override @Override public void onDocumentPicked(DocumentInfo doc, DocumentContext context) { public void onDocumentPicked(DocumentInfo doc, DocumentContext context) { final FragmentManager fm = getFragmentManager(); final FragmentManager fm = getFragmentManager(); if (doc.isDirectory()) { if (doc.isContainer()) { openDirectory(doc); openContainerDocument(doc); } else if (mState.action == ACTION_OPEN || mState.action == ACTION_GET_CONTENT) { } else if (mState.action == ACTION_OPEN || mState.action == ACTION_GET_CONTENT) { // Explicit file picked, return // Explicit file picked, return new ExistingFinishTask(doc.derivedUri).executeOnExecutor(getExecutorForCurrentDirectory()); new ExistingFinishTask(doc.derivedUri).executeOnExecutor(getExecutorForCurrentDirectory()); Loading
packages/DocumentsUI/src/com/android/documentsui/DownloadsActivity.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -185,8 +185,8 @@ public class DownloadsActivity extends BaseActivity { @Override @Override public void onDocumentPicked(DocumentInfo doc, DocumentContext context) { public void onDocumentPicked(DocumentInfo doc, DocumentContext context) { final FragmentManager fm = getFragmentManager(); final FragmentManager fm = getFragmentManager(); if (doc.isDirectory()) { if (doc.isContainer()) { openDirectory(doc); openContainerDocument(doc); } else { } else { // First try managing the document; we expect manager to filter // First try managing the document; we expect manager to filter // based on authority, so we don't grant. // based on authority, so we don't grant. Loading
packages/DocumentsUI/src/com/android/documentsui/FilesActivity.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -311,8 +311,8 @@ public class FilesActivity extends BaseActivity { @Override @Override public void onDocumentPicked(DocumentInfo doc, @Nullable DocumentContext siblings) { public void onDocumentPicked(DocumentInfo doc, @Nullable DocumentContext siblings) { if (doc.isDirectory()) { if (doc.isContainer()) { openDirectory(doc); openContainerDocument(doc); } else { } else { openDocument(doc, siblings); openDocument(doc, siblings); } } Loading
packages/DocumentsUI/src/com/android/documentsui/model/DocumentInfo.java +8 −0 Original line number Original line Diff line number Diff line Loading @@ -243,6 +243,14 @@ public class DocumentInfo implements Durable, Parcelable { return (flags & Document.FLAG_DIR_HIDE_GRID_TITLES) != 0; return (flags & Document.FLAG_DIR_HIDE_GRID_TITLES) != 0; } } public boolean isArchive() { return (flags & Document.FLAG_ARCHIVE) != 0; } public boolean isContainer() { return isDirectory() || isArchive(); } public int hashCode() { public int hashCode() { return derivedUri.hashCode() + mimeType.hashCode(); return derivedUri.hashCode() + mimeType.hashCode(); } } Loading