/** * Copyright (c) 2017-present, Status Research and Development GmbH. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. * */ #ifndef DESKTOPNOTIFICATION_H #define DESKTOPNOTIFICATION_H #include "moduleinterface.h" #include #include Q_DECLARE_LOGGING_CATEGORY(NOTIFICATION) class DesktopNotificationPrivate; class DesktopNotification : public QObject, public ModuleInterface { Q_OBJECT Q_INTERFACES(ModuleInterface) Q_DECLARE_PRIVATE(DesktopNotification) public: Q_INVOKABLE DesktopNotification(QObject* parent = 0); ~DesktopNotification(); void setBridge(Bridge* bridge) override; QString moduleName() override; QList methodsToExport() override; QVariantMap constantsToExport() override; Q_INVOKABLE void displayNotification(QString title, QString body, bool prioritary); Q_INVOKABLE void setDockBadgeLabel(const QString label); private: QScopedPointer d_ptr; bool m_appHasFocus = false; }; #endif // DESKTOPNOTIFICATION_H