diff --git a/res/values/conversation_colors.xml b/res/values/conversation_colors.xml index 9f9e08fb6e..57d250ebb8 100644 --- a/res/values/conversation_colors.xml +++ b/res/values/conversation_colors.xml @@ -47,4 +47,8 @@ #6b6b78 #bebec6 #5a5a63 + + @color/textsecure_primary + @color/textsecure_primary + @color/textsecure_primary_dark \ No newline at end of file diff --git a/src/org/thoughtcrime/securesms/RecipientPreferenceActivity.java b/src/org/thoughtcrime/securesms/RecipientPreferenceActivity.java index 1e74347833..f5b50ce0f9 100644 --- a/src/org/thoughtcrime/securesms/RecipientPreferenceActivity.java +++ b/src/org/thoughtcrime/securesms/RecipientPreferenceActivity.java @@ -54,7 +54,6 @@ import org.thoughtcrime.securesms.database.RecipientDatabase.VibrateState; import org.thoughtcrime.securesms.database.loaders.ThreadMediaLoader; import org.thoughtcrime.securesms.jobs.MultiDeviceBlockedUpdateJob; import org.thoughtcrime.securesms.jobs.MultiDeviceContactUpdateJob; -import org.thoughtcrime.securesms.jobs.MultiDeviceGroupUpdateJob; import org.thoughtcrime.securesms.mms.GlideApp; import org.thoughtcrime.securesms.mms.GlideRequests; import org.thoughtcrime.securesms.mms.OutgoingGroupMediaMessage; @@ -381,14 +380,15 @@ public class RecipientPreferenceActivity extends PassphraseRequiredActionBarActi vibrateCallPreference.setSummary(vibrateCallSummary.first); vibrateCallPreference.setValueIndex(vibrateCallSummary.second); - colorPreference.setColors(MaterialColors.CONVERSATION_PALETTE.asConversationColorArray(getActivity())); - colorPreference.setColor(recipient.getColor().toActionBarColor(getActivity())); - if (recipient.isGroupRecipient()) { + if (colorPreference != null) colorPreference.setVisible(false); if (identityPreference != null) identityPreference.setVisible(false); if (aboutCategory != null) getPreferenceScreen().removePreference(aboutCategory); if (aboutDivider != null) getPreferenceScreen().removePreference(aboutDivider); } else { + colorPreference.setColors(MaterialColors.CONVERSATION_PALETTE.asConversationColorArray(getActivity())); + colorPreference.setColor(recipient.getColor().toActionBarColor(getActivity())); + aboutPreference.setTitle(formatAddress(recipient.getAddress())); aboutPreference.setSummary(recipient.getCustomLabel()); aboutPreference.setSecure(recipient.getRegistered() == RecipientDatabase.RegisteredState.REGISTERED); @@ -583,11 +583,7 @@ public class RecipientPreferenceActivity extends PassphraseRequiredActionBarActi protected Void doInBackground(Void... params) { DatabaseFactory.getRecipientDatabase(context).setColor(recipient, selectedColor); - if (recipient.resolve().isGroupRecipient()) { - ApplicationContext.getInstance(context) - .getJobManager() - .add(new MultiDeviceGroupUpdateJob(context)); - } else if (recipient.resolve().getRegistered() == RecipientDatabase.RegisteredState.REGISTERED) { + if (recipient.resolve().getRegistered() == RecipientDatabase.RegisteredState.REGISTERED) { ApplicationContext.getInstance(context) .getJobManager() .add(new MultiDeviceContactUpdateJob(context, recipient.getAddress())); diff --git a/src/org/thoughtcrime/securesms/color/MaterialColor.java b/src/org/thoughtcrime/securesms/color/MaterialColor.java index ea5047b646..a613ba5041 100644 --- a/src/org/thoughtcrime/securesms/color/MaterialColor.java +++ b/src/org/thoughtcrime/securesms/color/MaterialColor.java @@ -25,7 +25,8 @@ public enum MaterialColor { VIOLET (R.color.conversation_violet, R.color.conversation_violet_tint, R.color.conversation_violet_shade, "purple"), PLUM (R.color.conversation_plumb, R.color.conversation_plumb_tint, R.color.conversation_plumb_shade, "pink"), TAUPE (R.color.conversation_taupe, R.color.conversation_taupe_tint, R.color.conversation_taupe_shade, "blue_grey"), - STEEL (R.color.conversation_steel, R.color.conversation_steel_tint, R.color.conversation_steel_shade, "grey"); + STEEL (R.color.conversation_steel, R.color.conversation_steel_tint, R.color.conversation_steel_shade, "grey"), + GROUP (R.color.conversation_group, R.color.conversation_group_tint, R.color.conversation_group_shade, "blue"); private static final Map COLOR_MATCHES = new HashMap() {{ put("red", CRIMSON); @@ -47,7 +48,7 @@ public enum MaterialColor { put("lime", WINTERGREEN); put("blue_grey", TAUPE); put("grey", STEEL); - put("group_color", BLUE); + put("group_color", GROUP); }}; private final @ColorRes int mainColor; diff --git a/src/org/thoughtcrime/securesms/recipients/Recipient.java b/src/org/thoughtcrime/securesms/recipients/Recipient.java index 4eeeb7acaa..b9c980aa9d 100644 --- a/src/org/thoughtcrime/securesms/recipients/Recipient.java +++ b/src/org/thoughtcrime/securesms/recipients/Recipient.java @@ -292,7 +292,8 @@ public class Recipient implements RecipientModifiedListener { } public synchronized @NonNull MaterialColor getColor() { - if (color != null) return color; + if (isGroupRecipient()) return MaterialColor.GROUP; + else if (color != null) return color; else if (name != null) return ContactColors.generateFor(name); else return ContactColors.UNKNOWN_COLOR; }