diff options
| author | Tom Tromey <tromey@redhat.com> | 2012-12-17 07:56:22 -0700 |
|---|---|---|
| committer | Tom Tromey <tromey@redhat.com> | 2012-12-17 07:56:22 -0700 |
| commit | 3d6eced1ae51ffd0a782130e7c334052277e2724 (patch) | |
| tree | 5d1d2ad7cd3374f922886c4a72062511a035c168 /lisp/notifications.el | |
| parent | bf69f522a9e135f9aa483cedd53e71e915f2bf75 (diff) | |
| parent | 7c3d167f48d6262ee4e5512aa50a07ee96bc1509 (diff) | |
| download | emacs-3d6eced1ae51ffd0a782130e7c334052277e2724.tar.gz | |
merge from trunk
Diffstat (limited to 'lisp/notifications.el')
| -rw-r--r-- | lisp/notifications.el | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/lisp/notifications.el b/lisp/notifications.el index 792298c26b7..6f477eb4cdd 100644 --- a/lisp/notifications.el +++ b/lisp/notifications.el @@ -66,6 +66,9 @@ (defconst notifications-get-capabilities-method "GetCapabilities" "D-Bus notifications get capabilities method.") +(defconst notifications-get-server-information-method "GetServerInformation" + "D-Bus notifications get server information method.") + (defconst notifications-action-signal "ActionInvoked" "D-Bus notifications action signal.") @@ -349,7 +352,7 @@ BUS can be a string denoting a D-Bus connection, the default is `:session'." (defvar dbus-debug) ; used in the macroexpansion of dbus-ignore-errors (defun notifications-get-capabilities (&optional bus) - "Return the capabilities of the notification server, a list of strings. + "Return the capabilities of the notification server, a list of symbols. BUS can be a string denoting a D-Bus connection, the default is `:session'. The following capabilities can be expected: @@ -371,12 +374,34 @@ The following capabilities can be expected: Further vendor-specific caps start with `:x-vendor', like `:x-gnome-foo-cap'." (dbus-ignore-errors - (mapcar - (lambda (x) (intern (concat ":" x))) + (mapcar + (lambda (x) (intern (concat ":" x))) + (dbus-call-method (or bus :session) + notifications-service + notifications-path + notifications-interface + notifications-get-capabilities-method)))) + +(defun notifications-get-server-information (&optional bus) + "Return information on the notification server, a list of strings. +BUS can be a string denoting a D-Bus connection, the default is `:session'. +The returned list is (NAME VENDOR VERSION SPEC-VERSION). + + NAME The product name of the server. + VENDOR The vendor name. For example, \"KDE\", \"GNOME\". + VERSION The server's version number. + SPEC-VERSION The specification version the server is compliant with. + +If SPEC_VERSION is missing, the server supports a specification +prior to \"1.0\". + +See `notifications-specification-version' for the specification +version this library is compliant with." + (dbus-ignore-errors (dbus-call-method (or bus :session) notifications-service notifications-path notifications-interface - notifications-get-capabilities-method)))) + notifications-get-server-information-method))) (provide 'notifications) |
