Loading res/values/overlayable.xml +1 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ <item type="bool" name="config_default_show_device_root"/> <item type="bool" name="feature_default_root_in_browse"/> <item type="bool" name="is_launcher_enabled"/> <item type="bool" name="show_search_bar"/> <!-- END BOOLEAN CONFIG --> <!-- START STRING CONFIG --> Loading src/com/android/documentsui/BaseActivity.java +2 −1 Original line number Diff line number Diff line Loading @@ -301,7 +301,8 @@ public abstract class BaseActivity getMenuInflater().inflate(R.menu.activity, menu); mNavigator.update(); boolean fullBarSearch = getResources().getBoolean(R.bool.full_bar_search_view); mSearchManager.install(menu, fullBarSearch); boolean showSearchBar = getResources().getBoolean(R.bool.show_search_bar); mSearchManager.install(menu, fullBarSearch, showSearchBar); final ActionMenuView subMenuView = findViewById(R.id.sub_menu); // If size is 0, it means the menu has not inflated and it should only do once. Loading src/com/android/documentsui/NavigationViewManager.java +7 −5 Original line number Diff line number Diff line Loading @@ -18,9 +18,6 @@ package com.android.documentsui; import static com.android.documentsui.base.SharedMinimal.VERBOSE; import androidx.annotation.Nullable; import androidx.appcompat.widget.Toolbar; import android.app.Activity; import android.content.res.Resources; import android.graphics.Outline; Loading @@ -29,6 +26,9 @@ import android.util.Log; import android.view.View; import android.view.ViewOutlineProvider; import androidx.annotation.Nullable; import androidx.appcompat.widget.Toolbar; import com.android.documentsui.R; import com.android.documentsui.base.RootInfo; import com.android.documentsui.base.State; Loading @@ -55,6 +55,7 @@ public class NavigationViewManager { private final CollapsingToolbarLayout mCollapsingBarLayout; private final Drawable mDefaultActionBarBackground; private final ViewOutlineProvider mSearchBarOutlineProvider; private final boolean mShowSearchBar; public NavigationViewManager( Activity activity, Loading @@ -80,6 +81,7 @@ public class NavigationViewManager { mSearchBarView = activity.findViewById(R.id.searchbar_title); mCollapsingBarLayout = activity.findViewById(R.id.collapsing_toolbar); mDefaultActionBarBackground = mToolbar.getBackground(); mShowSearchBar = activity.getResources().getBoolean(R.bool.show_search_bar); final Resources resources = mToolbar.getResources(); final int radius = resources.getDimensionPixelSize(R.dimen.search_bar_radius); Loading Loading @@ -133,7 +135,7 @@ public class NavigationViewManager { mToolbar.setNavigationIcon(getActionBarIcon()); mToolbar.setNavigationContentDescription(R.string.drawer_open); if (mState.stack.isRecents()) { if (shouldShowSearchBar()) { mBreadcrumb.show(false); mToolbar.setTitle(null); mSearchBarView.setVisibility(View.VISIBLE); Loading Loading @@ -186,7 +188,7 @@ public class NavigationViewManager { } private boolean shouldShowSearchBar() { return mState.stack.isRecents() && !mEnv.isSearchExpanded(); return mState.stack.isRecents() && !mEnv.isSearchExpanded() && mShowSearchBar; } // Hamburger if drawer is present, else sad nullness. Loading src/com/android/documentsui/queries/SearchViewManager.java +11 −2 Original line number Diff line number Diff line Loading @@ -84,6 +84,7 @@ public class SearchViewManager implements private boolean mIgnoreNextClose; private boolean mFullBar; private boolean mIsHistorySearch; private boolean mShowSearchBar; private Menu mMenu; private MenuItem mMenuItem; Loading Loading @@ -206,7 +207,14 @@ public class SearchViewManager implements mSearchView.clearFocus(); } public void install(Menu menu, boolean isFullBarSearch) { /** * Initailize search view by option menu. * * @param menu the menu include search view * @param isFullBarSearch whether hide other menu when search view expand * @param isShowSearchBar whether replace collapsed search view by search hint text */ public void install(Menu menu, boolean isFullBarSearch, boolean isShowSearchBar) { mMenu = menu; mMenuItem = mMenu.findItem(R.id.option_menu_search); mSearchView = (SearchView) mMenuItem.getActionView(); Loading @@ -224,6 +232,7 @@ public class SearchViewManager implements } mFullBar = isFullBarSearch; mShowSearchBar = isShowSearchBar; mSearchView.setMaxWidth(Integer.MAX_VALUE); mMenuItem.setOnActionExpandListener(this); Loading Loading @@ -300,7 +309,7 @@ public class SearchViewManager implements } // Recent root show open search bar, do not show duplicate search icon. mMenuItem.setVisible(supportsSearch && !stack.isRecents()); mMenuItem.setVisible(supportsSearch && (!stack.isRecents() || !mShowSearchBar)); mChipViewManager.setChipsRowVisible(supportsSearch && root.supportsMimeTypesSearch()); } Loading tests/functional/com/android/documentsui/FilesActivityDefaultsUiTest.java +7 −1 Original line number Diff line number Diff line Loading @@ -60,7 +60,13 @@ public class FilesActivityDefaultsUiTest extends ActivityTest<FilesActivity> { bots.main.assertWindowTitle("Downloads"); } } else { boolean showSearchBar = context.getResources().getBoolean(R.bool.show_search_bar); if (showSearchBar) { bots.main.assertSearchBarShow(); } else { bots.main.assertWindowTitle("Recent"); } } } Loading Loading
res/values/overlayable.xml +1 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ <item type="bool" name="config_default_show_device_root"/> <item type="bool" name="feature_default_root_in_browse"/> <item type="bool" name="is_launcher_enabled"/> <item type="bool" name="show_search_bar"/> <!-- END BOOLEAN CONFIG --> <!-- START STRING CONFIG --> Loading
src/com/android/documentsui/BaseActivity.java +2 −1 Original line number Diff line number Diff line Loading @@ -301,7 +301,8 @@ public abstract class BaseActivity getMenuInflater().inflate(R.menu.activity, menu); mNavigator.update(); boolean fullBarSearch = getResources().getBoolean(R.bool.full_bar_search_view); mSearchManager.install(menu, fullBarSearch); boolean showSearchBar = getResources().getBoolean(R.bool.show_search_bar); mSearchManager.install(menu, fullBarSearch, showSearchBar); final ActionMenuView subMenuView = findViewById(R.id.sub_menu); // If size is 0, it means the menu has not inflated and it should only do once. Loading
src/com/android/documentsui/NavigationViewManager.java +7 −5 Original line number Diff line number Diff line Loading @@ -18,9 +18,6 @@ package com.android.documentsui; import static com.android.documentsui.base.SharedMinimal.VERBOSE; import androidx.annotation.Nullable; import androidx.appcompat.widget.Toolbar; import android.app.Activity; import android.content.res.Resources; import android.graphics.Outline; Loading @@ -29,6 +26,9 @@ import android.util.Log; import android.view.View; import android.view.ViewOutlineProvider; import androidx.annotation.Nullable; import androidx.appcompat.widget.Toolbar; import com.android.documentsui.R; import com.android.documentsui.base.RootInfo; import com.android.documentsui.base.State; Loading @@ -55,6 +55,7 @@ public class NavigationViewManager { private final CollapsingToolbarLayout mCollapsingBarLayout; private final Drawable mDefaultActionBarBackground; private final ViewOutlineProvider mSearchBarOutlineProvider; private final boolean mShowSearchBar; public NavigationViewManager( Activity activity, Loading @@ -80,6 +81,7 @@ public class NavigationViewManager { mSearchBarView = activity.findViewById(R.id.searchbar_title); mCollapsingBarLayout = activity.findViewById(R.id.collapsing_toolbar); mDefaultActionBarBackground = mToolbar.getBackground(); mShowSearchBar = activity.getResources().getBoolean(R.bool.show_search_bar); final Resources resources = mToolbar.getResources(); final int radius = resources.getDimensionPixelSize(R.dimen.search_bar_radius); Loading Loading @@ -133,7 +135,7 @@ public class NavigationViewManager { mToolbar.setNavigationIcon(getActionBarIcon()); mToolbar.setNavigationContentDescription(R.string.drawer_open); if (mState.stack.isRecents()) { if (shouldShowSearchBar()) { mBreadcrumb.show(false); mToolbar.setTitle(null); mSearchBarView.setVisibility(View.VISIBLE); Loading Loading @@ -186,7 +188,7 @@ public class NavigationViewManager { } private boolean shouldShowSearchBar() { return mState.stack.isRecents() && !mEnv.isSearchExpanded(); return mState.stack.isRecents() && !mEnv.isSearchExpanded() && mShowSearchBar; } // Hamburger if drawer is present, else sad nullness. Loading
src/com/android/documentsui/queries/SearchViewManager.java +11 −2 Original line number Diff line number Diff line Loading @@ -84,6 +84,7 @@ public class SearchViewManager implements private boolean mIgnoreNextClose; private boolean mFullBar; private boolean mIsHistorySearch; private boolean mShowSearchBar; private Menu mMenu; private MenuItem mMenuItem; Loading Loading @@ -206,7 +207,14 @@ public class SearchViewManager implements mSearchView.clearFocus(); } public void install(Menu menu, boolean isFullBarSearch) { /** * Initailize search view by option menu. * * @param menu the menu include search view * @param isFullBarSearch whether hide other menu when search view expand * @param isShowSearchBar whether replace collapsed search view by search hint text */ public void install(Menu menu, boolean isFullBarSearch, boolean isShowSearchBar) { mMenu = menu; mMenuItem = mMenu.findItem(R.id.option_menu_search); mSearchView = (SearchView) mMenuItem.getActionView(); Loading @@ -224,6 +232,7 @@ public class SearchViewManager implements } mFullBar = isFullBarSearch; mShowSearchBar = isShowSearchBar; mSearchView.setMaxWidth(Integer.MAX_VALUE); mMenuItem.setOnActionExpandListener(this); Loading Loading @@ -300,7 +309,7 @@ public class SearchViewManager implements } // Recent root show open search bar, do not show duplicate search icon. mMenuItem.setVisible(supportsSearch && !stack.isRecents()); mMenuItem.setVisible(supportsSearch && (!stack.isRecents() || !mShowSearchBar)); mChipViewManager.setChipsRowVisible(supportsSearch && root.supportsMimeTypesSearch()); } Loading
tests/functional/com/android/documentsui/FilesActivityDefaultsUiTest.java +7 −1 Original line number Diff line number Diff line Loading @@ -60,7 +60,13 @@ public class FilesActivityDefaultsUiTest extends ActivityTest<FilesActivity> { bots.main.assertWindowTitle("Downloads"); } } else { boolean showSearchBar = context.getResources().getBoolean(R.bool.show_search_bar); if (showSearchBar) { bots.main.assertSearchBarShow(); } else { bots.main.assertWindowTitle("Recent"); } } } Loading