Use highlight unread color in navigation menu

This commit is contained in:
M66B
2019-09-08 19:17:11 +02:00
parent 3e0a494d61
commit 3a7ff9cda1
4 changed files with 44 additions and 12 deletions

View File

@@ -20,6 +20,7 @@ package eu.faircode.email;
*/
import android.content.Context;
import android.content.SharedPreferences;
import android.graphics.Typeface;
import android.view.LayoutInflater;
import android.view.View;
@@ -29,6 +30,7 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.lifecycle.LifecycleOwner;
import androidx.preference.PreferenceManager;
import androidx.recyclerview.widget.DiffUtil;
import androidx.recyclerview.widget.ListUpdateCallback;
import androidx.recyclerview.widget.RecyclerView;
@@ -43,6 +45,9 @@ public class AdapterNavMenu extends RecyclerView.Adapter<AdapterNavMenu.ViewHold
private LifecycleOwner owner;
private LayoutInflater inflater;
private int colorUnread;
private int textColorSecondary;
private List<NavMenuItem> items = new ArrayList<>();
private NumberFormat NF = NumberFormat.getNumberInstance();
@@ -85,8 +90,7 @@ public class AdapterNavMenu extends RecyclerView.Adapter<AdapterNavMenu.ViewHold
tvItem.setText(context.getString(R.string.title_name_count,
context.getString(menu.getTitle()), NF.format(menu.getCount())));
tvItem.setTextColor(Helper.resolveColor(context,
menu.getCount() == null ? android.R.attr.textColorSecondary : android.R.attr.textColorPrimary));
tvItem.setTextColor(menu.getCount() == null ? textColorSecondary : colorUnread);
tvItem.setTypeface(menu.getCount() == null ? Typeface.DEFAULT : Typeface.DEFAULT_BOLD);
tvItemExtra.setVisibility(View.GONE);
@@ -120,6 +124,12 @@ public class AdapterNavMenu extends RecyclerView.Adapter<AdapterNavMenu.ViewHold
this.context = context;
this.owner = owner;
this.inflater = LayoutInflater.from(context);
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
boolean highlight_unread = prefs.getBoolean("highlight_unread", false);
this.colorUnread = Helper.resolveColor(context, highlight_unread ? R.attr.colorUnread : android.R.attr.textColorPrimary);
this.textColorSecondary = Helper.resolveColor(context, android.R.attr.textColorSecondary);
setHasStableIds(true);
}