11#ifndef DUNST_SETTINGS_H
12#define DUNST_SETTINGS_H
17#include "wayland/protocols/wlr-layer-shell-unstable-v1-client-header.h"
42enum alignment { ALIGN_LEFT, ALIGN_CENTER, ALIGN_RIGHT };
43enum sort_type { SORT_TYPE_ID, SORT_TYPE_URGENCY_ASCENDING, SORT_TYPE_URGENCY_DESCENDING, SORT_TYPE_UPDATE };
44enum vertical_alignment { VERTICAL_TOP, VERTICAL_CENTER, VERTICAL_BOTTOM };
45enum separator_color { SEP_FOREGROUND, SEP_AUTO, SEP_FRAME, SEP_CUSTOM };
46enum follow_mode { FOLLOW_NONE, FOLLOW_MOUSE, FOLLOW_KEYBOARD };
47enum mouse_action { MOUSE_NONE, MOUSE_DO_ACTION, MOUSE_CLOSE_CURRENT, MOUSE_REMOVE_CURRENT,
48 MOUSE_CLOSE_ALL, MOUSE_CONTEXT, MOUSE_CONTEXT_ALL, MOUSE_OPEN_URL,
49 MOUSE_ACTION_END = LIST_END };
50#ifndef ZWLR_LAYER_SHELL_V1_LAYER_ENUM
51#define ZWLR_LAYER_SHELL_V1_LAYER_ENUM
53enum zwlr_layer_shell_v1_layer {
54 ZWLR_LAYER_SHELL_V1_LAYER_BACKGROUND = 0,
55 ZWLR_LAYER_SHELL_V1_LAYER_BOTTOM = 1,
56 ZWLR_LAYER_SHELL_V1_LAYER_TOP = 2,
57 ZWLR_LAYER_SHELL_V1_LAYER_OVERLAY = 3,
61#ifndef ZWLR_LAYER_SURFACE_V1_ANCHOR_ENUM
62#define ZWLR_LAYER_SURFACE_V1_ANCHOR_ENUM
96enum setting_type { TYPE_MIN = 0, TYPE_INT, TYPE_DOUBLE, TYPE_STRING,
97 TYPE_PATH, TYPE_TIME, TYPE_LIST, TYPE_CUSTOM, TYPE_LENGTH, TYPE_COLOR,
98 TYPE_GRADIENT, TYPE_DEPRECATED, TYPE_MAX = TYPE_DEPRECATED + 1 };
101 enum separator_color type;
116 bool print_notifications;
117 bool per_monitor_dpi;
118 bool stack_duplicates;
119 bool hide_duplicate_count;
127 unsigned int transparency;
133 gint64 idle_threshold;
134 gint64 show_age_threshold;
135 enum alignment align;
139 int ignore_dbusclose;
142 int separator_height;
145 int text_icon_padding;
148 struct color frame_color;
149 int startup_notification;
157 enum vertical_alignment vertical_alignment;
159 bool enable_recursive_icon_lookup;
162 enum follow_mode f_mode;
163 bool always_run_script;
171 enum mouse_action *mouse_left_click;
172 enum mouse_action *mouse_middle_click;
173 enum mouse_action *mouse_right_click;
174 int progress_bar_height;
175 int progress_bar_min_width;
176 int progress_bar_max_width;
177 int progress_bar_frame_width;
178 int progress_bar_corner_radius;
179 int icon_corner_radius;
184 enum zwlr_layer_shell_v1_layer layer;
185 enum origin_values origin;
190 int notification_limit;
192 int default_pause_level;
193 bool pause_on_mouse_over;
197extern bool print_notifications;
199void load_settings(
char **
const config_paths);
201void settings_free(
struct settings *s);
Layout and render notifications.
corner_pos
Specify which corner to draw in draw_rouned_rect.
Notification type definitions.
zwlr_layer_surface_v1_anchor
@ ZWLR_LAYER_SURFACE_V1_ANCHOR_BOTTOM
the bottom edge of the anchor rectangle
@ ZWLR_LAYER_SURFACE_V1_ANCHOR_LEFT
the left edge of the anchor rectangle
@ ZWLR_LAYER_SURFACE_V1_ANCHOR_RIGHT
the right edge of the anchor rectangle
@ ZWLR_LAYER_SURFACE_V1_ANCHOR_TOP
the top edge of the anchor rectangle