From 29a049e62a6a701c7e6290a643f709a35ba5f4cf Mon Sep 17 00:00:00 2001 From: ouwou <26526779+ouwou@users.noreply.github.com> Date: Tue, 13 Jun 2023 22:15:48 -0400 Subject: handle nickname in reply component --- src/discord/user.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/discord/user.cpp') diff --git a/src/discord/user.cpp b/src/discord/user.cpp index 1d5d15a..0f89fe2 100644 --- a/src/discord/user.cpp +++ b/src/discord/user.cpp @@ -89,14 +89,30 @@ std::string UserData::GetDisplayName() const { return Username; } +std::string UserData::GetDisplayName(Snowflake guild_id) const { + const auto member = Abaddon::Get().GetDiscordClient().GetMember(ID, guild_id); + if (member.has_value() && !member->Nickname.empty()) { + return member->Nickname; + } + return GetDisplayName(); +} + std::string UserData::GetDisplayNameEscaped() const { return Glib::Markup::escape_text(GetDisplayName()); } +std::string UserData::GetDisplayNameEscaped(Snowflake guild_id) const { + return Glib::Markup::escape_text(GetDisplayName(guild_id)); +} + std::string UserData::GetDisplayNameEscapedBold() const { return "" + Glib::Markup::escape_text(GetDisplayName()) + ""; } +std::string UserData::GetDisplayNameEscapedBold(Snowflake guild_id) const { + return "" + Glib::Markup::escape_text(GetDisplayName(guild_id)) + ""; +} + std::string UserData::GetUsername() const { if (IsPomelo()) { return Username; -- cgit v1.2.3