unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: dalanicolai <dalanicolai@gmail.com>
To: Juri Linkov <juri@linkov.net>
Cc: Emacs Devel <emacs-devel@gnu.org>
Subject: Re: {PATCH] continuous scroll for doc-view (FOR REVIEW))
Date: Sat, 15 Jan 2022 19:09:22 +0100	[thread overview]
Message-ID: <CACJP=3nJgTT=tZbySeDEzmiG9u+_MWYscuVx=zk-cGhfe5kVmA@mail.gmail.com> (raw)
In-Reply-To: <CACJP=3mmZG5goWQVxdR+C2g+m2ZctaOKrL_2q=1cBdUdmCoA8Q@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 5192 bytes --]

I have not checked it, but probably to make the 'scaling' work, the
overlays must be drawn in a later stage.
I have it successfully working in pdf-tools, in the simple-continuous-scroll
branch of my pdf-tools fork
<https://github.com/dalanicolai/pdf-tools/tree/simple-continuous-scroll>.
The branch requires the latest version of bookroll.el
<https://github.com/dalanicolai/pdf-tools/tree/simple-continuous-scroll> to
be loaded first.
So, in case anybody is interested in reviewing any code, then probably
reviewing the pdf-tools code
would be more useful (or both the doc-view and the pdf-tools code).

On Fri, 14 Jan 2022 at 12:03, dalanicolai <dalanicolai@gmail.com> wrote:

> About the mouse scrolling not working, I guess it is not filling the
> buffer with empty svg's yet.
> Although I still have to check that assumption. All seemed to work fine
> with keyboard scrolling
> (which I what I more or less use exclusively, e.g. jumping to page goes
> faster by keyboard.
> And there is a nice toc-mode <https://melpa.org/#/toc-mode> package for
> quickly creating outlines. But anyway mouse scroliing
> should also be supported of course).
>
> On Fri, 14 Jan 2022 at 11:44, dalanicolai <dalanicolai@gmail.com> wrote:
>
>> Thanks, if you want you could attach whole files, because program files
>>> take almost no space on mailing list archives, so this is not a problem
>>> (the problem is when someone posts large screenshots, and even a video).
>>>
>>
>> I wanted to do that already... terrible how in the end I did forget to
>> attach the files...
>>
>>
>>> If it could be used for other images such as for image galleries,
>>> then it should be a separate package like image-mode.
>>>
>>
>> Well, I think I really wouldn't want continuous scroll for images. So I
>> think a separate
>> library for image galleries would be better. I think the logic for only
>> showing full images
>> is a slightly simpler and therefore could be made more flexible. Creating
>> the overlays is
>> really just a few lines. But I am not sure, how exactly the code for an
>> image gallery
>> should look like. Maybe in the end, some code could be shared.
>>
>> A triplet or a doublet means that the scroll bar can't be used for
>>> scrolling all pages?  Have you tried to prefill with overlays for all
>>> pages?
>>>
>>
>> Yes, like in the Proof of Concept, all overlays are inserted at once, but
>> they are 'triplet'
>> only showing a triplet of images at the time. So the full buffer can be
>> scrolled with the
>> mouse/scroll-bar, but for some reason updating the images in that case
>> does not seem
>> to work yet (although from the code I would expect it should).
>>
>> Anyway, This time I'll send the message including the attachments... you
>> can have a look
>> (see first message for instructions, if necessary).
>>
>>
>> On Fri, 14 Jan 2022 at 09:19, Juri Linkov <juri@linkov.net> wrote:
>>
>>> > I'd really like to mention that I get no hits when searching for that
>>> > thread (actually searching
>>> > for 'the original thread') when searching on `multi image PDF` in the
>>> Emacs
>>> > devel archive.
>>> > (This time) it is not due to too many results. Would be great if you
>>> could
>>> > inform me why that does not work.
>>>
>>> Trying to search any recent subject shows that indexing on mailing lists
>>> was disabled for a few last months.
>>>
>>> > So I will attach two files here, the first is an 'adapted' bookroll.el
>>> > file, and the second is a
>>> > a modified doc-view file that implements the first 'rudimentary'
>>> continuous
>>> > scroll for PDF
>>> > documents(despite the subject title of this message, I am simply
>>> attaching
>>> > the file,
>>> > as you can then more simply load and try it, while I guess you must be
>>> > capable of diffing it with
>>> > the latest doc-view.el file yourself ;).
>>>
>>> Thanks, if you want you could attach whole files, because program files
>>> take almost no space on mailing list archives, so this is not a problem
>>> (the problem is when someone posts large screenshots, and even a video).
>>>
>>> Or you can just make a copy of doc-view.el in your repository,
>>> and send a message when you update it.
>>>
>>> > I am not sure if the bookroll-mode should be a separate package (like
>>> image-mode),
>>> > or that it could just get merged into doc-view. But it is as it is for
>>> the
>>> > development process.
>>>
>>> If it could be used for other images such as for image galleries,
>>> then it should be a separate package like image-mode.
>>>
>>> > To understand the approach of bookmark.el, it is probably most useful
>>> to
>>> > look at the Proof
>>> > of Concept file to which I have linked already above. It simply draws a
>>> > triplet of images (pages)
>>> > for each page (and a doublet for the first and last pages), and then it
>>> > uses a 'currently-displayed-images' list, and refreshes pages when
>>> > necessary by comparing with that list. The current page is the page
>>> that
>>> > takes more than half of the window height.
>>>
>>> A triplet or a doublet means that the scroll bar can't be used for
>>> scrolling all pages?  Have you tried to prefill with overlays for all
>>> pages?
>>>
>>

[-- Attachment #2: Type: text/html, Size: 6935 bytes --]

  reply	other threads:[~2022-01-15 18:09 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-13 10:53 {PATCH] continuous scroll for doc-view (FOR REVIEW)) dalanicolai
2022-01-13 10:58 ` dalanicolai
2022-01-13 11:08   ` dalanicolai
2022-01-14  8:03 ` Juri Linkov
2022-01-14 10:44   ` dalanicolai
2022-01-14 11:03     ` dalanicolai
2022-01-15 18:09       ` dalanicolai [this message]
2022-01-15 18:13     ` Juri Linkov
2022-01-16 22:07       ` dalanicolai

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CACJP=3nJgTT=tZbySeDEzmiG9u+_MWYscuVx=zk-cGhfe5kVmA@mail.gmail.com' \
    --to=dalanicolai@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=juri@linkov.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).