diff options
| author | Thomas Tanner <trtanner@btinternet.com> | 2015-10-11 21:26:21 +0100 |
|---|---|---|
| committer | Thomas Tanner <trtanner@btinternet.com> | 2015-10-11 21:26:21 +0100 |
| commit | af9a128b4f3393d4e7e8a0c4fda48148b80a0e4c (patch) | |
| tree | 9f17c99511231bdd2d431eed04bd38a7322f6bb6 /src/nxmaccessmanager.cpp | |
| parent | c5876cb6a142dc228ff3e3c3a936699f58d6b2a0 (diff) | |
| parent | 7d93a9a2003f31188e4da8cbcd7e5df0352bb900 (diff) | |
Merge branch 'TanninOne/master'
Diffstat (limited to 'src/nxmaccessmanager.cpp')
| -rw-r--r-- | src/nxmaccessmanager.cpp | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/src/nxmaccessmanager.cpp b/src/nxmaccessmanager.cpp index 07a75910..0763bb71 100644 --- a/src/nxmaccessmanager.cpp +++ b/src/nxmaccessmanager.cpp @@ -52,7 +52,6 @@ const std::set<int> NXMAccessManager::s_PremiumAccountStates { 4, 6, 13, 27, 31, NXMAccessManager::NXMAccessManager(QObject *parent, const QString &moVersion)
: QNetworkAccessManager(parent)
, m_LoginReply(nullptr)
- , m_ProgressDialog()
, m_MOVersion(moVersion)
{
m_LoginTimeout.setSingleShot(true);
@@ -239,10 +238,11 @@ void NXMAccessManager::pageLogin() request.setRawHeader("User-Agent", userAgent().toUtf8());
- m_ProgressDialog.setLabelText(tr("Logging into Nexus"));
- QList<QPushButton*> buttons = m_ProgressDialog.findChildren<QPushButton*>();
+ m_ProgressDialog = new QProgressDialog(nullptr);
+ m_ProgressDialog->setLabelText(tr("Logging into Nexus"));
+ QList<QPushButton*> buttons = m_ProgressDialog->findChildren<QPushButton*>();
buttons.at(0)->setEnabled(false);
- m_ProgressDialog.show();
+ m_ProgressDialog->show();
QCoreApplication::processEvents(); // for some reason the whole app hangs during the login. This way the user has at least a little feedback
m_LoginReply = post(request, postDataQuery);
@@ -269,7 +269,10 @@ void NXMAccessManager::loginTimeout() void NXMAccessManager::loginError(QNetworkReply::NetworkError)
{
qDebug("login error");
- m_ProgressDialog.hide();
+ if (m_ProgressDialog != nullptr) {
+ m_ProgressDialog->deleteLater();
+ m_ProgressDialog = nullptr;
+ }
m_Username.clear();
m_Password.clear();
m_LoginState = LOGIN_NOT_VALID;
@@ -300,7 +303,10 @@ bool NXMAccessManager::hasLoginCookies() const void NXMAccessManager::loginFinished()
{
- m_ProgressDialog.hide();
+ if (m_ProgressDialog != nullptr) {
+ m_ProgressDialog->deleteLater();
+ m_ProgressDialog = nullptr;
+ }
m_LoginReply->deleteLater();
m_LoginReply = nullptr;
|
