Function: eww-restore-desktop
eww-restore-desktop is a byte-compiled function defined in eww.el.gz.
Signature
(eww-restore-desktop FILE-NAME BUFFER-NAME MISC-DATA)
Documentation
Restore an eww buffer from its desktop file record.
If eww-restore-desktop(var)/eww-restore-desktop(fun) is t or auto, this function will also
initiate the retrieval of the respective URI in the background.
Otherwise, the restored buffer will contain a prompt to do so by using
M-x eww-reload (eww-reload).
Source Code
;; Defined in /usr/src/emacs/lisp/net/eww.el.gz
(defun eww-restore-desktop (file-name buffer-name misc-data)
"Restore an eww buffer from its desktop file record.
If `eww-restore-desktop' is t or `auto', this function will also
initiate the retrieval of the respective URI in the background.
Otherwise, the restored buffer will contain a prompt to do so by using
\\[eww-reload]."
(with-current-buffer (get-buffer-create buffer-name)
(eww-mode)
;; NB: eww-history, eww-data are buffer-local per (eww-mode)
(setq eww-history (cdr (plist-get misc-data :history))
eww-data (or (car (plist-get misc-data :history))
;; backwards compatibility
(list :url (plist-get misc-data :uri)))
eww-history-position (plist-get misc-data :history-position))
(unless file-name
(when (plist-get eww-data :url)
(cl-case eww-restore-desktop
((t auto) (eww (plist-get eww-data :url)))
((nil) (when (zerop (buffer-size))
(let ((inhibit-read-only t))
(insert (substitute-command-keys
eww-restore-reload-prompt))))))))
;; .
(current-buffer)))