dunst/src/rules.h
Jordan Galby d879d70da0 Implement stack_tag, implementing x-canonical-private-synchronous
Implements "x-dunst-stack-tag", "x-canonical-private-synchronous",
"private-synchronous", and "synchronous" hints via the "stack_tag" feature.
2018-11-10 14:59:32 +01:00

48 lines
1.1 KiB
C

/* copyright 2013 Sascha Kruse and contributors (see LICENSE for licensing information) */
#ifndef DUNST_RULES_H
#define DUNST_RULES_H
#include <glib.h>
#include <stdbool.h>
#include "notification.h"
#include "settings.h"
struct rule {
char *name;
/* filters */
char *appname;
char *summary;
char *body;
char *icon;
char *category;
char *stack_tag;
int msg_urgency;
/* actions */
gint64 timeout;
enum urgency urgency;
enum markup_mode markup;
int history_ignore;
int match_transient;
int set_transient;
char *new_icon;
char *fg;
char *bg;
char *fc;
const char *format;
const char *script;
enum behavior_fullscreen fullscreen;
char *set_stack_tag;
};
extern GSList *rules;
void rule_init(struct rule *r);
void rule_apply(struct rule *r, struct notification *n);
void rule_apply_all(struct notification *n);
bool rule_matches_notification(struct rule *r, struct notification *n);
#endif
/* vim: set tabstop=8 shiftwidth=8 expandtab textwidth=0: */