From 638b7c8288b5b4a34d5f83ef09c427cdc692ef6c Mon Sep 17 00:00:00 2001 From: Andy Scherzinger Date: Thu, 23 Sep 2021 17:17:54 +0200 Subject: [PATCH] also account for unread 1on1 messages for unreadMessages bubbleClicked Fixes #1599 Signed-off-by: Andy Scherzinger --- .../talk/controllers/ConversationsListController.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/controllers/ConversationsListController.java b/app/src/main/java/com/nextcloud/talk/controllers/ConversationsListController.java index 6783ca40e..b6893539f 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/ConversationsListController.java +++ b/app/src/main/java/com/nextcloud/talk/controllers/ConversationsListController.java @@ -626,20 +626,23 @@ public class ConversationsListController extends BaseController implements Searc } private void checkToShowUnreadBubble() { - try{ + try { int lastVisibleItem = layoutManager.findLastCompletelyVisibleItemPosition(); for (AbstractFlexibleItem flexItem : callItems) { Conversation conversationItem = ((ConversationItem) flexItem).getModel(); int position = adapter.getGlobalPositionOf(flexItem); - if (conversationItem.unreadMention && position > lastVisibleItem) { - if (!newMentionPopupBubble.isShown()){ + if ((conversationItem.unreadMention || + (conversationItem.unreadMessages > 0 && + conversationItem.type == Conversation.ConversationType.ROOM_TYPE_ONE_TO_ONE_CALL)) && + position > lastVisibleItem) { + if (!newMentionPopupBubble.isShown()) { newMentionPopupBubble.show(); } return; } } 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 " + "user already left the conversations-list screen so the popup bubble is not available anymore.", e); }