summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorKonstantinos Sideris <sideris.konstantin@gmail.com>2017-12-01 17:33:49 +0200
committerKonstantinos Sideris <sideris.konstantin@gmail.com>2017-12-01 17:33:49 +0200
commit5573548fb1adbaef6ef8e30fd76855b90c0fe26c (patch)
tree2204a70a9de4c565ad9ab1c49a97ef90bc1e059d /include
parent78353a29bce717b46a5aa720927abb88faa53f44 (diff)
Allow audio clip uploads
Diffstat (limited to 'include')
-rw-r--r--include/MatrixClient.h6
-rw-r--r--include/TextInputWidget.h3
-rw-r--r--include/events/MessageEvent.h2
-rw-r--r--include/events/messages/Audio.h2
-rw-r--r--include/events/messages/File.h2
-rw-r--r--include/events/messages/Image.h2
-rw-r--r--include/events/messages/Video.h2
-rw-r--r--include/timeline/TimelineViewManager.h1
8 files changed, 15 insertions, 5 deletions
diff --git a/include/MatrixClient.h b/include/MatrixClient.h
index b0f6993d..722a8611 100644
--- a/include/MatrixClient.h
+++ b/include/MatrixClient.h
@@ -17,6 +17,7 @@
#pragma once
+#include <QFileInfo>
#include <QNetworkAccessManager>
#include <QUrl>
@@ -43,6 +44,7 @@ public:
int txnId,
const QString &roomid,
const QString &msg,
+ const QFileInfo &info,
const QString &url = "") noexcept;
void login(const QString &username, const QString &password) noexcept;
void registerUser(const QString &username,
@@ -57,6 +59,7 @@ public:
void messages(const QString &room_id, const QString &from_token, int limit = 30) noexcept;
void uploadImage(const QString &roomid, const QString &filename);
void uploadFile(const QString &roomid, const QString &filename);
+ void uploadAudio(const QString &roomid, const QString &filename);
void joinRoom(const QString &roomIdOrAlias);
void leaveRoom(const QString &roomId);
void sendTypingNotification(const QString &roomid, int timeoutInMillis = 20000);
@@ -94,6 +97,7 @@ signals:
void versionSuccess();
void imageUploaded(const QString &roomid, const QString &filename, const QString &url);
void fileUploaded(const QString &roomid, const QString &filename, const QString &url);
+ void audioUploaded(const QString &roomid, const QString &filename, const QString &url);
void roomAvatarRetrieved(const QString &roomid, const QPixmap &img);
void userAvatarRetrieved(const QString &userId, const QImage &img);
@@ -116,6 +120,8 @@ signals:
void leftRoom(const QString &room_id);
private:
+ QNetworkReply *makeUploadRequest(const QString &filename);
+
// Client API prefix.
QString clientApiUrl_;
diff --git a/include/TextInputWidget.h b/include/TextInputWidget.h
index 3c338fe3..b208d3f4 100644
--- a/include/TextInputWidget.h
+++ b/include/TextInputWidget.h
@@ -85,8 +85,11 @@ private slots:
signals:
void sendTextMessage(QString msg);
void sendEmoteMessage(QString msg);
+
void uploadImage(QString filename);
void uploadFile(QString filename);
+ void uploadAudio(QString filename);
+
void sendJoinRoomRequest(const QString &room);
void startedTyping();
diff --git a/include/events/MessageEvent.h b/include/events/MessageEvent.h
index 3c4f83e9..08cd926f 100644
--- a/include/events/MessageEvent.h
+++ b/include/events/MessageEvent.h
@@ -55,7 +55,7 @@ struct ThumbnailInfo
{
int h;
int w;
- int size;
+ int size = 0;
QString mimetype;
};
diff --git a/include/events/messages/Audio.h b/include/events/messages/Audio.h
index 8466e0e4..b5666d90 100644
--- a/include/events/messages/Audio.h
+++ b/include/events/messages/Audio.h
@@ -27,7 +27,7 @@ namespace messages {
struct AudioInfo
{
uint64_t duration;
- int size;
+ int size = 0;
QString mimetype;
};
diff --git a/include/events/messages/File.h b/include/events/messages/File.h
index 2fb2aa83..9064a556 100644
--- a/include/events/messages/File.h
+++ b/include/events/messages/File.h
@@ -27,7 +27,7 @@ namespace events {
namespace messages {
struct FileInfo
{
- int size;
+ int size = 0;
QString mimetype;
QString thumbnail_url;
diff --git a/include/events/messages/Image.h b/include/events/messages/Image.h
index 1e709579..03c7a368 100644
--- a/include/events/messages/Image.h
+++ b/include/events/messages/Image.h
@@ -29,7 +29,7 @@ struct ImageInfo
{
int h;
int w;
- int size;
+ int size = 0;
QString mimetype;
QString thumbnail_url;
diff --git a/include/events/messages/Video.h b/include/events/messages/Video.h
index 79713546..6aeaf4d5 100644
--- a/include/events/messages/Video.h
+++ b/include/events/messages/Video.h
@@ -29,7 +29,7 @@ struct VideoInfo
{
int h;
int w;
- int size;
+ int size = 0;
int duration;
QString mimetype;
diff --git a/include/timeline/TimelineViewManager.h b/include/timeline/TimelineViewManager.h
index 854c2550..edb44ecd 100644
--- a/include/timeline/TimelineViewManager.h
+++ b/include/timeline/TimelineViewManager.h
@@ -68,6 +68,7 @@ public slots:
void queueEmoteMessage(const QString &msg);
void queueImageMessage(const QString &roomid, const QString &filename, const QString &url);
void queueFileMessage(const QString &roomid, const QString &filename, const QString &url);
+ void queueAudioMessage(const QString &roomid, const QString &filename, const QString &url);
private slots:
void messageSent(const QString &eventid, const QString &roomid, int txnid);