diff options
-rw-r--r-- | room.cpp | 8 | ||||
-rw-r--r-- | room.h | 1 |
2 files changed, 9 insertions, 0 deletions
@@ -59,6 +59,7 @@ class Room::Private: public QObject int notificationCount; QList<User*> users; QList<User*> usersTyping; + QList<User*> membersLeft; QHash<User*, QString> lastReadEvent; QString prevBatch; bool gettingNewContent; @@ -194,6 +195,11 @@ QList< User* > Room::usersTyping() const return d->usersTyping; } +QList< User* > Room::membersLeft() const +{ + return d->membersLeft; +} + QList< User* > Room::users() const { return d->users; @@ -336,6 +342,8 @@ void Room::processStateEvent(Event* event) and d->users.contains(u) ) { d->users.removeAll(u); + if ( !d->membersLeft.contains(u) ) + d->membersLeft.append(u); emit userRemoved(u); } } @@ -49,6 +49,7 @@ namespace QMatrixClient Q_INVOKABLE QString topic() const; Q_INVOKABLE JoinState joinState() const; Q_INVOKABLE QList<User*> usersTyping() const; + QList<User*> membersLeft() const; Q_INVOKABLE QList<User*> users() const; |