diff --git a/src/ui/RoomSettings.h b/src/ui/RoomSettings.h
index f79aa3f7..9912cfd6 100644
--- a/src/ui/RoomSettings.h
+++ b/src/ui/RoomSettings.h
@@ -5,9 +5,7 @@
#pragma once
-#include <QLabel>
#include <QObject>
-#include <QPushButton>
#include <QSet>
#include <QString>
@@ -16,8 +14,6 @@
#include "CacheStructs.h"
-class TextField;
-
/// Convenience class which connects events emmited from threads
/// outside of main with the UI code.
class ThreadProxy : public QObject
@@ -31,40 +27,6 @@ signals:
void stopLoading();
};
-class EditModal : public QWidget
-{
- Q_OBJECT
-
-public:
- EditModal(const QString &roomId, QWidget *parent = nullptr);
-
- void setFields(const QString &roomName, const QString &roomTopic);
-
-signals:
- void nameChanged(const QString &roomName);
- void topicChanged(const QString &topic);
-
-private slots:
- void topicEventSent(const QString &topic);
- void nameEventSent(const QString &name);
- void error(const QString &msg);
-
- void applyClicked();
-
-private:
- QString roomId_;
- QString initialName_;
- QString initialTopic_;
-
- QLabel *errorField_;
-
- TextField *nameInput_;
- TextField *topicInput_;
-
- QPushButton *applyBtn_;
- QPushButton *cancelBtn_;
-};
-
class RoomSettings : public QObject
{
Q_OBJECT
@@ -72,6 +34,8 @@ class RoomSettings : public QObject
Q_PROPERTY(QString roomVersion READ roomVersion CONSTANT)
Q_PROPERTY(QString roomName READ roomName NOTIFY roomNameChanged)
Q_PROPERTY(QString roomTopic READ roomTopic NOTIFY roomTopicChanged)
+ Q_PROPERTY(QString plainRoomName READ plainRoomName NOTIFY roomNameChanged)
+ Q_PROPERTY(QString plainRoomTopic READ plainRoomTopic NOTIFY roomTopicChanged)
Q_PROPERTY(QString roomAvatarUrl READ roomAvatarUrl NOTIFY avatarUrlChanged)
Q_PROPERTY(int memberCount READ memberCount CONSTANT)
Q_PROPERTY(int notifications READ notifications NOTIFY notificationsChanged)
@@ -79,7 +43,8 @@ class RoomSettings : public QObject
Q_PROPERTY(bool isLoading READ isLoading NOTIFY loadingChanged)
Q_PROPERTY(bool canChangeAvatar READ canChangeAvatar CONSTANT)
Q_PROPERTY(bool canChangeJoinRules READ canChangeJoinRules CONSTANT)
- Q_PROPERTY(bool canChangeNameAndTopic READ canChangeNameAndTopic CONSTANT)
+ Q_PROPERTY(bool canChangeName READ canChangeName CONSTANT)
+ Q_PROPERTY(bool canChangeTopic READ canChangeTopic CONSTANT)
Q_PROPERTY(bool isEncryptionEnabled READ isEncryptionEnabled NOTIFY encryptionChanged)
Q_PROPERTY(bool supportsKnocking READ supportsKnocking CONSTANT)
Q_PROPERTY(bool supportsRestricted READ supportsRestricted CONSTANT)
@@ -90,6 +55,8 @@ public:
QString roomId() const;
QString roomName() const;
QString roomTopic() const;
+ QString plainRoomName() const;
+ QString plainRoomTopic() const;
QString roomVersion() const;
QString roomAvatarUrl();
int memberCount() const;
@@ -98,8 +65,10 @@ public:
bool isLoading() const;
//! Whether the user has enough power level to send m.room.join_rules events.
bool canChangeJoinRules() const;
- //! Whether the user has enough power level to send m.room.name & m.room.topic events.
- bool canChangeNameAndTopic() const;
+ //! Whether the user has enough power level to send m.room.name.
+ bool canChangeName() const;
+ //! Whether the user has enough power level to send m.room.topic events.
+ bool canChangeTopic() const;
//! Whether the user has enough power level to send m.room.avatar event.
bool canChangeAvatar() const;
bool isEncryptionEnabled() const;
@@ -108,9 +77,10 @@ public:
Q_INVOKABLE void enableEncryption();
Q_INVOKABLE void updateAvatar();
- Q_INVOKABLE void openEditModal();
Q_INVOKABLE void changeAccessRules(int index);
Q_INVOKABLE void changeNotifications(int currentIndex);
+ Q_INVOKABLE void changeTopic(QString topic);
+ Q_INVOKABLE void changeName(QString name);
signals:
void loadingChanged();
|