diff options
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/de/pixart/messenger/entities/ReadByMarker.java | 6 | ||||
-rw-r--r-- | src/main/java/de/pixart/messenger/ui/ConversationFragment.java | 2 | ||||
-rw-r--r-- | src/main/res/values/strings.xml | 1 |
3 files changed, 9 insertions, 0 deletions
diff --git a/src/main/java/de/pixart/messenger/entities/ReadByMarker.java b/src/main/java/de/pixart/messenger/entities/ReadByMarker.java index ec2d1aa73..86057c680 100644 --- a/src/main/java/de/pixart/messenger/entities/ReadByMarker.java +++ b/src/main/java/de/pixart/messenger/entities/ReadByMarker.java @@ -162,4 +162,10 @@ public class ReadByMarker { return true; } + public static boolean allUsersRepresented(Collection<MucOptions.User> users, Set<ReadByMarker> markers, ReadByMarker marker) { + HashSet<ReadByMarker> markersCopy = new HashSet<>(markers); + markersCopy.add(marker); + return allUsersRepresented(users, markersCopy); + } + } diff --git a/src/main/java/de/pixart/messenger/ui/ConversationFragment.java b/src/main/java/de/pixart/messenger/ui/ConversationFragment.java index 2458e4967..50ee10bf9 100644 --- a/src/main/java/de/pixart/messenger/ui/ConversationFragment.java +++ b/src/main/java/de/pixart/messenger/ui/ConversationFragment.java @@ -2522,6 +2522,8 @@ public class ConversationFragment extends XmppFragment implements EditMessage.Ke final String body; if (size <= 4) { body = getString(R.string.contacts_have_read_up_to_this_point, UIHelper.concatNames(shownMarkers)); + } else if (ReadByMarker.allUsersRepresented(allUsers, markersForMessage, markerForSender)) { + body = getString(R.string.everyone_has_read_up_to_this_point); } else { body = getString(R.string.contacts_and_n_more_have_read_up_to_this_point, UIHelper.concatNames(shownMarkers, 3), size - 3); } diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index 3489ac982..95f23cf2a 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -801,4 +801,5 @@ <string name="group_chat_name">Name</string> <string name="providing_a_name_is_optional">Providing a name is optional</string> <string name="create_dialog_group_chat_name">Group chat name</string> + <string name="everyone_has_read_up_to_this_point">Everyone has read up to this point</string> </resources> |