feat: show unread message count on chat tabs

Each non-General chat tab now shows an unread count in parentheses
(e.g. "Whispers (3)") when messages arrive while that tab is inactive.
The counter clears when the tab is selected. The General tab is excluded
since it shows all messages anyway.
This commit is contained in:
Kelsi 2026-03-12 11:23:01 -07:00
parent db1f111054
commit f3e399e0ff
2 changed files with 39 additions and 2 deletions

View file

@ -70,6 +70,8 @@ private:
uint64_t typeMask; // bitmask of ChatType values to show (64-bit: types go up to 84)
};
std::vector<ChatTab> chatTabs_;
std::vector<int> chatTabUnread_; // unread message count per tab (0 = none)
size_t chatTabSeenCount_ = 0; // how many history messages have been processed
void initChatTabs();
bool shouldShowMessage(const game::MessageChatData& msg, int tabIndex) const;