handle THREAD_DELETE

This commit is contained in:
ouwou
2021-07-30 01:32:43 -04:00
parent 355ef009c8
commit 22376ba54a
6 changed files with 46 additions and 3 deletions

View File

@@ -129,6 +129,7 @@ ChannelList::ChannelList()
discord.signal_channel_update().connect(sigc::mem_fun(*this, &ChannelList::UpdateChannel));
discord.signal_channel_create().connect(sigc::mem_fun(*this, &ChannelList::UpdateCreateChannel));
discord.signal_thread_create().connect(sigc::mem_fun(*this, &ChannelList::UpdateCreateThread));
discord.signal_thread_delete().connect(sigc::mem_fun(*this, &ChannelList::UpdateDeleteThread));
discord.signal_guild_update().connect(sigc::mem_fun(*this, &ChannelList::UpdateGuild));
}
@@ -271,6 +272,12 @@ void ChannelList::UpdateCreateThread(const ChannelData &channel) {
CreateThreadRow(parent_row->children(), channel);
}
void ChannelList::UpdateDeleteThread(const ThreadDeleteData &data) {
auto iter = GetIteratorForChannelFromID(data.ID);
if (iter)
m_model->erase(iter);
}
void ChannelList::SetActiveChannel(Snowflake id) {
const auto channel_iter = GetIteratorForChannelFromID(id);
if (channel_iter) {