GetUserStatus returns offline instead of nullopt

This commit is contained in:
ouwou 2021-05-05 04:28:54 -04:00
parent 8b22c7c2cf
commit 2b45a04911
3 changed files with 5 additions and 10 deletions

View File

@ -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();

View File

@ -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 {

View File

@ -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;