Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f1419f89 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Update selection logic to use a separate MaterialToolbar" into main

parents a7474565 d2db3d79
Loading
Loading
Loading
Loading
+9 −0
Original line number Original line Diff line number Diff line
@@ -66,6 +66,15 @@


        </com.google.android.material.appbar.MaterialToolbar>
        </com.google.android.material.appbar.MaterialToolbar>


        <com.google.android.material.appbar.MaterialToolbar
            android:id="@+id/selection_bar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:touchscreenBlocksFocus="false"
            android:background="?attr/colorSurfaceBright"
            android:visibility="gone"
            app:layout_collapseMode="pin"/>

    </com.google.android.material.appbar.CollapsingToolbarLayout>
    </com.google.android.material.appbar.CollapsingToolbarLayout>


</com.google.android.material.appbar.AppBarLayout>
</com.google.android.material.appbar.AppBarLayout>
+27 −13
Original line number Original line Diff line number Diff line
@@ -54,6 +54,10 @@
                android:paddingTop="@dimen/main_container_padding_top"
                android:paddingTop="@dimen/main_container_padding_top"
                android:background="@drawable/main_container_top_section_background">
                android:background="@drawable/main_container_top_section_background">


                <FrameLayout
                    android:layout_height="match_parent"
                    android:layout_width="match_parent">

                    <com.google.android.material.appbar.MaterialToolbar
                    <com.google.android.material.appbar.MaterialToolbar
                        android:id="@+id/toolbar"
                        android:id="@+id/toolbar"
                        android:layout_width="match_parent"
                        android:layout_width="match_parent"
@@ -71,6 +75,16 @@


                    </com.google.android.material.appbar.MaterialToolbar>
                    </com.google.android.material.appbar.MaterialToolbar>


                    <com.google.android.material.appbar.MaterialToolbar
                        android:id="@+id/selection_bar"
                        android:layout_width="match_parent"
                        android:layout_height="?attr/actionBarSize"
                        android:touchscreenBlocksFocus="false"
                        android:background="?attr/colorSurfaceBright"
                        android:visibility="gone"/>

                </FrameLayout>

                <include layout="@layout/directory_header" />
                <include layout="@layout/directory_header" />


            </LinearLayout>
            </LinearLayout>
+27 −13
Original line number Original line Diff line number Diff line
@@ -85,6 +85,10 @@
                    android:paddingTop="@dimen/main_container_padding_top"
                    android:paddingTop="@dimen/main_container_padding_top"
                    android:background="@drawable/main_container_top_section_background">
                    android:background="@drawable/main_container_top_section_background">


                    <FrameLayout
                        android:layout_height="match_parent"
                        android:layout_width="match_parent">

                        <com.google.android.material.appbar.MaterialToolbar
                        <com.google.android.material.appbar.MaterialToolbar
                            android:id="@+id/toolbar"
                            android:id="@+id/toolbar"
                            android:layout_width="match_parent"
                            android:layout_width="match_parent"
@@ -102,6 +106,16 @@


                        </com.google.android.material.appbar.MaterialToolbar>
                        </com.google.android.material.appbar.MaterialToolbar>


                        <com.google.android.material.appbar.MaterialToolbar
                            android:id="@+id/selection_bar"
                            android:layout_width="match_parent"
                            android:layout_height="?attr/actionBarSize"
                            android:touchscreenBlocksFocus="false"
                            android:background="?attr/colorSurfaceBright"
                            android:visibility="gone"/>

                    </FrameLayout>

                    <include layout="@layout/directory_header" />
                    <include layout="@layout/directory_header" />


                </LinearLayout>
                </LinearLayout>
+7 −0
Original line number Original line Diff line number Diff line
@@ -14,6 +14,13 @@
     limitations under the License.
     limitations under the License.
-->
-->


<!--
     All of the `item`'s below have both `android:showAsAction` and `app:showAsAction`
     intentionally. This is because when the `use_material3` flag is disabled, the menu is inflated
     into a menu via ActionMode and when the flag is enabled it is inflated into a MaterialToolbar.
     The former requires `android:showAsAction` whilst the latter requires `app:showAsAction`. When
     the `use_material3` flag has rolled out by default, the `android:showAsAction` can be removed.
-->
<menu
<menu
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    xmlns:app="http://schemas.android.com/apk/res-auto">
+13 −18
Original line number Original line Diff line number Diff line
@@ -21,6 +21,7 @@ import static com.android.documentsui.base.SharedMinimal.DEBUG;
import static com.android.documentsui.base.State.MODE_GRID;
import static com.android.documentsui.base.State.MODE_GRID;
import static com.android.documentsui.util.FlagUtils.isUseMaterial3FlagEnabled;
import static com.android.documentsui.util.FlagUtils.isUseMaterial3FlagEnabled;
import static com.android.documentsui.util.FlagUtils.isUsePeekPreviewFlagEnabled;
import static com.android.documentsui.util.FlagUtils.isUsePeekPreviewFlagEnabled;
import static com.android.documentsui.util.FlagUtils.isVisualSignalsFlagEnabled;
import static com.android.documentsui.util.Material3Config.getRes;
import static com.android.documentsui.util.Material3Config.getRes;


import android.content.Context;
import android.content.Context;
@@ -288,7 +289,7 @@ public abstract class BaseActivity


                if (isUseMaterial3FlagEnabled()) {
                if (isUseMaterial3FlagEnabled()) {
                    // Whenever a search chip is clicked, close the navigation bar.
                    // Whenever a search chip is clicked, close the navigation bar.
                    mNavigator.closeSelectionBar();
                    mInjector.selectionBarController.closeSelectionBar();
                }
                }
            }
            }


@@ -445,8 +446,7 @@ public abstract class BaseActivity
                    breadcrumb,
                    breadcrumb,
                    profileTabsContainer,
                    profileTabsContainer,
                    DocumentsApplication.getUserManagerState(this),
                    DocumentsApplication.getUserManagerState(this),
                    mConfigStore,
                    mConfigStore);
                    mInjector);
        }
        }
        return new NavigationViewManager(
        return new NavigationViewManager(
                this,
                this,
@@ -456,8 +456,7 @@ public abstract class BaseActivity
                breadcrumb,
                breadcrumb,
                profileTabsContainer,
                profileTabsContainer,
                DocumentsApplication.getUserIdManager(this),
                DocumentsApplication.getUserIdManager(this),
                mConfigStore,
                mConfigStore);
                mInjector);
    }
    }


    public void onPreferenceChanged(String pref) {
    public void onPreferenceChanged(String pref) {
@@ -473,7 +472,7 @@ public abstract class BaseActivity


        Runnable finishActionMode =
        Runnable finishActionMode =
                (isUseMaterial3FlagEnabled())
                (isUseMaterial3FlagEnabled())
                        ? mNavigator::closeSelectionBar
                        ? mInjector.selectionBarController::closeSelectionBar
                        : mInjector.actionModeController::finishActionMode;
                        : mInjector.actionModeController::finishActionMode;


        mRootsMonitor =
        mRootsMonitor =
@@ -497,13 +496,6 @@ public abstract class BaseActivity


    @Override
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
    public boolean onCreateOptionsMenu(Menu menu) {
        if (isUseMaterial3FlagEnabled()) {
            // In Material3 the menu is now inflated in the `NavigationViewMenu`. This is currently
            // to allow for us to inflate between the action_menu and the activity menu. Once the
            // Material 3 flag is removed, the menus will be merged and we can rely on this single
            // inflation point.
            return super.onCreateOptionsMenu(menu);
        }
        boolean showMenu = super.onCreateOptionsMenu(menu);
        boolean showMenu = super.onCreateOptionsMenu(menu);


        getMenuInflater().inflate(getRes(R.menu.activity), menu);
        getMenuInflater().inflate(getRes(R.menu.activity), menu);
@@ -528,17 +520,20 @@ public abstract class BaseActivity
    @CallSuper
    @CallSuper
    public boolean onPrepareOptionsMenu(Menu menu) {
    public boolean onPrepareOptionsMenu(Menu menu) {
        super.onPrepareOptionsMenu(menu);
        super.onPrepareOptionsMenu(menu);
        mSearchManager.showMenu(mState.stack);

        // Remove the subMenu when material3 is launched b/379776735.
        // Remove the subMenu when material3 is launched b/379776735.
        if (isUseMaterial3FlagEnabled()) {
        if (isUseMaterial3FlagEnabled()) {
            if (mNavigator != null) {
            mInjector.menuManager.updateSubMenu(null);
                mNavigator.updateActionMenu();
            }
        } else {
        } else {
            mSearchManager.showMenu(mState.stack);
            final ActionMenuView subMenuView = findViewById(getRes(R.id.sub_menu));
            final ActionMenuView subMenuView = findViewById(getRes(R.id.sub_menu));
            mInjector.menuManager.updateSubMenu(subMenuView.getMenu());
            mInjector.menuManager.updateSubMenu(subMenuView.getMenu());
        }
        }


        if (isVisualSignalsFlagEnabled()) {
            mInjector.menuManager.instantiateJobProgress(menu);
        }

        return true;
        return true;
    }
    }


@@ -642,7 +637,7 @@ public abstract class BaseActivity
        }
        }


        if (isUseMaterial3FlagEnabled()) {
        if (isUseMaterial3FlagEnabled()) {
            mNavigator.closeSelectionBar();
            mInjector.selectionBarController.closeSelectionBar();
        } else {
        } else {
            mInjector.actionModeController.finishActionMode();
            mInjector.actionModeController.finishActionMode();
        }
        }
Loading