diff options
author | Marco Pesenti Gritti <mpg@redhat.com> | 2005-04-22 17:23:22 (GMT) |
---|---|---|
committer | Marco Pesenti Gritti <marco@src.gnome.org> | 2005-04-22 17:23:22 (GMT) |
commit | 6f9c323060b20673516f786ff19443779f551fae (patch) | |
tree | ee2adb13bab123e85979a788694ea5a8f65b1a07 | |
parent | 3a8f24fb2042df02049d0a94ee4c885962ac979e (diff) |
Fix find on single page documents
2005-04-22 Marco Pesenti Gritti <mpg@redhat.com>
* pdf/ev-poppler.cc:
* shell/ev-view.c: (highlight_find_results):
Fix find on single page documents
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | pdf/ev-poppler.cc | 9 | ||||
-rw-r--r-- | shell/ev-view.c | 4 |
3 files changed, 13 insertions, 7 deletions
@@ -1,3 +1,10 @@ +2005-04-22 Marco Pesenti Gritti <mpg@redhat.com> + + * pdf/ev-poppler.cc: + * shell/ev-view.c: (highlight_find_results): + + Fix find on single page documents + 2005-04-22 Bryan Clark <clarkbw@cvs.gnome.org> * data/evince.schemas.in: fix for bug 301390 diff --git a/pdf/ev-poppler.cc b/pdf/ev-poppler.cc index d20acb0..7b55b08 100644 --- a/pdf/ev-poppler.cc +++ b/pdf/ev-poppler.cc @@ -659,7 +659,7 @@ pdf_document_search_idle_callback (void *data) { PdfDocumentSearch *search = (PdfDocumentSearch*) data; PdfDocument *pdf_document = search->document; - int n_pages, changed_page; + int n_pages; GList *matches; PopplerPage *page; @@ -671,9 +671,10 @@ pdf_document_search_idle_callback (void *data) ev_document_doc_mutex_unlock (); search->pages[search->search_page] = matches; - n_pages = pdf_document_get_n_pages (EV_DOCUMENT (search->document)); + ev_document_find_changed (EV_DOCUMENT_FIND (pdf_document), + search->search_page); - changed_page = search->search_page; + n_pages = pdf_document_get_n_pages (EV_DOCUMENT (search->document)); search->search_page += 1; if (search->search_page == n_pages) { /* wrap around */ @@ -681,8 +682,6 @@ pdf_document_search_idle_callback (void *data) } if (search->search_page != search->start_page) { - ev_document_find_changed (EV_DOCUMENT_FIND (pdf_document), - changed_page); return TRUE; } diff --git a/shell/ev-view.c b/shell/ev-view.c index 796aadd..b9d9ab2 100644 --- a/shell/ev-view.c +++ b/shell/ev-view.c @@ -537,11 +537,11 @@ highlight_find_results (EvView *view) g_return_if_fail (EV_IS_DOCUMENT_FIND (view->document)); find = EV_DOCUMENT_FIND (view->document); -#if 0 + ev_document_doc_mutex_lock (); results = ev_document_find_get_n_results (find, view->current_page); ev_document_doc_mutex_unlock (); -#endif + for (i = 0; i < results; i++) { EvRectangle rectangle; GdkRectangle view_rectangle; |