diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2020-08-26 01:47:46 -0400 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2020-08-26 01:47:46 -0400 |
commit | f3e8d1aff329b65f171e9f6f41681eb179b58d4f (patch) | |
tree | 4a19c0e0aec08efb19a0cd801a78a6652b9c9030 /components | |
parent | c6e2f266a11c7d2f2c025fc2f75ce38223a4bac2 (diff) | |
download | abaddon-portaudio-f3e8d1aff329b65f171e9f6f41681eb179b58d4f.tar.gz abaddon-portaudio-f3e8d1aff329b65f171e9f6f41681eb179b58d4f.zip |
clear messages on disconnect
Diffstat (limited to 'components')
-rw-r--r-- | components/chatwindow.cpp | 6 | ||||
-rw-r--r-- | components/chatwindow.hpp | 1 |
2 files changed, 7 insertions, 0 deletions
diff --git a/components/chatwindow.cpp b/components/chatwindow.cpp index 23631dd..539d6b6 100644 --- a/components/chatwindow.cpp +++ b/components/chatwindow.cpp @@ -116,6 +116,12 @@ void ChatWindow::AddNewMessage(Snowflake id) { m_new_message_dispatch.emit(); } +void ChatWindow::ClearMessages() { + std::scoped_lock<std::mutex> guard(m_update_mutex); + m_message_set_queue.push(std::unordered_set<const MessageData *>()); + m_message_set_dispatch.emit(); +} + void ChatWindow::ScrollToBottom() { auto x = m_scroll->get_vadjustment(); x->set_value(x->get_upper()); diff --git a/components/chatwindow.hpp b/components/chatwindow.hpp index fb2abec..d8de505 100644 --- a/components/chatwindow.hpp +++ b/components/chatwindow.hpp @@ -16,6 +16,7 @@ public: Snowflake GetActiveChannel() const; void SetMessages(std::unordered_set<const MessageData *> msgs); void AddNewMessage(Snowflake id); + void ClearMessages(); protected: void ScrollToBottom(); |