]> www.fi.muni.cz Git - evince.git/blobdiff - libview/ev-jobs.c
[libview] Get text and text_layout and store it in EvPageCache
[evince.git] / libview / ev-jobs.c
index e723a9f46e3393d655204168b927985423e94ba7..7e522dfd756496ef57423ec943ea71b5bebfa9ff 100644 (file)
@@ -594,9 +594,17 @@ ev_job_page_data_run (EvJob *job)
        ev_document_doc_mutex_lock ();
        ev_page = ev_document_get_page (job->document, job_pd->page);
 
-       if ((job_pd->flags & EV_PAGE_DATA_INCLUDE_TEXT) && EV_IS_DOCUMENT_TEXT (job->document))
+       if ((job_pd->flags & EV_PAGE_DATA_INCLUDE_TEXT_MAPPING) && EV_IS_DOCUMENT_TEXT (job->document))
                job_pd->text_mapping =
                        ev_document_text_get_text_mapping (EV_DOCUMENT_TEXT (job->document), ev_page);
+       if ((job_pd->flags & EV_PAGE_DATA_INCLUDE_TEXT) && EV_IS_DOCUMENT_TEXT (job->document))
+               job_pd->text =
+                       ev_document_text_get_text (EV_DOCUMENT_TEXT (job->document), ev_page);
+       if ((job_pd->flags & EV_PAGE_DATA_INCLUDE_TEXT_LAYOUT) && EV_IS_DOCUMENT_TEXT (job->document))
+               ev_document_text_get_text_layout (EV_DOCUMENT_TEXT (job->document),
+                                                 ev_page,
+                                                 &(job_pd->text_layout),
+                                                 &(job_pd->text_layout_length));
        if ((job_pd->flags & EV_PAGE_DATA_INCLUDE_LINKS) && EV_IS_DOCUMENT_LINKS (job->document))
                job_pd->link_mapping =
                        ev_document_links_get_links (EV_DOCUMENT_LINKS (job->document), ev_page);