aboutsummaryrefslogtreecommitdiff
path: root/emacs/guix-info.el
diff options
context:
space:
mode:
authorAlex Kost <alezost@gmail.com>2015-11-22 13:21:18 +0300
committerAlex Kost <alezost@gmail.com>2016-01-02 17:25:35 +0300
commit819518d15a4ca6ef4ce0844d89e990ffd46ee3a0 (patch)
tree00d457ec61e45e33f64afb3b7125776d72d9ee92 /emacs/guix-info.el
parente40b3c33f4750dcbe83012eb4e5b8e786f9f71b1 (diff)
downloadguix-819518d15a4ca6ef4ce0844d89e990ffd46ee3a0.tar
guix-819518d15a4ca6ef4ce0844d89e990ffd46ee3a0.tar.gz
emacs: Generalize buffer redisplaying.
* emacs/guix-base.el (guix-buffer-after-redisplay-hook): New variable. (guix-redisplay-buffer): Use it. Remove all arguments and the code for moving point to the next button. Rename to... (guix-buffer-redisplay): ... this. (guix-buffer-redisplay-goto-button): New procedure. * emacs/guix-info.el (guix-package-info-show-source): Use it. Adjust accordingly. (guix-package-info-redisplay-after-download): Likewise.
Diffstat (limited to 'emacs/guix-info.el')
-rw-r--r--emacs/guix-info.el15
1 files changed, 9 insertions, 6 deletions
diff --git a/emacs/guix-info.el b/emacs/guix-info.el
index 6e50d34c4d..b52bd73322 100644
--- a/emacs/guix-info.el
+++ b/emacs/guix-info.el
@@ -714,14 +714,16 @@ prompt depending on `guix-operation-confirm' variable)."
Find the file if needed (see `guix-package-info-auto-find-source').
ENTRY-ID is an ID of the current entry (package or output).
PACKAGE-ID is an ID of the package which source to show."
- (let* ((entry (guix-entry-by-id entry-id guix-entries))
- (file (guix-package-source-path package-id)))
+ (let* ((entries guix-entries)
+ (entry (guix-entry-by-id entry-id guix-entries))
+ (file (guix-package-source-path package-id)))
(or file
- (error "Couldn't define file path of the package source"))
+ (error "Couldn't define file name of the package source"))
(let* ((new-entry (cons (cons 'source-file file)
entry))
- (entries (guix-replace-entry entry-id new-entry guix-entries)))
- (guix-redisplay-buffer :entries entries)
+ (new-entries (guix-replace-entry entry-id new-entry entries)))
+ (setq guix-entries new-entries)
+ (guix-buffer-redisplay-goto-button)
(if (file-exists-p file)
(if guix-package-info-auto-find-source
(guix-find-file file)
@@ -770,7 +772,8 @@ SOURCE is a list of URLs."
"Redisplay an 'info' buffer after downloading the package source.
This function is used to hide a \"Download\" button if needed."
(when (buffer-live-p guix-package-info-download-buffer)
- (guix-redisplay-buffer :buffer guix-package-info-download-buffer)
+ (with-current-buffer guix-package-info-download-buffer
+ (guix-buffer-redisplay-goto-button))
(setq guix-package-info-download-buffer nil)))
(add-hook 'guix-after-source-download-hook