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

Commit edef1e16 authored by cketti's avatar cketti
Browse files

Code cleanup and variable/field renaming

parent 02b253b0
Loading
Loading
Loading
Loading
+8 −20
Original line number Diff line number Diff line
package com.fsck.k9.activity;


import java.util.ArrayList;
import java.util.Collection;
import java.util.List;

@@ -19,7 +18,6 @@ import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentManager.OnBackStackChangedListener;
@@ -27,7 +25,6 @@ import android.support.v4.app.FragmentTransaction;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBarDrawerToggle;
import android.util.TypedValue;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.Menu;
@@ -46,13 +43,12 @@ import com.fsck.k9.DI;
import com.fsck.k9.K9;
import com.fsck.k9.K9.SplitViewMode;
import com.fsck.k9.Preferences;
import com.fsck.k9.controller.MessageReference;
import com.fsck.k9.helper.Contacts;
import com.fsck.k9.ui.R;
import com.fsck.k9.activity.compose.MessageActions;
import com.fsck.k9.activity.misc.SwipeGestureDetector.OnSwipeGestureListener;
import com.fsck.k9.controller.MessageReference;
import com.fsck.k9.fragment.MessageListFragment;
import com.fsck.k9.fragment.MessageListFragment.MessageListFragmentListener;
import com.fsck.k9.helper.Contacts;
import com.fsck.k9.helper.ParcelableUtil;
import com.fsck.k9.mailstore.Folder;
import com.fsck.k9.mailstore.SearchStatusManager;
@@ -65,6 +61,7 @@ import com.fsck.k9.search.SearchSpecification.Attribute;
import com.fsck.k9.search.SearchSpecification.SearchCondition;
import com.fsck.k9.search.SearchSpecification.SearchField;
import com.fsck.k9.ui.K9Drawer;
import com.fsck.k9.ui.R;
import com.fsck.k9.ui.messagelist.MessageListViewModel;
import com.fsck.k9.ui.messagelist.MessageListViewModelFactory;
import com.fsck.k9.ui.messageview.MessageViewFragment;
@@ -178,15 +175,6 @@ public class MessageList extends K9Activity implements MessageListFragmentListen
    private TextView actionBarSubTitle;
    private Menu menu;

    private int iconFolderInboxResId;
    private int iconFolderOutbotResId;
    private int iconFolderSentResId;
    private int iconFolderTrashResId;
    private int iconFolderDraftsResId;
    private int iconFolderArchiveResId;
    private int iconFolderSpamResId;
    private int iconFolderResId;

    private ViewGroup messageViewContainer;
    private View messageViewPlaceHolder;

@@ -490,9 +478,9 @@ public class MessageList extends K9Activity implements MessageListFragmentListen
        if (messageReference != null) {
            search = new LocalSearch();
            search.addAccountUuid(messageReference.getAccountUuid());
            String folderId = messageReference.getFolderServerId();
            search.addAllowedFolder(folderId);
            drawer.selectFolderId(folderId);
            String folderServerId = messageReference.getFolderServerId();
            search.addAllowedFolder(folderServerId);
            drawer.selectFolder(folderServerId);
        }

        if (search == null) {
@@ -1711,9 +1699,9 @@ public class MessageList extends K9Activity implements MessageListFragmentListen
        List<String> folderServerIds = search.getFolderServerIds();
        singleFolderMode = singleAccountMode && folderServerIds.size() == 1;
        if (singleFolderMode) {
            drawer.selectFolderId(folderServerIds.get(0));
            drawer.selectFolder(folderServerIds.get(0));
        } else {
            drawer.selectFolderId(null);
            drawer.selectFolder(null);
        }

        // now we know if we are in single account mode and need a subtitle
+46 −49
Original line number Diff line number Diff line
package com.fsck.k9.ui;


import java.util.ArrayList;
import java.util.List;
import java.util.Collections;
import java.util.List;

import android.os.Bundle;
import android.support.annotation.Nullable;
@@ -12,15 +13,13 @@ import android.view.View;

import com.fsck.k9.DI;
import com.fsck.k9.K9;
import com.fsck.k9.ui.R;
import com.fsck.k9.activity.MessageList;
import com.fsck.k9.mailstore.Folder;
import com.fsck.k9.ui.folders.FolderNameFormatter;
import com.fsck.k9.activity.MessageList;
import com.fsck.k9.ui.settings.SettingsActivity;

import com.mikepenz.materialdrawer.Drawer;
import com.mikepenz.materialdrawer.Drawer.OnDrawerItemClickListener;
import com.mikepenz.materialdrawer.DrawerBuilder;
import com.mikepenz.materialdrawer.model.BaseDrawerItem;
import com.mikepenz.materialdrawer.model.DividerDrawerItem;
import com.mikepenz.materialdrawer.model.PrimaryDrawerItem;
import com.mikepenz.materialdrawer.model.interfaces.IDrawerItem;
@@ -29,15 +28,18 @@ public class K9Drawer {
    // Bit shift for identifiers of user folders items, to leave space for other items
    private static final short DRAWER_FOLDER_SHIFT = 2;

    // Identifiers of static drawer items
    private static final long DRAWER_ID_UNIFIED_INBOX = 0;
    private static final long DRAWER_ID_PREFERENCES = 1;

    private int headerCount = 0;

    // Resources
    private final FolderNameFormatter folderNameFormatter = DI.get(FolderNameFormatter.class);

    private final Drawer drawer;
    private final MessageList parent;
    private int headerItemCount = 0;

    private int iconFolderInboxResId;
    private int iconFolderOutbotResId;
    private int iconFolderOutboxResId;
    private int iconFolderSentResId;
    private int iconFolderTrashResId;
    private int iconFolderDraftsResId;
@@ -45,13 +47,9 @@ public class K9Drawer {
    private int iconFolderSpamResId;
    private int iconFolderResId;

    private final List<Long> userFolderIds = new ArrayList<>();
    private final List<Long> userFolderDrawerIds = new ArrayList<>();
    private String openedFolderServerId;

    private final FolderNameFormatter folderNameFormatter = DI.get(FolderNameFormatter.class);

    private com.mikepenz.materialdrawer.Drawer drawer;
    private MessageList parent;
    private String openedFolder;

    public K9Drawer(MessageList parent, Bundle savedInstanceState) {
        this.parent = parent;
@@ -67,7 +65,13 @@ public class K9Drawer {
                .withSavedInstance(savedInstanceState)
                .build();

        // header
        addHeaderItems();
        addFooterItems();

        initializeFolderIcons();
    }

    private void addHeaderItems() {
        if (!K9.isHideSpecialAccounts()) {
            drawer.addItems(new PrimaryDrawerItem()
                            .withName(R.string.integrated_inbox_title)
@@ -75,23 +79,22 @@ public class K9Drawer {
                            .withIdentifier(DRAWER_ID_UNIFIED_INBOX),
                    new DividerDrawerItem());

            headerCount += 2;
            headerItemCount += 2;
        }
    }

        // footer
    private void addFooterItems() {
        drawer.addItems(new DividerDrawerItem(),
                new PrimaryDrawerItem()
                .withName(R.string.preferences_action)
                .withIcon(getResId(R.attr.iconActionSettings))
                .withIdentifier(DRAWER_ID_PREFERENCES)
                .withSelectable(false));

        initializeFolderIcons();
    }

    private void initializeFolderIcons() {
        iconFolderInboxResId = getResId(R.attr.iconFolderInbox);
        iconFolderOutbotResId = getResId(R.attr.iconFolderOutbox);
        iconFolderOutboxResId = getResId(R.attr.iconFolderOutbox);
        iconFolderSentResId = getResId(R.attr.iconFolderSent);
        iconFolderTrashResId = getResId(R.attr.iconFolderTrash);
        iconFolderDraftsResId = getResId(R.attr.iconFolderDrafts);
@@ -112,7 +115,7 @@ public class K9Drawer {
    private int getFolderIcon(Folder folder) {
        switch (folder.getType()) {
            case INBOX: return iconFolderInboxResId;
            case OUTBOX: return iconFolderOutbotResId;
            case OUTBOX: return iconFolderOutboxResId;
            case SENT: return iconFolderSentResId;
            case TRASH: return iconFolderTrashResId;
            case DRAFTS: return iconFolderDraftsResId;
@@ -146,12 +149,6 @@ public class K9Drawer {
        };
    }

    /**
     * Set the user folders to display in the drawer
     *
     * @param folders
     *         Folder objects to use
     */
    public void setUserFolders(@Nullable List<Folder> folders) {
        clearUserFolders();

@@ -161,41 +158,41 @@ public class K9Drawer {

        Collections.reverse(folders);

        long openedFolderId = -1;
        long openedFolderDrawerId = -1;
        for (Folder folder : folders) {
            long id = folder.getId() << DRAWER_FOLDER_SHIFT;
            long drawerId = folder.getId() << DRAWER_FOLDER_SHIFT;
            drawer.addItemAtPosition(new PrimaryDrawerItem()
                    .withIcon(getFolderIcon(folder))
                    .withIdentifier(id)
                    .withIdentifier(drawerId)
                    .withTag(folder)
                    .withName(getFolderDisplayName(folder)),
                    headerCount);
                    headerItemCount);

            userFolderIds.add(id);
            userFolderDrawerIds.add(drawerId);

            if (folder.getServerId().equals(openedFolder)) {
                openedFolderId = id;
            if (folder.getServerId().equals(openedFolderServerId)) {
                openedFolderDrawerId = drawerId;
            }
        }

        if (openedFolderId != -1) {
            drawer.setSelection(openedFolderId, false);
        if (openedFolderDrawerId != -1) {
            drawer.setSelection(openedFolderDrawerId, false);
        }
    }

    private void clearUserFolders() {
        for (long id : userFolderIds) {
            drawer.removeItem(id);
        for (long drawerId : userFolderDrawerIds) {
            drawer.removeItem(drawerId);
        }
        userFolderIds.clear();
        userFolderDrawerIds.clear();
    }

    public void selectFolderId(String folderId) {
        openedFolder = folderId;
        for (long id : userFolderIds) {
            Folder folder = (Folder) drawer.getDrawerItem(id).getTag();
            if (folder.getServerId().equals(folderId)) {
                drawer.setSelection(id, false);
    public void selectFolder(String folderServerId) {
        openedFolderServerId = folderServerId;
        for (long drawerId : userFolderDrawerIds) {
            Folder folder = (Folder) drawer.getDrawerItem(drawerId).getTag();
            if (folder.getServerId().equals(folderServerId)) {
                drawer.setSelection(drawerId, false);
                return;
            }
        }