]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-pixbuf-cache.c
Translation updated by Tino Meinen.
[evince.git] / shell / ev-pixbuf-cache.c
index 91bd314588c2be029e837809fff8b59e7732bbd6..0601de053422665b3e0266872cd1c8e166649d3a 100644 (file)
@@ -1,5 +1,6 @@
 #include "ev-pixbuf-cache.h"
 #include "ev-job-queue.h"
+#include "ev-page-cache.h"
 
 
 typedef struct _CacheJobInfo
@@ -73,7 +74,7 @@ ev_pixbuf_cache_init (EvPixbufCache *pixbuf_cache)
        pixbuf_cache->end_page = 0;
        pixbuf_cache->job_list = g_new0 (CacheJobInfo, PAGE_CACHE_LEN (pixbuf_cache));
 
-       pixbuf_cache->preload_cache_size = 1;
+       pixbuf_cache->preload_cache_size = 2;
        pixbuf_cache->prev_job = g_new0 (CacheJobInfo, pixbuf_cache->preload_cache_size);
        pixbuf_cache->next_job = g_new0 (CacheJobInfo, pixbuf_cache->preload_cache_size);
 }
@@ -119,6 +120,7 @@ dispose_cache_job_info (CacheJobInfo *job_info,
                g_signal_handlers_disconnect_by_func (job_info->job,
                                                      G_CALLBACK (job_finished_cb),
                                                      data);
+               ev_job_queue_remove_job (job_info->job);
                g_object_unref (G_OBJECT (job_info->job));
                job_info->job = NULL;
        }
@@ -305,7 +307,7 @@ ev_pixbuf_cache_update_range (EvPixbufCache *pixbuf_cache,
            pixbuf_cache->end_page == end_page)
                return;
 
-       page_cache = ev_document_get_page_cache (pixbuf_cache->document);
+       page_cache = ev_page_cache_get (pixbuf_cache->document);
 
        new_job_list = g_new0 (CacheJobInfo, (end_page - start_page) + 1);
        new_prev_job = g_new0 (CacheJobInfo, pixbuf_cache->preload_cache_size);
@@ -416,7 +418,7 @@ ev_pixbuf_cache_clear_job_sizes (EvPixbufCache *pixbuf_cache,
        EvPageCache *page_cache;
        int i;
 
-       page_cache = ev_document_get_page_cache (pixbuf_cache->document);
+       page_cache = ev_page_cache_get (pixbuf_cache->document);
 
        for (i = 0; i < PAGE_CACHE_LEN (pixbuf_cache); i++) {
                check_job_size_and_unref (pixbuf_cache->job_list + i, page_cache, scale);
@@ -472,7 +474,7 @@ ev_pixbuf_cache_add_jobs_if_needed (EvPixbufCache *pixbuf_cache,
        int page;
        int i;
 
-       page_cache = ev_document_get_page_cache (pixbuf_cache->document);
+       page_cache = ev_page_cache_get (pixbuf_cache->document);
 
        for (i = 0; i < PAGE_CACHE_LEN (pixbuf_cache); i++) {
                job_info = (pixbuf_cache->job_list + i);
@@ -513,7 +515,7 @@ ev_pixbuf_cache_set_page_range (EvPixbufCache *pixbuf_cache,
 
        g_return_if_fail (EV_IS_PIXBUF_CACHE (pixbuf_cache));
 
-       page_cache = ev_document_get_page_cache (pixbuf_cache->document);
+       page_cache = ev_page_cache_get (pixbuf_cache->document);
 
        g_return_if_fail (start_page >= 0 && start_page < ev_page_cache_get_n_pages (page_cache));
        g_return_if_fail (end_page >= 0 && end_page < ev_page_cache_get_n_pages (page_cache));