mirror of
https://github.com/AleziaKurdis/overte.git
synced 2025-04-15 20:09:14 +02:00
Display domain login menu item only on domains that have domain login
This commit is contained in:
parent
29e5bfdb94
commit
67100b5a20
3 changed files with 10 additions and 0 deletions
|
@ -43,6 +43,7 @@
|
|||
#include "avatar/AvatarManager.h"
|
||||
#include "avatar/AvatarPackager.h"
|
||||
#include "AvatarBookmarks.h"
|
||||
#include "DomainAccountManager.h"
|
||||
#include "MainWindow.h"
|
||||
#include "render/DrawStatus.h"
|
||||
#include "scripting/MenuScriptingInterface.h"
|
||||
|
@ -73,6 +74,7 @@ const char* EXCLUSION_GROUP_KEY = "exclusionGroup";
|
|||
Menu::Menu() {
|
||||
auto dialogsManager = DependencyManager::get<DialogsManager>();
|
||||
auto accountManager = DependencyManager::get<AccountManager>();
|
||||
auto domainAccountManager = DependencyManager::get<DomainAccountManager>();
|
||||
|
||||
// File/Application menu ----------------------------------
|
||||
MenuWrapper* fileMenu = addMenu("File");
|
||||
|
@ -89,11 +91,15 @@ Menu::Menu() {
|
|||
}
|
||||
|
||||
auto domainLogin = addActionToQMenuAndActionHash(fileMenu, "Domain: Log In");
|
||||
domainLogin->setVisible(false);
|
||||
connect(domainLogin, &QAction::triggered, [] {
|
||||
auto dialogsManager = DependencyManager::get<DialogsManager>();
|
||||
dialogsManager->setDomainLoginState();
|
||||
dialogsManager->showDomainLoginDialog();
|
||||
});
|
||||
connect(domainAccountManager.data(), &DomainAccountManager::hasLogInChanged, [domainLogin](bool hasLogIn) {
|
||||
domainLogin->setVisible(hasLogIn);
|
||||
});
|
||||
|
||||
// File > Quit
|
||||
addActionToQMenuAndActionHash(fileMenu, MenuOption::Quit, Qt::CTRL | Qt::Key_Q, qApp, SLOT(quit()), QAction::QuitRole);
|
||||
|
|
|
@ -51,6 +51,7 @@ void DomainAccountManager::setDomainURL(const QUrl& domainURL) {
|
|||
_currentAuth.domainURL = domainURL;
|
||||
}
|
||||
|
||||
emit hasLogInChanged(hasLogIn());
|
||||
}
|
||||
|
||||
void DomainAccountManager::setAuthURL(const QUrl& authURL) {
|
||||
|
@ -64,6 +65,8 @@ void DomainAccountManager::setAuthURL(const QUrl& authURL) {
|
|||
|
||||
_currentAuth.accessToken = "";
|
||||
_currentAuth.refreshToken = "";
|
||||
|
||||
emit hasLogInChanged(hasLogIn());
|
||||
}
|
||||
|
||||
bool DomainAccountManager::hasLogIn() {
|
||||
|
|
|
@ -53,6 +53,7 @@ public slots:
|
|||
void requestAccessTokenFinished();
|
||||
|
||||
signals:
|
||||
void hasLogInChanged(bool hasLogIn);
|
||||
void authRequired(const QString& domain);
|
||||
void loginComplete();
|
||||
void loginFailed();
|
||||
|
|
Loading…
Reference in a new issue