Show error if room join failed
This commit is contained in:
committed by
Tobias Fella
parent
4066427168
commit
072dc1b6a3
@@ -8,9 +8,10 @@
|
|||||||
#include "neochatroom.h"
|
#include "neochatroom.h"
|
||||||
#include <KLocalizedString>
|
#include <KLocalizedString>
|
||||||
#include <QDesktopServices>
|
#include <QDesktopServices>
|
||||||
#include <QStandardPaths>
|
|
||||||
#include <qt_connection_util.h>
|
|
||||||
#include <QQuickTextDocument>
|
#include <QQuickTextDocument>
|
||||||
|
#include <QStandardPaths>
|
||||||
|
#include <csapi/joining.h>
|
||||||
|
#include <qt_connection_util.h>
|
||||||
#include <user.h>
|
#include <user.h>
|
||||||
|
|
||||||
#ifndef Q_OS_ANDROID
|
#ifndef Q_OS_ANDROID
|
||||||
@@ -193,9 +194,15 @@ void RoomManager::visitRoom(Room *room, const QString &eventId)
|
|||||||
|
|
||||||
void RoomManager::joinRoom(Quotient::Connection *account, const QString &roomAliasOrId, const QStringList &viaServers)
|
void RoomManager::joinRoom(Quotient::Connection *account, const QString &roomAliasOrId, const QStringList &viaServers)
|
||||||
{
|
{
|
||||||
account->joinRoom(QUrl::toPercentEncoding(roomAliasOrId), viaServers);
|
auto job = account->joinRoom(QUrl::toPercentEncoding(roomAliasOrId), viaServers);
|
||||||
connectSingleShot(account, &Quotient::Connection::newRoom, this, [this](Quotient::Room *room) {
|
connectSingleShot(job, &Quotient::BaseJob::finished, this, [this, account](Quotient::BaseJob *finish) {
|
||||||
enterRoom(dynamic_cast<NeoChatRoom *>(room));
|
if (finish->status() == Quotient::BaseJob::Success) {
|
||||||
|
connectSingleShot(account, &Quotient::Connection::newRoom, this, [this](Quotient::Room *room) {
|
||||||
|
enterRoom(dynamic_cast<NeoChatRoom *>(room));
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
Q_EMIT warning(i18n("Failed to join room"), finish->errorString());
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user