GNOME Bugzilla – Bug 573641
Split up EvPageCache in document part and view part
Last modified: 2009-09-15 14:11:50 UTC
As you may know, I did a 'proof-of-concept' port of Evince to Windows. One of the issues with this port is that it can not handle multiple views of one document. Upon investigation I found out that current Evince uses a solution with symlinks for this that seems hackish to me. This approach was probably taken because in current Evince the view, the document and the page-cache are tightly connected and thus it is impossible to have more views with only one document/page-cache. To decouple the view from the page-cache, it is nescessary to take the view characteristics out of EvPageCache and put it into EvView. I will attach patches to do this. When this is done, it will be possible to create more views with only one document/page-cache. A further step can be to make the page-cache private to document, this would clean up a lot of code. With EvView and EvPageCache decoupled, a new implementation to handle multiple document views that does not use symlinks is possible. I will work on that.
Created attachment 129786 [details] current_page_patch.tgz
Created attachment 129791 [details] [review] patch-21-Fix_bug_for_documents_with_zero_pages One more patch to fix problem with documents with no pages.
I have been working on this, you can see what I have done so far here: http://cgit.freedesktop.org/~carlosgc/evince/log/?h=ev-page-cache2 The idea is to merge this branch into master as soon as we branch for gnome 2.28. I haven't finished yet, but what I've done so far fixes this bug and implements open a copy without using the symlink hack.
I've just merged that branch into master.