/* SPDX-FileCopyrightText: 2018 Volker Krause SPDX-License-Identifier: LGPL-2.0-or-later */ #ifndef NOTIFYBYANDROID_H #define NOTIFYBYANDROID_H #include "knotificationplugin.h" #include #include /** Android notification backend. */ class NotifyByAndroid : public KNotificationPlugin { Q_OBJECT public: explicit NotifyByAndroid(QObject *parent = nullptr); ~NotifyByAndroid() override; // interface of KNotificationPlugin QString optionName() override; void notify(KNotification *notification, const KNotifyConfig ¬ifyConfig) override; void update(KNotification *notification, const KNotifyConfig ¬ifyConfig) override; void close(KNotification *notification) override; // interface from Java void notificationFinished(int id); void notificationActionInvoked(int id, const QString &action); void notificationInlineReply(int id, const QString &text); private: void notifyDeferred(KNotification *notification); QJniObject createAndroidNotification(KNotification *notification, const KNotifyConfig ¬ifyConfig) const; QJniObject m_backend; QHash> m_notifications; }; #endif // NOTIFYBYANDROID_H