From abfba3c4bb07796f40f53c8573a047061d5950f3 Mon Sep 17 00:00:00 2001
From: Armano den Boef <68127614+Rozen4334@users.noreply.github.com>
Date: Wed, 16 Feb 2022 12:52:08 +0100
Subject: [PATCH] Add DisplayName property to IGuildUser. (#2107)
---
src/Discord.Net.Core/Entities/Users/IGuildUser.cs | 7 +++++++
src/Discord.Net.Rest/Entities/Users/RestGuildUser.cs | 3 ++-
src/Discord.Net.Rest/Entities/Users/RestWebhookUser.cs | 2 ++
.../Entities/Users/SocketGuildUser.cs | 2 ++
.../Entities/Users/SocketThreadUser.cs | 4 ++++
.../Entities/Users/SocketWebhookUser.cs | 2 ++
6 files changed, 19 insertions(+), 1 deletion(-)
diff --git a/src/Discord.Net.Core/Entities/Users/IGuildUser.cs b/src/Discord.Net.Core/Entities/Users/IGuildUser.cs
index 95896eef0..21f6cf093 100644
--- a/src/Discord.Net.Core/Entities/Users/IGuildUser.cs
+++ b/src/Discord.Net.Core/Entities/Users/IGuildUser.cs
@@ -18,6 +18,13 @@ namespace Discord
///
DateTimeOffset? JoinedAt { get; }
///
+ /// Gets the displayed name for this user.
+ ///
+ ///
+ /// A string representing the display name of the user; If the nickname is null, this will be the username.
+ ///
+ string DisplayName { get; }
+ ///
/// Gets the nickname for this user.
///
///
diff --git a/src/Discord.Net.Rest/Entities/Users/RestGuildUser.cs b/src/Discord.Net.Rest/Entities/Users/RestGuildUser.cs
index 09e7ec03a..1415b5825 100644
--- a/src/Discord.Net.Rest/Entities/Users/RestGuildUser.cs
+++ b/src/Discord.Net.Rest/Entities/Users/RestGuildUser.cs
@@ -19,7 +19,8 @@ namespace Discord.Rest
private long? _timedOutTicks;
private long? _joinedAtTicks;
private ImmutableArray _roleIds;
-
+ ///
+ public string DisplayName => Nickname ?? Username;
///
public string Nickname { get; private set; }
///
diff --git a/src/Discord.Net.Rest/Entities/Users/RestWebhookUser.cs b/src/Discord.Net.Rest/Entities/Users/RestWebhookUser.cs
index 4ef84c508..b887f8df6 100644
--- a/src/Discord.Net.Rest/Entities/Users/RestWebhookUser.cs
+++ b/src/Discord.Net.Rest/Entities/Users/RestWebhookUser.cs
@@ -52,6 +52,8 @@ namespace Discord.Rest
///
DateTimeOffset? IGuildUser.JoinedAt => null;
///
+ string IGuildUser.DisplayName => null;
+ ///
string IGuildUser.Nickname => null;
///
string IGuildUser.GuildAvatarId => null;
diff --git a/src/Discord.Net.WebSocket/Entities/Users/SocketGuildUser.cs b/src/Discord.Net.WebSocket/Entities/Users/SocketGuildUser.cs
index 8c2825bc4..52d55561f 100644
--- a/src/Discord.Net.WebSocket/Entities/Users/SocketGuildUser.cs
+++ b/src/Discord.Net.WebSocket/Entities/Users/SocketGuildUser.cs
@@ -30,6 +30,8 @@ namespace Discord.WebSocket
///
public SocketGuild Guild { get; }
///
+ public string DisplayName => Nickname ?? Username;
+ ///
public string Nickname { get; private set; }
///
public string GuildAvatarId { get; private set; }
diff --git a/src/Discord.Net.WebSocket/Entities/Users/SocketThreadUser.cs b/src/Discord.Net.WebSocket/Entities/Users/SocketThreadUser.cs
index 24d570692..f3fdbff3e 100644
--- a/src/Discord.Net.WebSocket/Entities/Users/SocketThreadUser.cs
+++ b/src/Discord.Net.WebSocket/Entities/Users/SocketThreadUser.cs
@@ -29,6 +29,10 @@ namespace Discord.WebSocket
public DateTimeOffset? JoinedAt
=> GuildUser.JoinedAt;
+ ///
+ public string DisplayName
+ => GuildUser.Nickname ?? GuildUser.Username;
+
///
public string Nickname
=> GuildUser.Nickname;
diff --git a/src/Discord.Net.WebSocket/Entities/Users/SocketWebhookUser.cs b/src/Discord.Net.WebSocket/Entities/Users/SocketWebhookUser.cs
index 7d63e4e36..b6a00bcb0 100644
--- a/src/Discord.Net.WebSocket/Entities/Users/SocketWebhookUser.cs
+++ b/src/Discord.Net.WebSocket/Entities/Users/SocketWebhookUser.cs
@@ -63,6 +63,8 @@ namespace Discord.WebSocket
///
DateTimeOffset? IGuildUser.JoinedAt => null;
///
+ string IGuildUser.DisplayName => null;
+ ///
string IGuildUser.Nickname => null;
///
string IGuildUser.GuildAvatarId => null;