aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/connection.cpp9
-rw-r--r--lib/connection.h5
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.
*