dalanicolai / image-roll.el

Virtual scroll display engine for Emacs
80 stars 4 forks source link

Not working when pages are equal to or less than the size of the containing window #16

Open skyler544 opened 1 year ago

skyler544 commented 1 year ago

Minimal configuration to reproduce:

(package-initialize)

(when (and (not (package-installed-p 'use-package)) (assoc 'use-package package-archive-contents))
    (package-install 'use-package))

(use-package image-roll
  :ensure nil
  :load-path "~/build/image-roll.el/"
  :init (require 'image-roll)
  :after pdf-view
  :hook (pdf-view-mode . pdf-view-roll-minor-mode))

(use-package pdf-tools
  :ensure nil
  :load-path "~/build/pdf-tools/lisp")

In this case, the pdf-tools package is your fork with the image roll branch checked out.

Now try opening a pdf file with vertically small pages, such as a slideshow (installing pdf-tools if needed). Try scrolling, and observe that nothing happens.

The default command for scrolling in this view is pdf-view-next-line-or-next-page, but the bug also occurs if you try calling image-roll-scroll-forward directly.

I looked at the code but was unable to come up with a fix myself, though I'm relatively sure that the bug does not actually stem from the image-roll-scroll-forward function, but from the image-roll-update-displayed-pages function.

dalanicolai commented 1 year ago

Thanks for reporting the issue. I have tested it and can confirm the bug. However, I am not maintaining this package anymore. I have written a better alternative to image roll in doc-scroll.el, which you can find here. That repo also contains several backends for displaying PDF's (and DJVU's) with doc-scroll (more info you can find in the README...) but unfortunately I had no time to integrate it with PDF-tools (PDF-tools is quite a complex library, and it is really not designed for continuous scrolling. Getting image-roll to work with it costed me quite some time also). If you are only reading PDF's, then doc-scroll might be an okay alternative (although it is really not finished, and unfortunately I am not in a privileged position to be able to finish it soon). However, if you'd also like to make annotations, then image-roll is probably the better alternative.

B.t.w. if your pages are smaller than the buffer, I guess/hope using the default pdf-tools scrolling should not be a too bad alternative... Anyway, good luck :)

aikrahguzar commented 1 year ago

This is one of the issues I think I have fixed. See https://github.com/dalanicolai/image-roll.el/issues/19#issue-1773304146 for details.