From 699ffc8b50e16b9963fcf7bc0d6bbb2046496f38 Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Tue, 7 Oct 2025 13:44:28 +0300 Subject: [PATCH] Returned unreadBadge/Muted but keep unreadWithMentionsBadge/Muted. --- Telegram/SourceFiles/data/data_session.cpp | 8 ++++++++ Telegram/SourceFiles/data/data_session.h | 2 ++ Telegram/SourceFiles/main/main_domain.cpp | 4 ++-- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Telegram/SourceFiles/data/data_session.cpp b/Telegram/SourceFiles/data/data_session.cpp index 840b4a7e7a..c14a6ceece 100644 --- a/Telegram/SourceFiles/data/data_session.cpp +++ b/Telegram/SourceFiles/data/data_session.cpp @@ -3002,6 +3002,10 @@ HistoryItem *Session::addNewMessage( return result; } +int Session::unreadBadge() const { + return computeUnreadBadge(_chatsList.unreadState()); +} + int Session::unreadWithMentionsBadge() const { auto state = _chatsList.unreadState(); if (state.mentions) { @@ -3010,6 +3014,10 @@ int Session::unreadWithMentionsBadge() const { return computeUnreadBadge(state) + state.mentions; } +bool Session::unreadBadgeMuted() const { + return computeUnreadBadgeMuted(_chatsList.unreadState()); +} + bool Session::unreadWithMentionsBadgeMuted() const { const auto state = _chatsList.unreadState(); return !state.mentions && computeUnreadBadgeMuted(state); diff --git a/Telegram/SourceFiles/data/data_session.h b/Telegram/SourceFiles/data/data_session.h index c2207470f7..a8a0d882a0 100644 --- a/Telegram/SourceFiles/data/data_session.h +++ b/Telegram/SourceFiles/data/data_session.h @@ -579,7 +579,9 @@ public: MessageFlags localFlags, NewMessageType type); + [[nodiscard]] int unreadBadge() const; [[nodiscard]] int unreadWithMentionsBadge() const; + [[nodiscard]] bool unreadBadgeMuted() const; [[nodiscard]] bool unreadWithMentionsBadgeMuted() const; [[nodiscard]] int unreadBadgeIgnoreOne(Dialogs::Key key) const; [[nodiscard]] bool unreadBadgeMutedIgnoreOne(Dialogs::Key key) const; diff --git a/Telegram/SourceFiles/main/main_domain.cpp b/Telegram/SourceFiles/main/main_domain.cpp index 28d42de3eb..714f7e2919 100644 --- a/Telegram/SourceFiles/main/main_domain.cpp +++ b/Telegram/SourceFiles/main/main_domain.cpp @@ -247,8 +247,8 @@ void Domain::updateUnreadBadge() { for (const auto &[index, account] : _accounts) { if (const auto session = account->maybeSession()) { const auto data = &session->data(); - _unreadBadge += data->unreadWithMentionsBadge(); - if (!data->unreadWithMentionsBadgeMuted()) { + _unreadBadge += data->unreadBadge(); + if (!data->unreadBadgeMuted()) { _unreadBadgeMuted = false; } }