summaryrefslogtreecommitdiff
path: root/indra/newview/llstartup.cpp
diff options
context:
space:
mode:
authorErik Kundiman <erik@megapahit.org>2025-07-29 07:04:30 +0800
committerErik Kundiman <erik@megapahit.org>2025-07-29 07:04:50 +0800
commit2ec9d7fa779456112f36e963d1e169a71149662a (patch)
treed1b8282465b30cc67b60b5453b759b3405bf9a31 /indra/newview/llstartup.cpp
parent863e56d24c06e055d3ba4695422b604cbcd46350 (diff)
parentb7d33485406150bf466f61477cfd33d9bdacb705 (diff)
Merge branch 'main' into 2025.05
Diffstat (limited to 'indra/newview/llstartup.cpp')
-rw-r--r--indra/newview/llstartup.cpp48
1 files changed, 5 insertions, 43 deletions
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp
index 834b99555e..dfad169813 100644
--- a/indra/newview/llstartup.cpp
+++ b/indra/newview/llstartup.cpp
@@ -217,12 +217,6 @@
#include "fsfloatersearch.h"
-#ifdef LL_DISCORD
-#define DISCORDPP_IMPLEMENTATION
-#include <discordpp.h>
-static std::shared_ptr<discordpp::Client> gDiscordClient;
-#endif
-
//
// exported globals
//
@@ -758,14 +752,7 @@ bool idle_startup()
}
#ifdef LL_DISCORD
- gDiscordClient = std::make_shared<discordpp::Client>();
- gDiscordClient->SetStatusChangedCallback([](discordpp::Client::Status status, discordpp::Client::Error, int32_t) {
- if (status == discordpp::Client::Status::Ready) {
- discordpp::Activity activity;
- activity.SetType(discordpp::ActivityTypes::Playing);
- gDiscordClient->UpdateRichPresence(activity, [](discordpp::ClientResult) {});
- }
- });
+ LLAppViewer::initDiscordSocial();
#endif
//
@@ -2340,6 +2327,10 @@ bool idle_startup()
do_startup_frame();
}
+#ifdef LL_DISCORD
+ LLAppViewer::updateDiscordActivity();
+#endif
+
return true;
}
@@ -3447,35 +3438,6 @@ bool LLStartUp::startLLProxy()
return proxy_ok;
}
-#ifdef LL_DISCORD
-
-void LLStartUp::runDiscordCallbacks()
-{
- discordpp::RunCallbacks();
-}
-
-void LLStartUp::handleDiscordSocial()
-{
- static const uint64_t DISCORD_APPLICATION_ID = 1393451183741599796;
- discordpp::AuthorizationArgs discordAuthArgs{};
- discordAuthArgs.SetClientId(DISCORD_APPLICATION_ID);
- discordAuthArgs.SetScopes(discordpp::Client::GetDefaultPresenceScopes());
- auto discordCodeVerifier = gDiscordClient->CreateAuthorizationCodeVerifier();
- discordAuthArgs.SetCodeChallenge(discordCodeVerifier.Challenge());
- gDiscordClient->Authorize(discordAuthArgs, [discordCodeVerifier](auto result, auto code, auto redirectUri) {
- if (result.Successful()) {
- gDiscordClient->GetToken(DISCORD_APPLICATION_ID, code, discordCodeVerifier.Verifier(), redirectUri, [](discordpp::ClientResult result, std::string accessToken, std::string, discordpp::AuthorizationTokenType, int32_t, std::string) {
- gDiscordClient->UpdateToken(discordpp::AuthorizationTokenType::Bearer, accessToken, [](discordpp::ClientResult result) {
- if (result.Successful())
- gDiscordClient->Connect();
- });
- });
- }
- });
-}
-
-#endif
-
bool login_alert_done(const LLSD& notification, const LLSD& response)
{
LLPanelLogin::giveFocus();