Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/src/mucjoindlg.cpp b/src/mucjoindlg.cpp
- index cf07d78c..479e396b 100644
- --- a/src/mucjoindlg.cpp
- +++ b/src/mucjoindlg.cpp
- @@ -35,6 +35,7 @@
- static const int nickConflictCode = 409;
- static const QString additionalSymbol = "_";
- +static const int timeout = 30000;
- MUCJoinDlg::MUCJoinDlg(PsiCon *psi, PsiAccount *pa) : QDialog(nullptr), nickAlreadyCompleted_(false)
- {
- @@ -53,6 +54,10 @@ MUCJoinDlg::MUCJoinDlg(PsiCon *psi, PsiAccount *pa) : QDialog(nullptr), nickAlre
- ui_.ck_history->hide();
- joinButton_ = ui_.buttonBox->addButton(tr("&Join"), QDialogButtonBox::AcceptRole);
- joinButton_->setDefault(true);
- + timer_ = new QTimer(this);
- + timer_->setInterval(timeout);
- + connect(timer_, &QTimer::timeout, this,
- + [this]() { error(404, tr("No response from server for %1 seconds").arg(timeout / 1000)); });
- reason_ = PsiAccount::MucCustomJoin;
- @@ -269,6 +274,7 @@ void MUCJoinDlg::doJoin(PsiAccount::MucJoinReason r)
- account_->dialogRegister(this, jid_);
- setWidgetsEnabled(false);
- + timer_->start();
- ui_.busy->start();
- }
- @@ -283,6 +289,8 @@ void MUCJoinDlg::setWidgetsEnabled(bool enabled)
- void MUCJoinDlg::joined()
- {
- controller_->recentGCAdd(jid_.full());
- + if (timer_->isActive())
- + timer_->stop();
- ui_.busy->stop();
- nickAlreadyCompleted_ = false;
- @@ -293,6 +301,8 @@ void MUCJoinDlg::joined()
- void MUCJoinDlg::error(int error, const QString &str)
- {
- + if (timer_->isActive())
- + timer_->stop();
- ui_.busy->stop();
- setWidgetsEnabled(true);
- diff --git a/src/mucjoindlg.h b/src/mucjoindlg.h
- index 90fe7c7f..52a89ecc 100644
- --- a/src/mucjoindlg.h
- +++ b/src/mucjoindlg.h
- @@ -25,6 +25,7 @@
- #include "xmpp_jid.h"
- #include <QDialog>
- +#include <QTimer>
- class PsiCon;
- class QString;
- @@ -67,6 +68,7 @@ private:
- QPushButton * joinButton_;
- XMPP::Jid jid_;
- PsiAccount::MucJoinReason reason_;
- + QTimer * timer_;
- bool nickAlreadyCompleted_;
- void disableWidgets();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement