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

Commit 90bfa158 authored by Steve McKay's avatar Steve McKay Committed by Android (Google) Code Review
Browse files

Merge "Move create folder and sort to overflow menu, cleanup back behavior."

parents 6c89fa49 f873769f
Loading
Loading
Loading
Loading
+18 −18
Original line number Diff line number Diff line
@@ -31,23 +31,6 @@
        android:actionViewClass="android.widget.SearchView"
        android:imeOptions="actionSearch"
        android:visible="false" />
    <item
        android:id="@+id/menu_sort"
        android:title="@string/menu_sort"
        android:icon="@drawable/ic_menu_sortby"
        android:showAsAction="always">
        <menu>
            <item
                android:id="@+id/menu_sort_name"
                android:title="@string/sort_name" />
            <item
                android:id="@+id/menu_sort_date"
                android:title="@string/sort_date" />
            <item
                android:id="@+id/menu_sort_size"
                android:title="@string/sort_size" />
        </menu>
    </item>
    <item
        android:id="@+id/menu_grid"
        android:title="@string/menu_grid"
@@ -70,7 +53,7 @@
        android:title="@string/menu_create_dir"
        android:icon="@drawable/ic_menu_new_folder"
        android:alphabeticShortcut="e"
        android:showAsAction="always"
        android:showAsAction="never"
        android:visible="false" />
    <item
        android:id="@+id/menu_paste_from_clipboard"
@@ -79,6 +62,23 @@
        android:showAsAction="never"
        android:visible="false" />
    <!-- Copy action is defined in mode_directory.xml -->
    <item
        android:id="@+id/menu_sort"
        android:title="@string/menu_sort"
        android:icon="@drawable/ic_menu_sortby"
        android:showAsAction="never">
        <menu>
            <item
                android:id="@+id/menu_sort_name"
                android:title="@string/sort_name" />
            <item
                android:id="@+id/menu_sort_date"
                android:title="@string/sort_date" />
            <item
                android:id="@+id/menu_sort_size"
                android:title="@string/sort_size" />
        </menu>
    </item>
    <item
        android:id="@+id/menu_file_size"
        android:showAsAction="never"
+33 −21
Original line number Diff line number Diff line
@@ -65,6 +65,9 @@ public abstract class BaseActivity extends Activity

    static final String EXTRA_STATE = "state";

    // See comments where this const is referenced for details.
    private static final int DRAWER_NO_FIDDLE_DELAY = 1500;

    State mState;
    RootsCache mRoots;
    SearchManager mSearchManager;
@@ -72,9 +75,14 @@ public abstract class BaseActivity extends Activity
    NavigationView mNavigator;

    private final String mTag;

    @LayoutRes
    private int mLayoutId;

    // Track the time we opened the drawer in response to back being pressed.
    // We use the time gap to figure out whether to close app or reopen the drawer.
    private long mDrawerLastFiddled;

    public abstract void onDocumentPicked(DocumentInfo doc, @Nullable SiblingProvider siblings);
    public abstract void onDocumentsPicked(List<DocumentInfo> docs);

@@ -232,21 +240,6 @@ public abstract class BaseActivity extends Activity
        }
    }

    void expandMenus(Menu menu) {
        for (int i = 0; i < menu.size(); i++) {
            final MenuItem item = menu.getItem(i);
            switch (item.getItemId()) {
                case R.id.menu_advanced:
                case R.id.menu_file_size:
                case R.id.menu_new_window:
                case R.id.menu_search:
                    break;
                default:
                    item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
            }
        }
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {

@@ -541,16 +534,35 @@ public abstract class BaseActivity extends Activity
            return;
        }

        final int size = mState.stack.size();
        int size = mState.stack.size();

        // Do some "do what a I want" drawer fiddling, but don't
        // do it if user already hit back recently and we recently
        // did some fiddling.
        if ((System.currentTimeMillis() - mDrawerLastFiddled) > DRAWER_NO_FIDDLE_DELAY) {
            // Close drawer if it is open.
            if (mDrawer.isOpen()) {
                mDrawer.setOpen(false);
        } else if (size > 1) {
                mDrawerLastFiddled = System.currentTimeMillis();
                return;
            }

            // Open the Close drawer if it is closed and we're at the top of a root.
            if (size == 1) {
                mDrawer.setOpen(true);
                // Remember so we don't just close it again if back is pressed again.
                mDrawerLastFiddled = System.currentTimeMillis();
                return;
            }
        }

        if (size > 1) {
            mState.stack.pop();
            refreshCurrentRootAndDirectory(ANIM_LEAVE);
        } else {
            super.onBackPressed();
            return;
        }

        super.onBackPressed();
    }

    public void onStackPicked(DocumentStack stack) {
+0 −8
Original line number Diff line number Diff line
@@ -220,14 +220,6 @@ public class DocumentsActivity extends BaseActivity {
        return title;
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        boolean showMenu = super.onCreateOptionsMenu(menu);

        expandMenus(menu);
        return showMenu;
    }

    @Override
    public boolean onPrepareOptionsMenu(Menu menu) {
        super.onPrepareOptionsMenu(menu);
+0 −2
Original line number Diff line number Diff line
@@ -100,14 +100,12 @@ public class DownloadsActivity extends BaseActivity {

        final MenuItem advanced = menu.findItem(R.id.menu_advanced);
        final MenuItem createDir = menu.findItem(R.id.menu_create_dir);
        final MenuItem newWindow = menu.findItem(R.id.menu_new_window);
        final MenuItem pasteFromCb = menu.findItem(R.id.menu_paste_from_clipboard);
        final MenuItem fileSize = menu.findItem(R.id.menu_file_size);

        advanced.setVisible(false);
        createDir.setVisible(false);
        pasteFromCb.setEnabled(false);
        newWindow.setEnabled(false);
        fileSize.setVisible(false);

        Menus.disableHiddenItems(menu);
+2 −12
Original line number Diff line number Diff line
@@ -184,14 +184,6 @@ public class FilesActivity extends BaseActivity {
        return getResources().getString(R.string.files_label);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        boolean showMenu = super.onCreateOptionsMenu(menu);

        expandMenus(menu);
        return showMenu;
    }

    @Override
    public boolean onPrepareOptionsMenu(Menu menu) {
        super.onPrepareOptionsMenu(menu);
@@ -201,15 +193,13 @@ public class FilesActivity extends BaseActivity {
        final MenuItem createDir = menu.findItem(R.id.menu_create_dir);
        final MenuItem pasteFromCb = menu.findItem(R.id.menu_paste_from_clipboard);
        final MenuItem settings = menu.findItem(R.id.menu_settings);
        final MenuItem newWindow = menu.findItem(R.id.menu_new_window);

        createDir.setVisible(true);
        createDir.setEnabled(canCreateDirectory());
        pasteFromCb.setEnabled(mClipper.hasItemsToPaste());
        settings.setVisible(root.hasSettings());

        // TODO: For some reason settings menu item is not
        // honoring the "showAsAction=never" setting in activity.xml.
        settings.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
        newWindow.setVisible(true);

        Menus.disableHiddenItems(menu, pasteFromCb);
        return true;