diff --git a/src/gui/tray/UserLine.qml b/src/gui/tray/UserLine.qml index 1bfd65c559..82188aad81 100644 --- a/src/gui/tray/UserLine.qml +++ b/src/gui/tray/UserLine.qml @@ -105,9 +105,9 @@ MenuItem { } MenuItem { - text: userModelBackend.isCurrentUserConnected() ? "Log out" : "Log in" + text: userModelBackend.isUserConnected(index) ? "Log out" : "Log in" onClicked: { - userModelBackend.isCurrentUserConnected() ? userModelBackend.logout(index) : userModelBackend.logout(index) + userModelBackend.isUserConnected(index) ? userModelBackend.logout(index) : userModelBackend.logout(index) } } diff --git a/src/gui/tray/UserModel.cpp b/src/gui/tray/UserModel.cpp index 2018daf0c3..f8223d424e 100644 --- a/src/gui/tray/UserModel.cpp +++ b/src/gui/tray/UserModel.cpp @@ -163,9 +163,9 @@ Q_INVOKABLE int UserModel::numUsers() return _users.size(); } -Q_INVOKABLE bool UserModel::isCurrentUserConnected() +Q_INVOKABLE bool UserModel::isUserConnected(const int &id) { - return _users[_currentUserId].isConnected(); + return _users[id].isConnected(); } Q_INVOKABLE QImage UserModel::currentUserAvatar() diff --git a/src/gui/tray/UserModel.h b/src/gui/tray/UserModel.h index ee71986413..c1a390daff 100644 --- a/src/gui/tray/UserModel.h +++ b/src/gui/tray/UserModel.h @@ -62,11 +62,11 @@ public: Q_INVOKABLE void openCurrentAccountServer(); Q_INVOKABLE QImage currentUserAvatar(); Q_INVOKABLE int numUsers(); - Q_INVOKABLE bool isCurrentUserConnected(); Q_INVOKABLE QString currentUserName(); Q_INVOKABLE QString currentUserServer(); Q_INVOKABLE bool currentUserHasActivities(); Q_INVOKABLE bool currentServerHasTalk(); + Q_INVOKABLE bool isUserConnected(const int &id); Q_INVOKABLE void switchCurrentUser(const int &id); Q_INVOKABLE void login(const int &id); Q_INVOKABLE void logout(const int &id);