adding popup property to qml

This commit is contained in:
Wayne Chen 2018-09-10 16:22:55 -07:00
parent e7616c7d34
commit dcacfdba7c
5 changed files with 16 additions and 0 deletions

View file

@ -2301,6 +2301,8 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo
AndroidHelper::instance().notifyLoadComplete();
#endif
connect(this, &Application::loginDialogPoppedUp, DependencyManager::get<DialogsManager>().data(), &DialogsManager::loginDialogPoppedUp);
static int CHECK_LOGIN_TIMER = 3000;
QTimer* checkLoginTimer = new QTimer(this);
checkLoginTimer->setInterval(CHECK_LOGIN_TIMER);
@ -2309,6 +2311,7 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo
auto accountManager = DependencyManager::get<AccountManager>();
auto dialogsManager = DependencyManager::get<DialogsManager>();
if (!accountManager->isLoggedIn() && !qApp->isHMDMode()) {
emit loginDialogPoppedUp();
dialogsManager->showLoginDialog();
QJsonObject loginData = {};
loginData["action"] = "login dialog shown";

View file

@ -331,6 +331,8 @@ signals:
void uploadRequest(QString path);
void loginDialogPoppedUp();
public slots:
QVector<EntityItemID> pasteEntities(float x, float y, float z);
bool exportEntities(const QString& filename, const QVector<EntityItemID>& entityIDs, const glm::vec3* givenOffset = nullptr);

View file

@ -117,6 +117,10 @@ void DialogsManager::showLoginDialog() {
LoginDialog::showWithSelection();
}
void DialogsManager::loginDialogPoppedUp() {
LoginDialog::setLoginDialogPoppedUp(true);
}
void DialogsManager::showUpdateDialog() {
UpdateDialog::show();
}

View file

@ -48,6 +48,7 @@ public slots:
void setDomainConnectionFailureVisibility(bool visible);
void toggleLoginDialog();
void showLoginDialog();
void loginDialogPoppedUp();
void octreeStatsDetails();
void lodTools();
void hmdTools(bool showTools);

View file

@ -23,6 +23,7 @@ class QNetworkReply;
class LoginDialog : public OffscreenQmlDialog {
Q_OBJECT
Q_PROPERTY(bool poppedUp READ getLoginDialogPoppedUp)
HIFI_QML_DECL
public:
@ -33,6 +34,9 @@ public:
virtual ~LoginDialog();
static void showWithSelection();
bool getLoginDialogPoppedUp() { return _poppedUp; }
void setLoginDialogPoppedUp(bool poppedUp) { _poppedUp = poppedUp; }
signals:
void handleLoginCompleted();
void handleLoginFailed();
@ -68,6 +72,8 @@ protected slots:
Q_INVOKABLE void openUrl(const QString& url) const;
private:
bool _poppedUp {false};
};
#endif // hifi_LoginDialog_h