From b180a65d41adc731cbff1536c7ede15174bc08e1 Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Mon, 23 Sep 2013 14:23:41 -0700 Subject: Allow saving to Downloads. Uses new column to mark writability. Also filter file selection in create mode to only allow writable files. Bug: 10667164, 10893268 Change-Id: I90f74efbb7ac634fbdb3cc02a904a96a434d3605 --- .../src/com/android/documentsui/DirectoryFragment.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'packages/DocumentsUI/src/com/android/documentsui') diff --git a/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java b/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java index 8eb121a..de1f130 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java +++ b/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java @@ -17,6 +17,7 @@ package com.android.documentsui; import static com.android.documentsui.DocumentsActivity.TAG; +import static com.android.documentsui.DocumentsActivity.State.ACTION_CREATE; import static com.android.documentsui.DocumentsActivity.State.ACTION_MANAGE; import static com.android.documentsui.DocumentsActivity.State.MODE_GRID; import static com.android.documentsui.DocumentsActivity.State.MODE_LIST; @@ -887,8 +888,14 @@ public class DirectoryFragment extends Fragment { line2.setVisibility(hasLine2 ? View.VISIBLE : View.GONE); } - final boolean enabled = Document.MIME_TYPE_DIR.equals(docMimeType) + boolean enabled = Document.MIME_TYPE_DIR.equals(docMimeType) || MimePredicate.mimeMatches(state.acceptMimes, docMimeType); + + // Read-only files aren't actually enabled when creating + if (state.action == ACTION_CREATE && (docFlags & Document.FLAG_SUPPORTS_WRITE) == 0) { + enabled = false; + } + if (enabled) { setEnabledRecursive(convertView, true); icon.setAlpha(1f); -- cgit v1.1