Mercurial > emacs
changeset 107401:f5130b7f5581
Merge from mainline.
author | Katsumi Yamaoka <yamaoka@jpl.org> |
---|---|
date | Tue, 16 Mar 2010 22:06:37 +0000 |
parents | 04a43f5d3336 (current diff) 6c48d0b283da (diff) |
children | e003508e60b1 |
files | |
diffstat | 2 files changed, 36 insertions(+), 31 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Tue Mar 16 00:21:21 2010 +0000 +++ b/lisp/ChangeLog Tue Mar 16 22:06:37 2010 +0000 @@ -1,3 +1,8 @@ +2010-03-16 Michael Albinus <michael.albinus@gmx.de> + + * net/secrets.el (secrets-enabled): New variable. Use it instead + of a subfeature. + 2010-03-15 Michael Albinus <michael.albinus@gmx.de> * net/secrets.el (top): Register the D-Bus signals only when the
--- a/lisp/net/secrets.el Tue Mar 16 00:21:21 2010 +0000 +++ b/lisp/net/secrets.el Tue Mar 16 22:06:37 2010 +0000 @@ -34,11 +34,9 @@ ;; into your .emacs: ;; ;; (require 'secrets) - -;; It can be checked afterwards, whether there is a daemon providing -;; this interface: ;; -;; (featurep 'secrets 'enabled) +;; Afterwards, the variable `secrets-enabled' is non-nil when there is +;; a daemon providing this interface. ;; The atomic objects to be managed by the Secret Service API are ;; secret items, which are something an application wishes to store @@ -150,6 +148,9 @@ (require 'dbus) +(defvar secrets-enabled nil + "Whether there is a daemon offering the Secret Service API." + (defvar secrets-debug t "Write debug messages") @@ -664,38 +665,37 @@ :session secrets-service item-path secrets-interface-item "Delete"))))) -(if (dbus-ping :session secrets-service 100) +(when (dbus-ping :session secrets-service 100) - (progn - ;; We must reset all variables, when there is a new instance of - ;; the "org.freedesktop.secrets" service. - (dbus-register-signal - :session dbus-service-dbus dbus-path-dbus - dbus-interface-dbus "NameOwnerChanged" - (lambda (&rest args) - (when secrets-debug (message "Secret Service has changed: %S" args)) - (setq secrets-session-path secrets-empty-path - secrets-prompt-signal nil - secrets-collection-paths nil)) - secrets-service) + ;; We must reset all variables, when there is a new instance of the + ;; "org.freedesktop.secrets" service. + (dbus-register-signal + :session dbus-service-dbus dbus-path-dbus + dbus-interface-dbus "NameOwnerChanged" + (lambda (&rest args) + (when secrets-debug (message "Secret Service has changed: %S" args)) + (setq secrets-session-path secrets-empty-path + secrets-prompt-signal nil + secrets-collection-paths nil)) + secrets-service) - ;; We want to refresh our cache, when there is a change in - ;; collections. - (dbus-register-signal - :session secrets-service secrets-path - secrets-interface-service "CollectionCreated" - 'secrets-collection-handler) + ;; We want to refresh our cache, when there is a change in + ;; collections. + (dbus-register-signal + :session secrets-service secrets-path + secrets-interface-service "CollectionCreated" + 'secrets-collection-handler) - (dbus-register-signal - :session secrets-service secrets-path - secrets-interface-service "CollectionDeleted" - 'secrets-collection-handler) + (dbus-register-signal + :session secrets-service secrets-path + secrets-interface-service "CollectionDeleted" + 'secrets-collection-handler) - ;; We shall inform, whether the secret service is enabled on - ;; this machine. - (provide 'secrets '(enabled))) + ;; We shall inform, whether the secret service is enabled on this + ;; machine. + (setq secrets-enabled t))) - (provide 'secrets)) +(provide 'secrets) ;;; TODO: