Sebastian Ramacher
e7cd4e5f8c
Move page cache to ZathuraRenderer
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-10-18 20:00:04 +02:00
Sebastian Ramacher
16fbefa5cf
Abort requests if the page becomes invisible
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-08-30 18:59:47 +02:00
Sebastian Ramacher
07005886f8
Sort requests based on last view time again
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-08-30 17:50:34 +02:00
Sebastian Ramacher
8d53833d81
Move recolor code into separate function
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-08-30 16:10:44 +02:00
Sebastian Ramacher
8a9bd7f512
We don't need zathura
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-08-30 15:43:43 +02:00
Sebastian Ramacher
7d5863ae1d
Clean up includes
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-08-30 15:05:00 +02:00
Sebastian Ramacher
08a87f679e
Mark the request as done in the signal emitter
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-08-30 13:52:58 +02:00
Sebastian Ramacher
9e77b26a3d
Don't loop
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-08-30 13:25:59 +02:00
Sebastian Ramacher
35bd419e49
Emit signal from main context
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-08-30 13:25:22 +02:00
Sebastian Ramacher
b02d3d4b8f
Move recolor state to the renderer
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-08-24 00:07:32 +02:00
Sebastian Ramacher
10115db62f
Rewrite render thread as request based system
...
ZathuraRenderer is a thread pool rendering the pages. Every page widget holds a
ZathuraRenderRequest instance to request its page to be rendered. This object
can also be used to abort the request in case the page is not visible anymore.
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-08-21 18:32:18 +02:00
Sebastian Ramacher
f98514d5ed
Increase reference in zathura_page_widget_update_surface
...
and always destroy in render.
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-07-27 01:34:42 +02:00
Sebastian Ramacher
71680394a7
Fix some types
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-04-02 11:39:06 +02:00
Marwan Tanager
cb18fe8603
Replace the periodic page reclaiming code with a LRU caching algorithm.
...
This patch implements a page cache that is invalidated in a LRU fashion.
Pages are added to the cache as soon as they become visible. When the cache is
full and a new page that isn't in the cache becomes visible, the least recently
viewed page in the cache is evicted from memory and the new one takes it's
place.
The cache size is configurable using the page-cache-size configuration
variable, with a default value of 15 pages. Very large values for the cache
size are not recommended, though, as it will stress the system memory out.
The old periodic page reclaiming code is no longer necessary with this patch,
so I removed it.
Special thanks to Ignas Anikevičius, and Sebastian Ramacher for the
inspirations.
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-03-26 12:45:43 +01:00
Sebastian Ramacher
f2ed53aa72
Fix the off-by-one with the poppler plugin
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-02-23 17:18:02 +01:00
Sebastian Ramacher
edde1bf00f
Restore compatibility with earlier versions of glib
...
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2013-02-09 15:10:00 +01:00
Moritz Lipp
de5b93dd55
Use GMutex instead of deprecated GStaticMutex
2013-01-20 16:38:36 +01:00
Moritz Lipp
89e7832047
Update style
2012-10-09 01:12:18 +02:00
Sebastian Ramacher
9c28be7c11
Coding style.
2012-08-01 16:15:56 +02:00
Abdó Roig-Maranges
c57463a053
Added option to recolor keeping hues of original color.
...
If option recolor-keephue is true, the recoloring algorithm
only adjusts the lightness of the original color, keeping the
rest of the properties close to the original.
When recolor-keephue is set to false, the recoloring is performed
as it was before, interpolating linearly between recolor-lightcolor
and recolor-darkcolor except for a different weighting for the
lightness which is closer to perception.
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
2012-08-01 16:05:31 +02:00
Sebastian Ramacher
aa2abd0bc4
more debug output
2012-06-20 16:41:01 +02:00
Sebastian Ramacher
c25f892385
Fix check.
2012-06-20 16:10:34 +02:00
Sebastian Ramacher
a759c008cd
Don't send surfaces to widgets if we're about to close the document.
2012-06-20 15:55:32 +02:00
Moritz Lipp
dd99eca7c5
Fix render_thread_sort
2012-06-16 09:29:15 +02:00
Sebastian Ramacher
517acbd576
Remove \n in debug output.
2012-06-03 22:09:27 +02:00
Sebastian Ramacher
290eefde5c
Use a lock to lock the render thread for printing.
2012-06-03 22:06:57 +02:00
Sebastian Ramacher
f28decccc1
Revert "Render pages for printing in render thread."
...
This reverts commit 8271419222
.
2012-06-03 21:54:10 +02:00
Sebastian Ramacher
8271419222
Render pages for printing in render thread.
...
This needs some looking in the render thread.
2012-06-01 20:56:55 +02:00
Moritz Lipp
122ea70e16
Render last-viewed pages with a higher priority
2012-05-15 07:52:23 +02:00
Moritz Lipp
97247f41ca
Unhitch zathura_t from document_t/page_t/plugin_manager_t
2012-04-03 09:02:45 +02:00
Moritz Lipp
ab4c364e56
Update document information plugin api
2012-03-30 18:24:00 +02:00
Moritz Lipp
334b4fbb95
Introduce and use zathura_document wrapper functions
2012-03-27 21:59:35 +02:00
Moritz Lipp
4ade2c1472
Introduced plugin.h and plugin-api.h
2012-03-27 13:30:04 +02:00
Moritz Lipp
5bf32f33a5
Rename page_get_id to page_get_index
2012-03-26 15:30:58 +02:00
Moritz Lipp
efc108fbe2
Introduced page.h
2012-03-26 14:44:56 +02:00
Sebastian Ramacher
07d02d934a
We only need to lock the widget update.
2012-03-20 01:30:02 +01:00
Sebastian Ramacher
66bc63f5a7
Rename page_widget to page-widget.
2012-03-16 14:37:54 +01:00
Moritz Lipp
9265c9473a
Add 'recolor' setting
2012-03-14 17:33:35 +01:00
Sebastian Ramacher
2a0422b5e1
Reimplement render thread using GThreadPool
2012-03-02 17:51:48 +01:00
Sebastian Ramacher
7f6ad25e02
Fix memory leak in render_free
2012-03-02 17:34:13 +01:00
Sebastian Ramacher
8c10161acf
fix invalid read in render thread
2012-02-14 16:01:50 +01:00
Sebastian Ramacher
e513cb5579
store rotation in history
2012-02-08 22:23:45 +01:00
Moritz Lipp
5b54bebc1b
Check zathura_page_render return value correctly
2012-02-08 01:08:23 +01:00
Moritz Lipp
21a65cbe34
Rename PageViewWidget to PageWidget
2012-02-07 18:30:46 +01:00
Sebastian Ramacher
aea5024ce3
add argument printing to zathura_page_render
2012-02-07 15:10:58 +01:00
Sebastian Ramacher
12fd8450fa
some documentation
2012-02-05 11:32:32 +01:00
Sebastian Ramacher
a1cdb48921
Create a page view widget ( Closes : #90 ).
...
Add a widget derived from GtkDrawingArea that handles the drawing. It
automaticaly requests rerendering of the page if necessary (i.e on a scroll and
rotate).
This should solve all the rendering issues.
2012-02-05 11:24:34 +01:00
Sebastian Ramacher
3df59895cd
CS
2012-02-03 22:32:11 +01:00
Sebastian Ramacher
083a40f447
adopt to changes from girara
2012-02-03 22:15:29 +01:00
Sebastian Ramacher
3b5d29d52b
Add option to disable rendering of 'Loading ...'
2012-02-01 17:30:43 +01:00