also account for unread 1on1 messages for unreadMessages bubbleClicked

Fixes #1599

Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
This commit is contained in:
Andy Scherzinger 2021-09-23 17:17:54 +02:00
parent 1342bd5df3
commit 638b7c8288
No known key found for this signature in database
GPG key ID: 6CADC7E3523C308B

View file

@ -626,20 +626,23 @@ public class ConversationsListController extends BaseController implements Searc
} }
private void checkToShowUnreadBubble() { private void checkToShowUnreadBubble() {
try{ try {
int lastVisibleItem = layoutManager.findLastCompletelyVisibleItemPosition(); int lastVisibleItem = layoutManager.findLastCompletelyVisibleItemPosition();
for (AbstractFlexibleItem flexItem : callItems) { for (AbstractFlexibleItem flexItem : callItems) {
Conversation conversationItem = ((ConversationItem) flexItem).getModel(); Conversation conversationItem = ((ConversationItem) flexItem).getModel();
int position = adapter.getGlobalPositionOf(flexItem); int position = adapter.getGlobalPositionOf(flexItem);
if (conversationItem.unreadMention && position > lastVisibleItem) { if ((conversationItem.unreadMention ||
if (!newMentionPopupBubble.isShown()){ (conversationItem.unreadMessages > 0 &&
conversationItem.type == Conversation.ConversationType.ROOM_TYPE_ONE_TO_ONE_CALL)) &&
position > lastVisibleItem) {
if (!newMentionPopupBubble.isShown()) {
newMentionPopupBubble.show(); newMentionPopupBubble.show();
} }
return; return;
} }
} }
newMentionPopupBubble.hide(); newMentionPopupBubble.hide();
} catch (NullPointerException e){ } catch (NullPointerException e) {
Log.d(TAG, "A NPE was caught when trying to show the unread popup bubble. This might happen when the " + Log.d(TAG, "A NPE was caught when trying to show the unread popup bubble. This might happen when the " +
"user already left the conversations-list screen so the popup bubble is not available anymore.", e); "user already left the conversations-list screen so the popup bubble is not available anymore.", e);
} }