From ec8117a24b129b957a45f6f142221143b0f059a0 Mon Sep 17 00:00:00 2001 From: ouwou <26526779+ouwou@users.noreply.github.com> Date: Sun, 1 Nov 2020 00:13:52 -0400 Subject: update channel list selection when channel mention is clicked --- components/channels.cpp | 6 ++++++ components/channels.hpp | 2 ++ 2 files changed, 8 insertions(+) (limited to 'components') diff --git a/components/channels.cpp b/components/channels.cpp index fc409ad..a8f2f66 100644 --- a/components/channels.cpp +++ b/components/channels.cpp @@ -414,6 +414,12 @@ void ChannelList::Clear() { m_update_dispatcher.emit(); } +void ChannelList::SetActiveChannel(Snowflake id) { + auto it = m_id_to_row.find(id); + if (it == m_id_to_row.end()) return; + m_list->select_row(*it->second); +} + void ChannelList::CollapseRow(ChannelListRow *row) { row->Collapse(); for (auto child : row->Children) { diff --git a/components/channels.hpp b/components/channels.hpp index 6c6997a..012891f 100644 --- a/components/channels.hpp +++ b/components/channels.hpp @@ -94,6 +94,8 @@ public: void UpdateGuild(Snowflake id); void Clear(); + void SetActiveChannel(Snowflake id); + protected: Gtk::ListBox *m_list; Gtk::ScrolledWindow *m_main; -- cgit v1.2.3