Further things kinda working.

This commit is contained in:
Kasen IO 2020-08-04 20:00:24 -04:00
parent ffce0a9d27
commit 0e8f019b8a
4 changed files with 34 additions and 10 deletions

View file

@ -651,6 +651,7 @@ Item {
Text {
id: loginSkipTipText
text: qsTr("Not all domains require you to have a metaverse account. \n Some domains have their own login dialogs.")
wrapMode: Text.WordWrap
visible: !linkAccountBody.isLoggingInToDomain
anchors {
top: dismissButton.bottom

View file

@ -1355,7 +1355,9 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo
auto domainAccountManager = DependencyManager::get<DomainAccountManager>();
connect(domainAccountManager.data(), &DomainAccountManager::authRequired, dialogsManager.data(),
&DialogsManager::showDomainLoginDialog);
connect(domainAccountManager.data(), &DomainAccountManager::loginComplete, this,
&Application::updateWindowTitle);
// ####### TODO: Connect any other signals from domainAccountManager.
@ -7079,20 +7081,24 @@ void Application::updateWindowTitle() const {
auto nodeList = DependencyManager::get<NodeList>();
auto accountManager = DependencyManager::get<AccountManager>();
auto domainAccountManager = DependencyManager::get<DomainAccountManager>();
auto isInErrorState = nodeList->getDomainHandler().isInErrorState();
bool isMetaverseLoggedIn = accountManager->isLoggedIn();
bool isDomainLoggedIn = domainAccountManager->isLoggedIn();
qCDebug(interfaceapp) << "Is Logged Into Domain:" << isDomainLoggedIn;
QString buildVersion = " - Vircadia - "
+ (BuildInfo::BUILD_TYPE == BuildInfo::BuildType::Stable ? QString("Version") : QString("Build"))
+ " " + applicationVersion();
// ####### TODO
QString loginStatus = accountManager->isLoggedIn() ? "" : " (NOT LOGGED IN)";
QString connectionStatus = isInErrorState ? " (ERROR CONNECTING)" :
nodeList->getDomainHandler().isConnected() ? "" : " (NOT CONNECTED)";
QString username = accountManager->getAccountInfo().getUsername();
setCrashAnnotation("sentry[user][username]", username.toStdString());
QString metaverseUsername = accountManager->getAccountInfo().getUsername();
// ###### TODO
// QString domainUsername = domainAccountManager->getUsername();
setCrashAnnotation("sentry[user][metaverseUsername]", metaverseUsername.toStdString());
QString currentPlaceName;
if (isServerlessMode()) {
@ -7108,8 +7114,23 @@ void Application::updateWindowTitle() const {
}
}
QString title = QString() + (!username.isEmpty() ? username + " @ " : QString())
+ currentPlaceName + connectionStatus + loginStatus + buildVersion;
QString metaverseDetails;
if (isMetaverseLoggedIn) {
metaverseDetails = "Metaverse: Logged in as " + metaverseUsername;
} else {
metaverseDetails = "Metaverse: Not Logged In";
}
QString domainDetails;
if (isDomainLoggedIn) {
// domainDetails = "Domain: Logged in as " + domainUsername;
domainDetails = "Domain: Logged In";
} else {
domainDetails = "Domain: Not Logged In";
}
QString title = QString() + currentPlaceName + connectionStatus + " (" + metaverseDetails + " - " + domainDetails + ")"
+ buildVersion;
#ifndef WIN32
// crashes with vs2013/win32

View file

@ -99,11 +99,11 @@ void LoginDialog::toggleAction() {
if (accountManager->isLoggedIn()) {
// change the menu item to logout
loginAction->setText("Logout " + accountManager->getAccountInfo().getUsername());
loginAction->setText("Metaverse: Logout " + accountManager->getAccountInfo().getUsername());
connection = connect(loginAction, &QAction::triggered, accountManager.data(), &AccountManager::logout);
} else {
// change the menu item to login
loginAction->setText("Log In / Sign Up");
loginAction->setText("Metaverse: Log In / Sign Up");
connection = connect(loginAction, &QAction::triggered, [] {
// if not in login state, show.
if (!qApp->getLoginDialogPoppedUp()) {

View file

@ -30,6 +30,8 @@ public:
QString getAccessToken() { return _access_token; }
QString getRefreshToken() { return _refresh_token; }
bool isLoggedIn() { return hasValidAccessToken(); }
Q_INVOKABLE bool checkAndSignalForAccessToken();
public slots: