summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLyubo <lyubodzhamov@gmail.com>2019-06-08 18:01:26 -0400
committerLyubo <lyubodzhamov@gmail.com>2019-06-08 18:01:31 -0400
commit2066829b726464ad370146182b372e976870bbc9 (patch)
treefadff97a3dbddef42bffbceadda621856550444e
parentb11dabf7da020cab6a02045751bef6908ddf6701 (diff)
downloadpackages_apps_Messaging-2066829b726464ad370146182b372e976870bbc9.tar.gz
packages_apps_Messaging-2066829b726464ad370146182b372e976870bbc9.tar.bz2
packages_apps_Messaging-2066829b726464ad370146182b372e976870bbc9.zip
Messaging: Handle multiple participants in custom notifications
* Fixes: https://gitlab.com/LineageOS/issues/android/issues/695 * Sets the conversation title in 'conversation notifications settings' as a string of comma separated participants names Change-Id: If900fc4c84de0ac036ecf6b0c346bd9eaccb0916
-rw-r--r--src/com/android/messaging/ui/conversationsettings/PeopleAndOptionsFragment.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/com/android/messaging/ui/conversationsettings/PeopleAndOptionsFragment.java b/src/com/android/messaging/ui/conversationsettings/PeopleAndOptionsFragment.java
index 56ff4b0..147a673 100644
--- a/src/com/android/messaging/ui/conversationsettings/PeopleAndOptionsFragment.java
+++ b/src/com/android/messaging/ui/conversationsettings/PeopleAndOptionsFragment.java
@@ -64,6 +64,7 @@ public class PeopleAndOptionsFragment extends Fragment
private ListView mListView;
private OptionsListAdapter mOptionsListAdapter;
private PeopleListAdapter mPeopleListAdapter;
+ private List<ParticipantData> mOtherParticipants;
private final Binding<PeopleAndOptionsData> mBinding =
BindingBase.createBinding(this);
@@ -114,6 +115,7 @@ public class PeopleAndOptionsFragment extends Fragment
final List<ParticipantData> participants) {
mBinding.ensureBound(data);
mPeopleListAdapter.updateParticipants(participants);
+ mOtherParticipants = participants;
final ParticipantData otherParticipant = participants.size() == 1 ?
participants.get(0) : null;
mOptionsListAdapter.setOtherParticipant(otherParticipant);
@@ -123,12 +125,16 @@ public class PeopleAndOptionsFragment extends Fragment
public void onOptionsItemViewClicked(final PeopleOptionsItemData item) {
switch (item.getItemId()) {
case PeopleOptionsItemData.SETTING_NOTIFICATION:
+ ArrayList<String> participantsNames = new ArrayList<String>();
+ for (ParticipantData participant : mOtherParticipants) {
+ participantsNames.add(participant.getDisplayName(true));
+ }
NotifUtils.createNotificationChannelGroup(getActivity(),
NotifUtils.CONVERSATION_GROUP_NAME,
R.string.notification_channel_messages_title);
NotifUtils.createNotificationChannel(getActivity(),
mBinding.getData().getConversationId(),
- item.getOtherParticipant().getDisplayName(true),
+ String.join(", ", participantsNames),
NotificationManager.IMPORTANCE_DEFAULT,
NotifUtils.CONVERSATION_GROUP_NAME);
Intent intent = new Intent(Settings.ACTION_APP_NOTIFICATION_SETTINGS);