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

Commit c8b3656f authored by Stephen Bird's avatar Stephen Bird Committed by Gerrit Code Review
Browse files

NavigationFragment: Stop intending to have multiple navigation views

Apparently at one point the navigation
view was intended to be more. Multiple
navigation views just are not necessary.

Sthap.

Change-Id: I3fe975bb059bec0299a1622fff62a06ed6d6198c
parent dc80188e
Loading
Loading
Loading
Loading
+29 −70
Original line number Diff line number Diff line
@@ -415,14 +415,12 @@ public class NavigationFragment extends Fragment
    /**
     * @hide
     */
    NavigationView[] mNavigationViews;
    NavigationView mNavigationView;
    /**
     * @hide
     */
    private List<History> mHistory;

    private int mCurrentNavigationView;

    private ViewGroup mActionBar;
    private SelectionView mSelectionBar;

@@ -537,11 +535,7 @@ public class NavigationFragment extends Fragment
                // Initialize console
                initConsole();

                //Initialize navigation
                int cc = NavigationFragment.this.mNavigationViews.length;
                for (int i = 0; i < cc; i++) {
                    initNavigation(i, false, getActivity().getIntent());
                }
                initNavigation(false, getActivity().getIntent());
            }
        });

@@ -632,17 +626,17 @@ public class NavigationFragment extends Fragment
        }

        // Check that the current dir is mounted (for virtual filesystems)
        String curDir = mNavigationViews[mCurrentNavigationView].getCurrentDir();
        String curDir = mNavigationView.getCurrentDir();
        if (curDir != null) {
            VirtualMountPointConsole vc = VirtualMountPointConsole.getVirtualConsoleForPath(
                    mNavigationViews[mCurrentNavigationView].getCurrentDir());
                    mNavigationView.getCurrentDir());
            if (vc != null && !vc.isMounted()) {
                removeUnmountedHistory();
                removeUnmountedSelection();

                Intent intent = new Intent();
                intent.putExtra(EXTRA_ADD_TO_HISTORY, false);
                initNavigation(NavigationFragment.this.mCurrentNavigationView, false, intent);
                initNavigation(false, intent);
            }
            getCurrentNavigationView().refresh(true);
        }
@@ -714,18 +708,7 @@ public class NavigationFragment extends Fragment
     * @return NavigationView The current navigation view
     */
    public NavigationView getCurrentNavigationView() {
        return getNavigationView(this.mCurrentNavigationView);
    }

    /**
     * Method that returns the current navigation view.
     *
     * @param viewId The view to return
     * @return NavigationView The current navigation view
     */
    public NavigationView getNavigationView(int viewId) {
        if (this.mNavigationViews == null) return null;
        return this.mNavigationViews[viewId];
        return mNavigationView;
    }

    /**
@@ -897,34 +880,30 @@ public class NavigationFragment extends Fragment
     * Method that initializes the navigation views of the activity
     */
    private void initNavigationViews() {
        //Get the navigation views (wishlist: multiple view; for now only one view)
        this.mNavigationViews = new NavigationView[1];
        this.mCurrentNavigationView = 0;
        //- 0
        this.mNavigationViews[0] = (NavigationView) mView.findViewById(R.id.navigation_view);
        this.mNavigationViews[0].setId(0);
        this.mNavigationView = (NavigationView) mView.findViewById(R.id.navigation_view);
        this.mNavigationView.setId(0);
    }

    /**
     * Method that adds listeners for the navigation views of the activity
     */
    private void attachNavigationViewListeners() {
        this.mNavigationViews[0].setOnHistoryListener(this);
        this.mNavigationViews[0].setOnNavigationSelectionChangedListener(this);
        this.mNavigationViews[0].setOnNavigationOnRequestMenuListener(this);
        this.mNavigationViews[0].setOnDirectoryChangedListener(this);
        this.mNavigationViews[0].setOnBackRequestListener(mOnBackRequestListener);
        this.mNavigationView.setOnHistoryListener(this);
        this.mNavigationView.setOnNavigationSelectionChangedListener(this);
        this.mNavigationView.setOnNavigationOnRequestMenuListener(this);
        this.mNavigationView.setOnDirectoryChangedListener(this);
        this.mNavigationView.setOnBackRequestListener(mOnBackRequestListener);
    }

    /**
     * Method that removes listeners for the navigation views of the activity
     */
    private void removeNavigationViewListeners() {
        this.mNavigationViews[0].setOnHistoryListener(null);
        this.mNavigationViews[0].setOnNavigationSelectionChangedListener(null);
        this.mNavigationViews[0].setOnNavigationOnRequestMenuListener(null);
        this.mNavigationViews[0].setOnDirectoryChangedListener(null);
        this.mNavigationViews[0].setOnBackRequestListener(null);
        this.mNavigationView.setOnHistoryListener(null);
        this.mNavigationView.setOnNavigationSelectionChangedListener(null);
        this.mNavigationView.setOnNavigationOnRequestMenuListener(null);
        this.mNavigationView.setOnDirectoryChangedListener(null);
        this.mNavigationView.setOnBackRequestListener(null);
    }

    /**
@@ -967,14 +946,13 @@ public class NavigationFragment extends Fragment
     * @param intent The current intent
     * @hide
     */
    void initNavigation(final int viewId, final boolean restore, final Intent intent) {
        final NavigationView navigationView = getNavigationView(viewId);
    void initNavigation(final boolean restore, final Intent intent) {
        this.mHandler.post(new Runnable() {
            @Override
            public void run() {
                //Is necessary navigate?
                if (!restore) {
                    applyInitialDir(navigationView, intent);
                    applyInitialDir(mNavigationView, intent);
                }
            }
        });
@@ -1381,7 +1359,7 @@ public class NavigationFragment extends Fragment
                    // to a secure storage (do not add to history)
                    Intent intent = new Intent();
                    intent.putExtra(EXTRA_ADD_TO_HISTORY, false);
                    initNavigation(NavigationFragment.this.mCurrentNavigationView, false, intent);
                    initNavigation(false, intent);
                }
            }
        });
@@ -1483,10 +1461,9 @@ public class NavigationFragment extends Fragment
                NavigationViewInfoParcelable info =
                        (NavigationViewInfoParcelable)history.getItem();
                int viewId = info.getId();
                NavigationView view = getNavigationView(viewId);
                // Selected items must not be restored from on history navigation
                info.setSelectedFiles(view.getSelectedFiles());
                if (!view.onRestoreState(info)) {
                info.setSelectedFiles(mNavigationView.getSelectedFiles());
                if (!mNavigationView.onRestoreState(info)) {
                    return true;
                }

@@ -1712,16 +1689,8 @@ public class NavigationFragment extends Fragment
        if (this.mChRooted) return;
        this.mChRooted = true;

        int cc = this.mNavigationViews.length;
        for (int i = 0; i < cc; i++) {
            this.mNavigationViews[i].createChRooted();
        }

        // Remove the selection
        cc = this.mNavigationViews.length;
        for (int i = 0; i < cc; i++) {
            getCurrentNavigationView().onDeselectAll();
        }
        mNavigationView.createChRooted();
        mNavigationView.onDeselectAll();

        // Remove the history (don't allow to access to previous data)
        clearHistory();
@@ -1735,11 +1704,7 @@ public class NavigationFragment extends Fragment
        // If we aren't in a ChRooted mode, then do nothing
        if (!this.mChRooted) return;
        this.mChRooted = false;

        int cc = this.mNavigationViews.length;
        for (int i = 0; i < cc; i++) {
            this.mNavigationViews[i].exitChRooted();
        }
        mNavigationView.exitChRooted();
    }

    /**
@@ -1751,11 +1716,7 @@ public class NavigationFragment extends Fragment
    }

    private void recycle() {
        // Recycle the navigation views
        int cc = this.mNavigationViews.length;
        for (int i = 0; i < cc; i++) {
            this.mNavigationViews[i].recycle();
        }
        mNavigationView.recycle();
        try {
            FileManagerApplication.destroyBackgroundConsole();
        } catch (Throwable ex) {
@@ -1802,10 +1763,8 @@ public class NavigationFragment extends Fragment
     * Method that removes all the selection items that refers to virtual unmounted filesystems
     */
    private void removeUnmountedSelection() {
        for (NavigationView view : mNavigationViews) {
            view.removeUnmountedSelection();
        }
        mSelectionBar.setSelection(getNavigationView(mCurrentNavigationView).getSelectedFiles());
        mNavigationView.removeUnmountedSelection();
        mSelectionBar.setSelection(mNavigationView.getSelectedFiles());
    }

    /**