summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
author François Degros <fdegros@google.com> 2025-03-11 14:43:12 +1100
committer François Degros <fdegros@google.com> 2025-03-12 13:52:55 +1100
commit34c3fa928b1b0b81898025587b2ab1cfb2cf8785 (patch)
treea9b387fdfbff851dbe458b4bb310aff16c4bce2c /src
parent2e15b59c7376645f118f7cc3f3d45cd0a1956778 (diff)
Implement the 'Browse' menu item action
Bug: 400835232 Flag: com.android.documentsui.flags.use_material3 Flag: com.android.documentsui.flags.zip_ng_ro Test: Manual Change-Id: I16c46304577a659dd47bff32ae6ed213e6381acc
Diffstat (limited to 'src')
-rw-r--r--src/com/android/documentsui/dirlist/DirectoryFragment.java13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/com/android/documentsui/dirlist/DirectoryFragment.java b/src/com/android/documentsui/dirlist/DirectoryFragment.java
index 6de42db59..2ea906a60 100644
--- a/src/com/android/documentsui/dirlist/DirectoryFragment.java
+++ b/src/com/android/documentsui/dirlist/DirectoryFragment.java
@@ -23,6 +23,7 @@ import static com.android.documentsui.base.State.MODE_GRID;
import static com.android.documentsui.base.State.MODE_LIST;
import static com.android.documentsui.util.FlagUtils.isDesktopFileHandlingFlagEnabled;
import static com.android.documentsui.util.FlagUtils.isUseMaterial3FlagEnabled;
+import static com.android.documentsui.util.FlagUtils.isZipNgFlagEnabled;
import android.app.ActivityManager;
import android.content.BroadcastReceiver;
@@ -946,11 +947,13 @@ public class DirectoryFragment extends Fragment implements SwipeRefreshLayout.On
mSelectionMgr.copySelection(selection);
final int id = item.getItemId();
- if (isDesktopFileHandlingFlagEnabled() && id == R.id.dir_menu_open) {
- // On desktop, "open" is displayed in file management mode (i.e. `files.MenuManager`).
- // This menu item behaves the same as double click on the menu item which is handled by
- // onItemActivated but since onItemActivated requires a RecylcerView ItemDetails, we're
- // using viewDocument that takes a Selection.
+ if ((isDesktopFileHandlingFlagEnabled() && id == R.id.dir_menu_open)
+ || (isZipNgFlagEnabled() && id == R.id.dir_menu_browse)) {
+ // The "Open" menu item is displayed in desktop mode.
+ // The "Browse" menu item is displayed for supported archives in advanced ZIP mode.
+ // These menu items behave the same as a double click on the matching document which
+ // is handled by onItemActivated but since onItemActivated requires a RecyclerView
+ // ItemDetails, we're using viewDocument that takes a Selection.
viewDocument(selection);
return true;
} else if (id == R.id.action_menu_select || id == R.id.dir_menu_open) {