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

Commit 499b0fc3 authored by Zemiao Zhu's avatar Zemiao Zhu Committed by Automerger Merge Worker
Browse files

Remove hamburger icon when there is only one root. am: 7da7b0fd am: 027cab7c

Change-Id: Id52c0636c3392f911baf944c420b68608b436d45
parents 5f06b176 027cab7c
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -964,6 +964,11 @@ public abstract class AbstractActionHandler<T extends FragmentActivity & CommonA
        boolean isInRecents();
        void setRootsDrawerOpen(boolean open);

        /**
         * Set the locked status of the DrawerController.
         */
        void setRootsDrawerLocked(boolean locked);

        // TODO: Let navigator listens to State
        void updateNavigator();

+6 −0
Original line number Diff line number Diff line
@@ -436,6 +436,12 @@ public abstract class BaseActivity
        mNavigator.revealRootsDrawer(open);
    }

    @Override
    public void setRootsDrawerLocked(boolean locked) {
        mDrawer.setLocked(locked);
        mNavigator.update();
    }

    @Override
    public void onRootPicked(RootInfo root) {
        // Clicking on the current root removes search
+16 −1
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import static com.android.documentsui.base.SharedMinimal.DEBUG;

import android.app.Activity;
import android.util.Log;
import android.view.Gravity;
import android.view.View;

import androidx.annotation.ColorRes;
@@ -41,6 +42,7 @@ public abstract class DrawerController implements DrawerListener {

    public abstract void update();
    public abstract void setOpen(boolean open);
    public abstract void setLocked(boolean locked);
    public abstract boolean isPresent();
    public abstract boolean isOpen();
    abstract void setTitle(String title);
@@ -178,6 +180,15 @@ public abstract class DrawerController implements DrawerListener {
            }
        }

        @Override
        public void setLocked(boolean locked) {
            if (locked) {
                mLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
            } else {
                mLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED);
            }
        }

        @Override
        public boolean isOpen() {
            return mLayout.isDrawerOpen(mDrawer);
@@ -185,7 +196,8 @@ public abstract class DrawerController implements DrawerListener {

        @Override
        public boolean isPresent() {
            return true;
            return DrawerLayout.LOCK_MODE_UNLOCKED
                    == mLayout.getDrawerLockMode(Gravity.START);
        }

        @Override
@@ -230,6 +242,9 @@ public abstract class DrawerController implements DrawerListener {
        @Override
        public void setOpen(boolean open) {}

        @Override
        public void setLocked(boolean locked) {}

        @Override
        public boolean isOpen() {
            return false;
+3 −0
Original line number Diff line number Diff line
@@ -254,6 +254,9 @@ public class RootsFragment extends Fragment {
                        DocumentsApplication.getUserIdManager(getContext()).getUserIds(),
                        maybeShowBadge);

                // Disable drawer if only one root
                activity.setRootsDrawerLocked(sortedItems.size() <= 1);

                // Get the first visible position and offset
                final int firstPosition = mList.getFirstVisiblePosition();
                View firstChild = mList.getChildAt(0);
+7 −0
Original line number Diff line number Diff line
@@ -79,6 +79,7 @@ public abstract class TestActivity extends AbstractBase {
    public TestEventListener<Void> restoreRootAndDirectory;
    public TestEventListener<Integer> refreshCurrentRootAndDirectory;
    public TestEventListener<Boolean> setRootsDrawerOpen;
    public TestEventListener<Boolean> setRootsDrawerLocked;
    public TestEventListener<Uri> notifyDirectoryNavigated;
    public TestEventHandler<Void> finishedHandler;

@@ -102,6 +103,7 @@ public abstract class TestActivity extends AbstractBase {
        restoreRootAndDirectory = new TestEventListener<>();
        refreshCurrentRootAndDirectory =  new TestEventListener<>();
        setRootsDrawerOpen = new TestEventListener<>();
        setRootsDrawerLocked = new TestEventListener<>();
        notifyDirectoryNavigated = new TestEventListener<>();
        contentResolver = env.contentResolver;
        loaderManager = new TestLoaderManager();
@@ -212,6 +214,11 @@ public abstract class TestActivity extends AbstractBase {
        setRootsDrawerOpen.accept(open);
    }

    @Override
    public final void setRootsDrawerLocked(boolean locked) {
        setRootsDrawerLocked.accept(locked);
    }

    @Override
    public final ContentResolver getContentResolver() {
        return contentResolver;
Loading