Function: pdf-cache--prefetch-pages
pdf-cache--prefetch-pages is a natively compiled function defined in
pdf-cache.el.
Signature
(pdf-cache--prefetch-pages WINDOW IMAGE-WIDTH)
Documentation
Internal function to prefetch pages and store them in the cache.
WINDOW and IMAGE-WIDTH decide the page and scale of the final image.
Source Code
;; Defined in /nix/store/63h5z2vmzn0mfavcxi2idi23g5xcgkbl-emacs-packages-deps/share/emacs/site-lisp/elpa/pdf-tools-20260102.1101/pdf-cache.el
(defun pdf-cache--prefetch-pages (window image-width)
"Internal function to prefetch pages and store them in the cache.
WINDOW and IMAGE-WIDTH decide the page and scale of the final image."
(when (and (eq window (selected-window))
(pdf-util-pdf-buffer-p))
(let ((page (pop pdf-cache--prefetch-pages)))
(while (and page
(pdf-cache-lookup-image
page
image-width
(if pdf-view-use-scaling
(* 2 image-width)
image-width)))
(setq page (pop pdf-cache--prefetch-pages)))
(pdf-util-debug
(when (null page)
(message "Prefetching done.")))
(when page
(let* ((buffer (current-buffer))
(pdf-info-asynchronous
(lambda (status data)
(when (and (null status)
(eq window
(selected-window))
(eq buffer (window-buffer)))
(with-current-buffer (window-buffer)
(when (derived-mode-p 'pdf-view-mode)
(pdf-cache-put-image
page image-width data)
(image-size (pdf-view-create-page page))
(pdf-util-debug
(message "Prefetched page %s." page))
(pdf-cache--prefetch-pages window image-width)))))))
(condition-case err
(pdf-info-renderpage page image-width)
(error
(pdf-cache-prefetch-minor-mode -1)
(signal (car err) (cdr err)))))))))