close one notification to close all

This commit is contained in:
2026-02-02 21:46:50 +01:00
parent 49ac6cec90
commit ed1a9a8605
21 changed files with 352 additions and 146 deletions

View File

@@ -6,13 +6,14 @@
#include <map>
#include <sys/types.h>
#include <vector>
#include "gdkmm/pixbuf.h"
#include "glibmm/variant.h"
struct MprisPlayer2Message {
std::string title;
std::string artist;
std::vector<std::string> artist;
std::string artwork_url;
int64_t length_ms;
@@ -21,6 +22,12 @@ struct MprisPlayer2Message {
std::function<void()> previous;
};
enum NotificationUrgency {
LOW = 0,
NORMAL = 1,
CRITICAL = 2
};
struct NotifyMessage {
std::string app_name;
uint32_t replaces_id;
@@ -28,8 +35,10 @@ struct NotifyMessage {
std::string summary;
std::string body;
std::vector<std::string> actions;
std::map<std::string, Glib::VariantBase> hints;
NotificationUrgency urgency = NORMAL;
int32_t expire_timeout;
// Callback to invoke when an action is triggered
std::function<void(const std::string& action_id)> on_action;
// image data (if any) from dbus
std::optional<Glib::RefPtr<Gdk::Pixbuf>> imageData;
};