diff options
-rw-r--r-- | lib/connection.cpp | 9 | ||||
-rw-r--r-- | lib/connection.h | 5 |
2 files changed, 14 insertions, 0 deletions
diff --git a/lib/connection.cpp b/lib/connection.cpp index d773f0d8..91de2e4e 100644 --- a/lib/connection.cpp +++ b/lib/connection.cpp @@ -1745,6 +1745,15 @@ QStringList Connection::stableRoomVersions() const return l; } +bool Connection::canChangePassword() const +{ + if (!d->capabilities.changePassword) { + // assume we can + return true; + } + return d->capabilities.changePassword->enabled; +} + inline bool roomVersionLess(const Connection::SupportedRoomVersion& v1, const Connection::SupportedRoomVersion& v2) { diff --git a/lib/connection.h b/lib/connection.h index 4f949641..0d22d01f 100644 --- a/lib/connection.h +++ b/lib/connection.h @@ -354,6 +354,11 @@ public: * \sa loadingCapabilities */ QVector<SupportedRoomVersion> availableRoomVersions() const; + /// Indicate if the user can change its password from the client. + /// This is often not the case when SSO is enabled. + /// \sa loadingCapabilities + bool canChangePassword() const; + /** * Call this before first sync to load from previously saved file. * |