summaryrefslogtreecommitdiffstats
path: root/src/MatrixClient.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/MatrixClient.cc')
-rw-r--r--src/MatrixClient.cc24
1 files changed, 21 insertions, 3 deletions
diff --git a/src/MatrixClient.cc b/src/MatrixClient.cc
index 54756c7c..c6ca74ad 100644
--- a/src/MatrixClient.cc
+++ b/src/MatrixClient.cc
@@ -33,7 +33,27 @@
#include "MatrixClient.h"
-MatrixClient::MatrixClient(QString server, QObject *parent)
+namespace {
+MatrixClient *instance_ = nullptr;
+}
+
+namespace http {
+
+void
+init(QObject *parent)
+{
+ if (!instance_)
+ instance_ = new MatrixClient(parent);
+}
+
+MatrixClient *
+client()
+{
+ return instance_;
+}
+}
+
+MatrixClient::MatrixClient(QObject *parent)
: QNetworkAccessManager(parent)
, clientApiUrl_{"/_matrix/client/r0"}
, mediaApiUrl_{"/_matrix/media/r0"}
@@ -55,8 +75,6 @@ MatrixClient::MatrixClient(QString server, QObject *parent)
[](QNetworkReply *reply, const QList<QSslError> &) { reply->ignoreSslErrors(); });
}
- setServer(server);
-
QJsonObject default_filter{
{
"room",