Add a way for distros to recommend joining a space

Implements #137
This commit is contained in:
Tobias Fella
2024-01-29 23:12:51 +01:00
parent 292cfb0d3d
commit 4ebcc36fb3
5 changed files with 158 additions and 0 deletions

View File

@@ -31,6 +31,11 @@ class SpaceHierarchyCache : public QObject
QML_SINGLETON
Q_PROPERTY(NeoChatConnection *connection READ connection WRITE setConnection NOTIFY connectionChanged)
Q_PROPERTY(QString recommendedSpaceId READ recommendedSpaceId CONSTANT)
Q_PROPERTY(QString recommendedSpaceAvatar READ recommendedSpaceAvatar CONSTANT)
Q_PROPERTY(QString recommendedSpaceDisplayName READ recommendedSpaceDisplayName CONSTANT)
Q_PROPERTY(QString recommendedSpaceDescription READ recommendedSpaceDescription CONSTANT)
Q_PROPERTY(bool recommendedSpaceHidden READ recommendedSpaceHidden WRITE setRecommendedSpaceHidden NOTIFY recommendedSpaceHiddenChanged)
public:
static SpaceHierarchyCache &instance()
@@ -76,10 +81,19 @@ public:
NeoChatConnection *connection() const;
void setConnection(NeoChatConnection *connection);
QString recommendedSpaceId() const;
QString recommendedSpaceAvatar() const;
QString recommendedSpaceDisplayName() const;
QString recommendedSpaceDescription() const;
bool recommendedSpaceHidden() const;
void setRecommendedSpaceHidden(bool hidden);
Q_SIGNALS:
void spaceHierarchyChanged();
void connectionChanged();
void spaceNotifcationCountChanged(const QStringList &spaces);
void recommendedSpaceHiddenChanged();
private Q_SLOTS:
void addSpaceToHierarchy(Quotient::Room *room);