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 From db93e6b8536efccaa6693536337740854d141b71 Mon Sep 17 00:00:00 2001 From: Nicolas Werner Date: Thu, 11 Jun 2020 18:37:09 +0200 Subject: Fix warning about not registered Presence type --- src/UserSettingsPage.cpp | 1 - src/main.cpp | 3 +++ 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'src/UserSettingsPage.cpp') diff --git a/src/UserSettingsPage.cpp b/src/UserSettingsPage.cpp index 659e8ceb..0bba0506 100644 --- a/src/UserSettingsPage.cpp +++ b/src/UserSettingsPage.cpp @@ -49,7 +49,6 @@ UserSettings::UserSettings() { - qRegisterMetaType(); load(); } diff --git a/src/main.cpp b/src/main.cpp index ec4f638d..04ff5155 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -104,6 +104,9 @@ createCacheDirectory() int main(int argc, char *argv[]) { + // needed for settings so need to register before any settings are read to prevent warings + qRegisterMetaType(); + #if defined(Q_OS_LINUX) || defined(Q_OS_WIN) || defined(Q_OS_FREEBSD) if (qgetenv("QT_SCALE_FACTOR").size() == 0) { float factor = utils::scaleFactor(); -- cgit 1.5.1 From dbaf92734ce34fe6b424b9b06bdb4e129382e9ff Mon Sep 17 00:00:00 2001 From: Joseph Donofry Date: Thu, 11 Jun 2020 22:22:16 -0400 Subject: Fix formatting --- src/UserSettingsPage.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'src/UserSettingsPage.cpp') diff --git a/src/UserSettingsPage.cpp b/src/UserSettingsPage.cpp index 0bba0506..97c42c3e 100644 --- a/src/UserSettingsPage.cpp +++ b/src/UserSettingsPage.cpp @@ -47,10 +47,7 @@ #include "config/nheko.h" -UserSettings::UserSettings() -{ - load(); -} +UserSettings::UserSettings() { load(); } void UserSettings::load() -- cgit 1.5.1