diff options
Diffstat (limited to 'components/channels.cpp')
-rw-r--r-- | components/channels.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/components/channels.cpp b/components/channels.cpp index a80cfd8..e175e8c 100644 --- a/components/channels.cpp +++ b/components/channels.cpp @@ -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) { |