diff options
-rw-r--r-- | components/statusindicator.cpp | 9 | ||||
-rw-r--r-- | discord/discord.cpp | 4 | ||||
-rw-r--r-- | discord/discord.hpp | 2 |
3 files changed, 5 insertions, 10 deletions
diff --git a/components/statusindicator.cpp b/components/statusindicator.cpp index f10d1ef..6e7e0fb 100644 --- a/components/statusindicator.cpp +++ b/components/statusindicator.cpp @@ -36,13 +36,8 @@ void StatusIndicator::CheckStatus() { get_style_context()->remove_class("dnd"); get_style_context()->remove_class("idle"); get_style_context()->remove_class("offline"); - if (status.has_value()) { - get_style_context()->add_class(GetPresenceString(*status)); - m_status = *status; - } else { - m_status = PresenceStatus::Offline; - get_style_context()->add_class("offline"); - } + get_style_context()->add_class(GetPresenceString(status)); + m_status = status; if (last_status != m_status) queue_draw(); diff --git a/discord/discord.cpp b/discord/discord.cpp index e0de3e9..c85ad6e 100644 --- a/discord/discord.cpp +++ b/discord/discord.cpp @@ -842,12 +842,12 @@ void DiscordClient::SetUserAgent(std::string agent) { m_websocket.SetUserAgent(agent); } -std::optional<PresenceStatus> DiscordClient::GetUserStatus(Snowflake id) const { +PresenceStatus DiscordClient::GetUserStatus(Snowflake id) const { auto it = m_user_to_status.find(id); if (it != m_user_to_status.end()) return it->second; - return std::nullopt; + return PresenceStatus::Offline; } std::unordered_set<Snowflake> DiscordClient::GetRelationships(RelationshipType type) const { diff --git a/discord/discord.hpp b/discord/discord.hpp index 1d732b7..2983ddf 100644 --- a/discord/discord.hpp +++ b/discord/discord.hpp @@ -176,7 +176,7 @@ public: void UpdateToken(std::string token); void SetUserAgent(std::string agent); - std::optional<PresenceStatus> GetUserStatus(Snowflake id) const; + PresenceStatus GetUserStatus(Snowflake id) const; std::unordered_set<Snowflake> GetRelationships(RelationshipType type) const; |