1 files changed, 18 insertions, 0 deletions
diff --git a/src/ChatPage.cpp b/src/ChatPage.cpp
index f2b8253b..673fc9a2 100644
--- a/src/ChatPage.cpp
+++ b/src/ChatPage.cpp
@@ -986,6 +986,8 @@ ChatPage::startInitialSync()
mtx::http::SyncOpts opts;
opts.timeout = 0;
+ opts.set_presence = currentPresence();
+
http::client()->sync(
opts,
std::bind(
@@ -996,6 +998,7 @@ void
ChatPage::trySync()
{
mtx::http::SyncOpts opts;
+ opts.set_presence = currentPresence();
if (!connectivityTimer_.isActive())
connectivityTimer_.start();
@@ -1241,6 +1244,21 @@ ChatPage::setStatus(const QString &status)
});
}
+mtx::presence::PresenceState
+ChatPage::currentPresence() const
+{
+ switch (userSettings_->presence()) {
+ case UserSettings::Presence::Online:
+ return mtx::presence::online;
+ case UserSettings::Presence::Unavailable:
+ return mtx::presence::unavailable;
+ case UserSettings::Presence::Offline:
+ return mtx::presence::offline;
+ default:
+ return mtx::presence::online;
+ }
+}
+
void
ChatPage::initialSyncHandler(const mtx::responses::Sync &res, mtx::http::RequestErr err)
{
|