diff --git a/app/src/main/java/i2p/bote/android/EmailListActivity.java b/app/src/main/java/i2p/bote/android/EmailListActivity.java index a9afa97..5202df1 100644 --- a/app/src/main/java/i2p/bote/android/EmailListActivity.java +++ b/app/src/main/java/i2p/bote/android/EmailListActivity.java @@ -63,7 +63,6 @@ public class EmailListActivity extends ActionBarActivity implements private DrawerLayout mDrawerLayout; private RelativeLayout mDrawerOuter; private FolderListAdapter mFolderAdapter; - private String mCurFolder; private ImageView mNetworkStatusIcon; private TextView mNetworkStatusText; private ActionBarDrawerToggle mDrawerToggle; @@ -161,10 +160,8 @@ public class EmailListActivity extends ActionBarActivity implements EmailListFragment f = EmailListFragment.newInstance("inbox"); getSupportFragmentManager().beginTransaction() .add(R.id.list_fragment, f).commit(); - //mFolderList.setItemChecked(0, true); - mCurFolder = ""; } else { - mCurFolder = savedInstanceState.getString(ACTIVE_FOLDER); + mFolderAdapter.setSelected(savedInstanceState.getInt(ACTIVE_FOLDER)); } // Set up fixed actions @@ -222,7 +219,7 @@ public class EmailListActivity extends ActionBarActivity implements @Override public void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); - outState.putString(ACTIVE_FOLDER, mCurFolder); + outState.putInt(ACTIVE_FOLDER, mFolderAdapter.getSelected()); } @Override @@ -361,17 +358,14 @@ public class EmailListActivity extends ActionBarActivity implements // FolderListAdapter.OnFolderSelectedListener - public void onDrawerFolderSelected(EmailFolder folder) { - if (!folder.getName().equals(mCurFolder)) { + public void onDrawerFolderSelected(EmailFolder folder, boolean alreadySelected) { + if (!alreadySelected) { // Create the new fragment EmailListFragment f = EmailListFragment.newInstance(folder.getName()); // Insert the fragment getSupportFragmentManager().beginTransaction() .replace(R.id.list_fragment, f).commit(); - - // Save the current position - mCurFolder = folder.getName(); } // Close the drawer mDrawerLayout.closeDrawer(mDrawerOuter); diff --git a/app/src/main/java/i2p/bote/android/FolderListAdapter.java b/app/src/main/java/i2p/bote/android/FolderListAdapter.java index 7425980..5d25654 100644 --- a/app/src/main/java/i2p/bote/android/FolderListAdapter.java +++ b/app/src/main/java/i2p/bote/android/FolderListAdapter.java @@ -1,6 +1,8 @@ package i2p.bote.android; import android.content.Context; +import android.content.res.ColorStateList; +import android.os.Build; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; @@ -18,6 +20,7 @@ import i2p.bote.folder.FolderListener; public class FolderListAdapter extends RecyclerView.Adapter { private Context mCtx; private List mFolders; + private int mSelectedFolder; private OnFolderSelectedListener mListener; // Provide a reference to the views for each data item @@ -35,11 +38,20 @@ public class FolderListAdapter extends RecyclerView.Adapter= Build.VERSION_CODES.LOLLIPOP) + holder.mIcon.setImageTintList(position == mSelectedFolder ? + new ColorStateList(new int[][]{{}}, + new int[]{mCtx.getResources().getColor(R.color.accent_dark)}) : null); } // Return the size of the dataset (invoked by the layout manager) diff --git a/app/src/main/res/drawable/folder_activated_background.xml b/app/src/main/res/drawable/folder_activated_background.xml index fefe6b2..20d9a9e 100644 --- a/app/src/main/res/drawable/folder_activated_background.xml +++ b/app/src/main/res/drawable/folder_activated_background.xml @@ -1,8 +1,8 @@ - - - - + + + + diff --git a/app/src/main/res/drawable/listitem_checked.xml b/app/src/main/res/drawable/listitem_checked.xml index 18b16eb..ad4b7af 100644 --- a/app/src/main/res/drawable/listitem_checked.xml +++ b/app/src/main/res/drawable/listitem_checked.xml @@ -1,7 +1,7 @@ - - + + \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index fabce6f..d5d34b7 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -6,10 +6,8 @@ #ffab40 #ff9100 - - #9033B5E5 + #e0e0e0 #c31756 - #111 #f00 #4caf50 diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index fe9c102..c248ab6 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -29,6 +29,12 @@ @dimen/text_size_primary + +