From: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com> Date: Sun, 12 Jan 2020 07:50:13 +0000 (+0100) Subject: Generalized connection check, now working for every user in account menu X-Git-Tag: archive/raspbian/3.16.7-1_deb13u1+rpi1~1^2~222^2^2~413^2~61 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=bc8f64bb983fa57ac6ed4d516210483f7ec79d7a;p=nextcloud-desktop.git Generalized connection check, now working for every user in account menu Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com> --- diff --git a/src/gui/tray/UserLine.qml b/src/gui/tray/UserLine.qml index 1bfd65c55..82188aad8 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 2018daf0c..f8223d424 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 ee7198641..c1a390daf 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);