diff --git a/config.c b/config.c index 409469ef..7b403e3c 100644 --- a/config.c +++ b/config.c @@ -3231,7 +3231,7 @@ config_load(struct config *conf, const char *conf_path, parse_modifiers(XKB_MOD_NAME_SHIFT, 5, &conf->mouse.selection_override_modifiers); tokenize_cmdline( - "notify-send --wait --app-name ${app-id} --icon ${icon} --urgency ${urgency} --action ${action-name}=${action-label} --print-id -- ${title} ${body}", + "notify-send --wait --app-name ${app-id} --icon ${app-id} --urgency ${urgency} --hint STRING:image-path:${icon} --action ${action-name}=${action-label} --print-id -- ${title} ${body}", &conf->desktop_notifications.command.argv.args); tokenize_cmdline("xdg-open ${url}", &conf->url.launch.argv.args); diff --git a/doc/foot.ini.5.scd b/doc/foot.ini.5.scd index df219e7b..85063088 100644 --- a/doc/foot.ini.5.scd +++ b/doc/foot.ini.5.scd @@ -511,7 +511,7 @@ Note: do not set *TERM* here; use the *term* option in the main action=default++ xdgtoken=95ebdfe56e4f47ddb5bba9d7dc3a2c35 - Default: _notify-send --wait --app-name ${app-id} --icon ${icon} --urgency ${urgency} --action ${action-name}=${action-label} --print-id -- ${title} ${body}_. + Default: _notify-send --wait --app-name ${app-id} --icon ${app-id} --urgency ${urgency} --hint STRING:image-path:${icon} --action ${action-name}=${action-label} --print-id -- ${title} ${body}_. *close* Command to execute to close an existing notification. diff --git a/foot.ini b/foot.ini index cead651a..aeda18df 100644 --- a/foot.ini +++ b/foot.ini @@ -47,7 +47,7 @@ # command-focused=no [desktop-notifications] -# command=notify-send --wait --app-name ${app-id} --icon ${icon} --urgency ${urgency} --action ${action-name}=${action-label} --print-id -- ${title} ${body} +# command=notify-send --wait --app-name ${app-id} --icon ${app-id} --urgency ${urgency} --hint STRING:image-path:${icon} --action ${action-name}=${action-label} --print-id -- ${title} ${body} # close="" # inhibit-when-focused=yes diff --git a/notify.c b/notify.c index 7c5f0731..c82c86f0 100644 --- a/notify.c +++ b/notify.c @@ -223,11 +223,8 @@ notify_notify(struct terminal *term, struct notification *notif) const char *title = notif->title != NULL ? notif->title : notif->body; const char *body = notif->title != NULL && notif->body != NULL ? notif->body : ""; - /* Icon: use symbolic name from notification, if present, - otherwise fallback to the application ID */ - const char *icon_name_or_path = term->app_id != NULL - ? term->app_id - : term->conf->app_id; + /* Icon: symbolic name if present, otherwise a filename */ + const char *icon_name_or_path = ""; if (notif->icon_id != NULL) { for (size_t i = 0; i < ALEN(term->notification_icons); i++) {