diff --git a/app/src/main/java/eu/faircode/email/AdapterMessage.java b/app/src/main/java/eu/faircode/email/AdapterMessage.java index 26c834c05f..3a146984cf 100644 --- a/app/src/main/java/eu/faircode/email/AdapterMessage.java +++ b/app/src/main/java/eu/faircode/email/AdapterMessage.java @@ -1626,19 +1626,25 @@ public class AdapterMessage extends RecyclerView.Adapter 0); - int color = (shadow - ? ColorUtils.setAlphaComponent(shadow_highlight ? colorUnreadHighlight : colorAccent, 127) - : Color.TRANSPARENT); - if (!Objects.equals(itemView.getTag(), shadow)) { - itemView.setTag(shadow); + if (cards) { + boolean unseen = (shadow_unread && message.unseen > 0); + boolean selected = properties.getValue("selected", message.id); + int color; + if (unseen) + color = ColorUtils.setAlphaComponent(shadow_highlight ? colorUnreadHighlight : colorAccent, 127); + else if (selected) + color = ColorUtils.setAlphaComponent(colorSeparator, 127); + else + color = Color.TRANSPARENT; + + if (!Objects.equals(itemView.getTag(), color)) { + itemView.setTag(color); itemView.setBackgroundColor(color); ViewGroup.MarginLayoutParams lparam = (ViewGroup.MarginLayoutParams) itemView.getLayoutParams(); - lparam.topMargin = (shadow ? dp1 : 0); - lparam.bottomMargin = (shadow ? dp1 : 0); + lparam.topMargin = (unseen || selected ? dp1 : 0); + lparam.bottomMargin = (unseen || selected ? dp1 : 0); itemView.setLayoutParams(lparam); } }