Testing upload file && minor UI tweaks.

This commit is contained in:
Black Hat 2018-07-15 16:02:26 +08:00
parent 965dbeff83
commit 4ef063ea82
5 changed files with 24 additions and 22 deletions

View File

@ -137,7 +137,12 @@ Page {
text: "LOGIN" text: "LOGIN"
highlighted: true highlighted: true
onClicked: controller.loginWithCredentials(serverField.text, usernameField.text, passwordField.text) onClicked: {
matriqueController.isLoginChanged.connect( function() {
if (matriqueController.isLogin) stackView.replace(roomPage)
})
controller.loginWithCredentials(serverField.text, usernameField.text, passwordField.text)
}
} }
} }
} }

View File

@ -148,9 +148,13 @@ Item {
id: fileDialog id: fileDialog
title: "Please choose a file" title: "Please choose a file"
folder: shortcuts.home folder: shortcuts.home
selectMultiple: false
onAccepted: { onAccepted: {
console.log("You chose: " + fileDialog.fileUrls) console.log("You chose: " + fileDialog.fileUrl)
currentRoom.uploadFile(fileDialog.fileUrls) currentRoom.uploadFile(fileDialog.fileUrl, fileDialog.fileUrl)
currentRoom.fileTransferCompleted.connect(function(id, localFile, mxcUrl) {
console.log("File transferred: " + id + ":" + mxcUrl)
})
} }
} }
} }

View File

@ -146,7 +146,6 @@ Item {
source: avatar ? "image://mxc/" + avatar : "" source: avatar ? "image://mxc/" + avatar : ""
displayText: name displayText: name
opaqueBackground: true
} }
ColumnLayout { ColumnLayout {
@ -160,15 +159,7 @@ Item {
Layout.fillWidth: true Layout.fillWidth: true
Layout.fillHeight: true Layout.fillHeight: true
text: { text: name ? name : alias ? alias : id
if (name) {
return name;
}
if (alias) {
return alias;
}
return id
}
font.pointSize: 16 font.pointSize: 16
elide: Text.ElideRight elide: Text.ElideRight
wrapMode: Text.NoWrap wrapMode: Text.NoWrap

View File

@ -1,8 +1,10 @@
#include "controller.h" #include "controller.h"
#include "connection.h" #include "connection.h"
#include "events/eventcontent.h"
#include "events/roommessageevent.h"
Controller::Controller(QObject *parent) : QObject(parent) { Controller::Controller(QObject* parent) : QObject(parent) {
connect(m_connection, &QMatrixClient::Connection::connected, this, connect(m_connection, &QMatrixClient::Connection::connected, this,
&Controller::connected); &Controller::connected);
connect(m_connection, &QMatrixClient::Connection::resolveError, this, connect(m_connection, &QMatrixClient::Connection::resolveError, this,
@ -56,10 +58,6 @@ void Controller::logout() {
setIsLogin(false); setIsLogin(false);
} }
void Controller::uploadFile(QString filename) {
m_connection->uploadFile(filename);
}
void Controller::connected() { void Controller::connected() {
qDebug() << "Logged in."; qDebug() << "Logged in.";
setHomeserver(m_connection->homeserver().toString()); setHomeserver(m_connection->homeserver().toString());
@ -80,3 +78,9 @@ void Controller::reconnect() {
qDebug() << "Connection lost. Reconnecting..."; qDebug() << "Connection lost. Reconnecting...";
m_connection->connectWithToken(userID, token, ""); m_connection->connectWithToken(userID, token, "");
} }
void Controller::postFile(QMatrixClient::Room* room,
const QUrl& localFilename) {
// auto job = m_connection->uploadFile(localFilename.toLocalFile());
// room->fileTransferInfo(localFilename.fileName())
}

View File

@ -13,8 +13,7 @@ class Connection;
class Controller : public QObject { class Controller : public QObject {
Q_OBJECT Q_OBJECT
Q_PROPERTY(QMatrixClient::Connection* connection READ getConnection NOTIFY Q_PROPERTY(QMatrixClient::Connection* connection READ getConnection CONSTANT)
connectionChanged)
Q_PROPERTY( Q_PROPERTY(
bool isLogin READ getIsLogin WRITE setIsLogin NOTIFY isLoginChanged) bool isLogin READ getIsLogin WRITE setIsLogin NOTIFY isLoginChanged)
Q_PROPERTY(QString homeserver READ getHomeserver WRITE setHomeserver NOTIFY Q_PROPERTY(QString homeserver READ getHomeserver WRITE setHomeserver NOTIFY
@ -32,8 +31,6 @@ class Controller : public QObject {
Q_INVOKABLE void loginWithCredentials(QString, QString, QString); Q_INVOKABLE void loginWithCredentials(QString, QString, QString);
Q_INVOKABLE void logout(); Q_INVOKABLE void logout();
Q_INVOKABLE void uploadFile(QString);
// All the non-Q_INVOKABLE functions. // All the non-Q_INVOKABLE functions.
// All the Q_PROPERTYs. // All the Q_PROPERTYs.
@ -100,6 +97,7 @@ class Controller : public QObject {
void errorOccured(); void errorOccured();
public slots: public slots:
void postFile(QMatrixClient::Room* room, const QUrl& localFilename);
}; };
#endif // CONTROLLER_H #endif // CONTROLLER_H