mirror-chatterino2/src/singletons/Toasts.hpp

34 lines
775 B
C++
Raw Normal View History

2018-08-11 12:47:03 +02:00
#pragma once
#include "Application.hpp"
#include "common/Singleton.hpp"
namespace chatterino {
2018-08-12 18:54:32 +02:00
enum class Platform : uint8_t;
enum class ToastReaction {
OpenInBrowser = 0,
OpenInPlayer = 1,
OpenInStreamlink = 2,
DontOpen = 3
};
2018-08-11 12:47:03 +02:00
class Toasts final : public Singleton
{
public:
2018-08-12 18:54:32 +02:00
void sendChannelNotification(const QString &channelName, Platform p);
static QString findStringFromReaction(const ToastReaction &reaction);
static QString findStringFromReaction(
const pajlada::Settings::Setting<int> &reaction);
static std::map<ToastReaction, QString> reactionToString;
2018-08-12 18:54:32 +02:00
static bool isEnabled();
private:
2018-09-01 13:01:54 +02:00
#ifdef Q_OS_WIN
2018-08-12 18:54:32 +02:00
void sendWindowsNotification(const QString &channelName, Platform p);
2018-09-01 13:01:54 +02:00
#endif
2018-08-11 12:47:03 +02:00
};
} // namespace chatterino