From f2bfa61e086266a1c1e39e39dd8228c9451b2707 Mon Sep 17 00:00:00 2001 From: Nicolas Werner Date: Mon, 8 Jun 2020 20:26:37 +0200 Subject: Add menu actions to set presence --- src/UserSettingsPage.cpp | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'src/UserSettingsPage.cpp') diff --git a/src/UserSettingsPage.cpp b/src/UserSettingsPage.cpp index dfd99069..659e8ceb 100644 --- a/src/UserSettingsPage.cpp +++ b/src/UserSettingsPage.cpp @@ -34,6 +34,7 @@ #include #include #include +#include #include "Cache.h" #include "Config.h" @@ -46,7 +47,11 @@ #include "config/nheko.h" -UserSettings::UserSettings() { load(); } +UserSettings::UserSettings() +{ + qRegisterMetaType(); + load(); +} void UserSettings::load() @@ -72,6 +77,9 @@ UserSettings::load() decryptSidebar_ = settings.value("user/decrypt_sidebar", true).toBool(); emojiFont_ = settings.value("user/emoji_font_family", "default").toString(); baseFontSize_ = settings.value("user/font_size", QFont().pointSizeF()).toDouble(); + presence_ = + settings.value("user/presence", QVariant::fromValue(Presence::AutomaticPresence)) + .value(); applyTheme(); } @@ -243,6 +251,16 @@ UserSettings::setEmojiFontFamily(QString family) save(); } +void +UserSettings::setPresence(Presence state) +{ + if (state == presence_) + return; + presence_ = state; + emit presenceChanged(state); + save(); +} + void UserSettings::setTheme(QString theme) { @@ -337,6 +355,7 @@ UserSettings::save() settings.setValue("theme", theme()); settings.setValue("font_family", font_); settings.setValue("emoji_font_family", emojiFont_); + settings.setValue("presence", QVariant::fromValue(presence_)); settings.endGroup(); -- cgit 1.5.1