From: Andrew Tropin <andrew@trop.in>
To: emacs-devel@gnu.org
Subject: [PATCH v3] notifications: Allow to use Icon Naming Specification for app-icon
Date: Wed, 26 Jul 2023 15:59:48 +0400 [thread overview]
Message-ID: <87fs5a6fyj.fsf@trop.in> (raw)
In-Reply-To: <877cqpsnct.fsf@trop.in>
[-- Attachment #1: Type: text/plain, Size: 2984 bytes --]
Icon is not always a file name, but can be just an icon name.
https://specifications.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html
* lisp/notifications.el (notifications-notify): Allow to use Icon
Naming Specification for app-icon.
---
Changes since v2: updated NEWS and os.texi.
doc/lispref/os.texi | 3 +++
etc/NEWS | 7 +++++++
lisp/notifications.el | 8 +++++++-
3 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi
index 4bcc9d5fea6..efa89fa387c 100644
--- a/doc/lispref/os.texi
+++ b/doc/lispref/os.texi
@@ -2885,6 +2885,9 @@ Desktop Notifications
@item :app-icon @var{icon-file}
The file name of the notification icon. If set to @code{nil}, no icon
is displayed. The default is @code{notifications-application-icon}.
+If value is a string @code{expand-file-name} will be applied, if value
+is a symbol it will be used as is (helpful when using Icon Naming
+Specification).
@item :actions (@var{key} @var{title} @var{key} @var{title} ...)
A list of actions to be applied. @var{key} and @var{title} are both
diff --git a/etc/NEWS b/etc/NEWS
index 5883b4df2a7..e1a5cbf0340 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -548,6 +548,13 @@ Similarly to buffer restoration by Desktop, 'recentf-mode' checking
of the accessibility of remote files can now time out if
'remote-file-name-access-timeout' is set to a positive number.
+** Notifications
+
++++
+*** Allow to use Icon Naming Specification for app-icon.
+Symbol can be used as a value for :app-icon to provide icon name
+without specifying a file.
+
\f
* New Modes and Packages in Emacs 30.1
diff --git a/lisp/notifications.el b/lisp/notifications.el
index 984ddbec5e9..13353264de3 100644
--- a/lisp/notifications.el
+++ b/lisp/notifications.el
@@ -137,6 +137,9 @@ notifications-notify
:app-icon The notification icon.
Default is `notifications-application-icon'.
Set to nil if you do not want any icon displayed.
+ If value is a string expand-file-name will be
+ applied, if value is a symbol it will be used as
+ is (helpful when using Icon Naming Specification).
:actions A list of actions in the form:
(KEY TITLE KEY TITLE ...)
where KEY and TITLE are both strings.
@@ -304,7 +307,10 @@ notifications-notify
notifications-application-name)
:uint32 (or replaces-id 0)
:string (if app-icon
- (expand-file-name app-icon)
+ (if (stringp app-icon)
+ (expand-file-name app-icon)
+ ;; Convert symbol to string
+ (symbol-name app-icon))
;; If app-icon is nil because user
;; requested it to be so, send the
;; empty string
--
2.41.0
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
next prev parent reply other threads:[~2023-07-26 11:59 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-07-24 8:39 [PATCH] notifications: Don't expand-file-name app-icon Andrew Tropin
2023-07-24 8:39 ` [PATCH v2] notifications: Allow to use Icon Naming Specification for app-icon Andrew Tropin
2023-07-24 12:35 ` [PATCH] notifications: Don't expand-file-name app-icon Eli Zaretskii
2023-07-25 4:39 ` Andrew Tropin
2023-07-25 12:01 ` Eli Zaretskii
2023-07-25 12:59 ` Dmitry Gutov
2023-07-25 13:41 ` Andrew Tropin
2023-07-25 14:05 ` Eli Zaretskii
2023-07-25 16:48 ` Dmitry Gutov
2023-07-25 17:40 ` Eli Zaretskii
2023-07-25 19:09 ` Michael Albinus
2023-07-25 19:18 ` Eli Zaretskii
2023-07-26 7:05 ` Michael Albinus
2023-07-26 11:16 ` Eli Zaretskii
2023-07-26 12:36 ` Matthias Meulien
2023-07-26 13:14 ` Michael Albinus
2023-07-26 17:46 ` Matthias Meulien
2023-07-25 13:48 ` Eli Zaretskii
2023-07-25 10:43 ` Michael Albinus
2023-07-25 12:51 ` Eli Zaretskii
2023-07-25 13:51 ` Andrew Tropin
2023-07-25 14:47 ` Michael Albinus
2023-07-26 6:47 ` Andrew Tropin
2023-07-26 7:13 ` Michael Albinus
2023-07-26 12:05 ` Andrew Tropin
2023-07-26 11:59 ` Andrew Tropin [this message]
2023-07-26 15:23 ` [PATCH v3] notifications: Allow to use Icon Naming Specification for app-icon Eli Zaretskii
2023-07-26 17:46 ` Michael Albinus
2023-07-27 8:38 ` Andrew Tropin
2023-07-27 8:03 ` [PATCH v4] " Andrew Tropin
2023-07-27 11:49 ` Michael Albinus
2023-07-27 12:43 ` Eli Zaretskii
2023-07-27 14:59 ` Michael Albinus
2023-07-28 5:23 ` Andrew Tropin
2023-07-28 7:24 ` Michael Albinus
2023-07-28 11:07 ` Eli Zaretskii
2023-07-28 11:15 ` Michael Albinus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87fs5a6fyj.fsf@trop.in \
--to=andrew@trop.in \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.