#pragma once #include #include #include #include #include #include #include "glibmm/variant.h" struct MprisPlayer2Message { std::string title; std::string artist; std::string artwork_url; uint32_t length_ms; std::function play_pause; std::function next; std::function previous; }; struct NotifyMessage { std::string app_name; uint32_t replaces_id; std::string app_icon; std::string summary; std::string body; std::vector actions; std::map hints; int32_t expire_timeout; // Callback to invoke when an action is triggered std::function on_action; };