notify: add the notify-focus-inhibit config option

foot doesn't show desktop notifications (via OSC777) if the current
terminal has keyboard focus.

This is probably a sane default, but there are use cases where showing
a notification regardless of the focus status may be desired. For
example, a completion notification of a long running task inside a
non-focused tmux window.

This PR adds the notify-focus-inhibit option which can be used to
disable inhibition of notifications when the window has focus.

The default value is `yes`, which retains the old behavior.
This commit is contained in:
Mitja Horvat 2021-10-05 23:07:01 +02:00
parent b1c03861cd
commit 729f7466ae
6 changed files with 27 additions and 8 deletions

View file

@ -1012,6 +1012,10 @@ parse_section_main(const char *key, const char *value, struct config *conf,
}
}
else if (strcmp(key, "notify-focus-inhibit") == 0) {
conf->notify_focus_inhibit = str_to_bool(value);
}
else if (strcmp(key, "url-launch") == 0) {
deprecated_url_option(
conf, "url-launch", "launch", path, lineno);
@ -2956,6 +2960,7 @@ config_load(struct config *conf, const char *conf_path,
.notify = {
.argv = {.args = NULL},
},
.notify_focus_inhibit = true,
.tweak = {
.fcft_filter = FCFT_SCALING_FILTER_LANCZOS3,