From 481a2e36812b0b323eac63161fbd74441c2221ce Mon Sep 17 00:00:00 2001 From: Carl Schwan Date: Fri, 26 Feb 2021 14:15:33 +0100 Subject: [PATCH] Don't show "Close in System Tray button" on Android Fix #273 --- imports/NeoChat/Page/SettingsPage.qml | 3 ++- src/controller.cpp | 9 +++++++++ src/controller.h | 3 +++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/imports/NeoChat/Page/SettingsPage.qml b/imports/NeoChat/Page/SettingsPage.qml index b873cfb3b..4b89dbfd4 100644 --- a/imports/NeoChat/Page/SettingsPage.qml +++ b/imports/NeoChat/Page/SettingsPage.qml @@ -17,9 +17,10 @@ Kirigami.ScrollablePage { Kirigami.FormLayout { QQC2.CheckBox { - Kirigami.FormData.label: i18nc("General settings:") + Kirigami.FormData.label: i18n("General settings:") text: i18n("Close to system tray") checked: Config.systemTray + visible: Controller.supportSystemTray onToggled: { Config.systemTray = checked Config.save() diff --git a/src/controller.cpp b/src/controller.cpp index d88f75ce4..d1f5c7f9a 100644 --- a/src/controller.cpp +++ b/src/controller.cpp @@ -404,6 +404,15 @@ KAboutData Controller::aboutData() const return m_aboutData; } +bool Controller::supportSystemTray() const +{ +#ifdef Q_OS_ANDROID + return false; +#else + return true; +#endif +} + void Controller::changePassword(Connection *connection, const QString ¤tPassword, const QString &newPassword) { NeochatChangePasswordJob *job = connection->callApi(newPassword, false); diff --git a/src/controller.h b/src/controller.h index 0c74b807f..471b42723 100644 --- a/src/controller.h +++ b/src/controller.h @@ -33,6 +33,7 @@ class Controller : public QObject Q_PROPERTY(Connection *activeConnection READ activeConnection WRITE setActiveConnection NOTIFY activeConnectionChanged) Q_PROPERTY(bool busy READ busy WRITE setBusy NOTIFY busyChanged) Q_PROPERTY(KAboutData aboutData READ aboutData WRITE setAboutData NOTIFY aboutDataChanged) + Q_PROPERTY(bool supportSystemTray READ supportSystemTray CONSTANT) public: static Controller &instance(); @@ -60,6 +61,8 @@ public: void setAboutData(const KAboutData &aboutData); [[nodiscard]] KAboutData aboutData() const; + [[nodiscard]] bool supportSystemTray() const; + bool saveAccessTokenToFile(const AccountSettings &account, const QByteArray &accessToken); bool saveAccessTokenToKeyChain(const AccountSettings &account, const QByteArray &accessToken);