mirror of
https://github.com/celisej567/abaddon.git
synced 2026-09-19 20:11:59 +03:00
hide guild unread indicator for muted guilds
This commit is contained in:
@@ -1095,6 +1095,10 @@ void DiscordClient::SetUserAgent(std::string agent) {
|
||||
m_websocket.SetUserAgent(agent);
|
||||
}
|
||||
|
||||
bool DiscordClient::IsGuildMuted(Snowflake id) const noexcept {
|
||||
return m_muted_guilds.find(id) != m_muted_guilds.end();
|
||||
}
|
||||
|
||||
int DiscordClient::GetUnreadStateForChannel(Snowflake id) const noexcept {
|
||||
const auto iter = m_unread.find(id);
|
||||
if (iter == m_unread.end()) return -1; // todo: no magic number
|
||||
@@ -1457,6 +1461,7 @@ void DiscordClient::HandleGatewayReady(const GatewayMessage &msg) {
|
||||
m_user_settings = data.Settings;
|
||||
|
||||
HandleReadyReadState(data);
|
||||
HandleReadyGuildSettings(data);
|
||||
|
||||
m_signal_gateway_ready.emit();
|
||||
}
|
||||
@@ -2181,6 +2186,13 @@ void DiscordClient::HandleReadyReadState(const ReadyEventData &data) {
|
||||
}
|
||||
}
|
||||
|
||||
void DiscordClient::HandleReadyGuildSettings(const ReadyEventData &data) {
|
||||
for (const auto &entry : data.GuildSettings.Entries) {
|
||||
if (entry.Muted)
|
||||
m_muted_guilds.insert(entry.GuildID);
|
||||
}
|
||||
}
|
||||
|
||||
void DiscordClient::LoadEventMap() {
|
||||
m_event_map["READY"] = GatewayEvent::READY;
|
||||
m_event_map["MESSAGE_CREATE"] = GatewayEvent::MESSAGE_CREATE;
|
||||
|
||||
Reference in New Issue
Block a user