diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2023-09-22 19:58:38 -0400 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2023-09-22 19:58:38 -0400 |
commit | 8eb22ef73fe6ac085d2da45541950374ff21c03c (patch) | |
tree | 3ea542026ddb555b15640b44a14085efdf25b03e /src/components | |
parent | 7f891fba337ffea129df26058335c8ab1316be8d (diff) | |
download | abaddon-portaudio-8eb22ef73fe6ac085d2da45541950374ff21c03c.tar.gz abaddon-portaudio-8eb22ef73fe6ac085d2da45541950374ff21c03c.zip |
fix member list in dms again
Diffstat (limited to 'src/components')
-rw-r--r-- | src/components/memberlist.cpp | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/src/components/memberlist.cpp b/src/components/memberlist.cpp index df14ad5..f622829 100644 --- a/src/components/memberlist.cpp +++ b/src/components/memberlist.cpp @@ -60,12 +60,19 @@ void MemberList::UpdateMemberList() { return; } + const static auto color_transparent = Gdk::RGBA("rgba(0,0,0,0)"); + if (channel->IsDM()) { for (const auto &user : channel->GetDMRecipients()) { - auto row = *m_model->append(); + auto row_iter = m_model->append(); + auto row = *row_iter; row[m_columns.m_type] = MemberListRenderType::Member; row[m_columns.m_id] = user.ID; row[m_columns.m_name] = user.GetDisplayNameEscaped(); + row[m_columns.m_color] = color_transparent; + row[m_columns.m_av_requested] = false; + row[m_columns.m_pixbuf] = Abaddon::Get().GetImageManager().GetPlaceholder(16); + m_pending_avatars[user.ID] = row_iter; } } @@ -110,8 +117,8 @@ void MemberList::UpdateMemberList() { } const auto add_user = [this, &guild, &user_to_color](const UserData &user, const Gtk::TreeRow &parent) { - auto test = m_model->append(parent->children()); - auto row = *test; + auto row_iter = m_model->append(parent->children()); + auto row = *row_iter; row[m_columns.m_type] = MemberListRenderType::Member; row[m_columns.m_id] = user.ID; row[m_columns.m_name] = user.GetDisplayNameEscaped(); @@ -120,11 +127,10 @@ void MemberList::UpdateMemberList() { if (const auto iter = user_to_color.find(user.ID); iter != user_to_color.end()) { row[m_columns.m_color] = IntToRGBA(iter->second); } else { - const static auto transparent = Gdk::RGBA("rgba(0,0,0,0)"); - row[m_columns.m_color] = transparent; + row[m_columns.m_color] = color_transparent; } - m_pending_avatars[user.ID] = test; - return test; + m_pending_avatars[user.ID] = row_iter; + return row_iter; }; const auto add_role = [this](const RoleData &role) { |