From 0350bfe8728173b35633d7810589d3134cf77289 Mon Sep 17 00:00:00 2001 From: Marek Kasik Date: Wed, 19 Nov 2014 12:24:50 +0100 Subject: [PATCH] Scroll to the search result selected by user Resolves: #1162254 --- ...o-the-search-result-selected-by-user.patch | 38 +++++++++++++++++ ...ge-when-next-search-result-requested.patch | 41 +++++++++++++++++++ evince.spec | 13 +++++- 3 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 0001-Scroll-to-the-search-result-selected-by-user.patch create mode 100644 0002-Show-correct-page-when-next-search-result-requested.patch diff --git a/0001-Scroll-to-the-search-result-selected-by-user.patch b/0001-Scroll-to-the-search-result-selected-by-user.patch new file mode 100644 index 0000000..2159a98 --- /dev/null +++ b/0001-Scroll-to-the-search-result-selected-by-user.patch @@ -0,0 +1,38 @@ +From 5310e9e9bb7e29490c89e3e53243088d7ce5f518 Mon Sep 17 00:00:00 2001 +From: Marek Kasik +Date: Mon, 19 May 2014 14:32:19 +0200 +Subject: [PATCH 1/2] Scroll to the search result selected by user + +Scroll to page on which is the search result selected by user +when not in continuous mode. + +https://bugzilla.gnome.org/show_bug.cgi?id=730252 +--- + libview/ev-view.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/libview/ev-view.c b/libview/ev-view.c +index 5ed2d78..f3aa033 100644 +--- a/libview/ev-view.c ++++ b/libview/ev-view.c +@@ -8158,6 +8158,9 @@ jump_to_find_page (EvView *view, EvViewFindDirection direction, gint shift) + break; + } + } ++ ++ if (!view->continuous) ++ ev_document_model_set_page (view->model, view->find_page); + } + + static void +@@ -8282,6 +8285,7 @@ ev_view_find_set_result (EvView *view, gint page, gint result) + { + view->find_page = page; + view->find_result = result; ++ jump_to_find_page (view, EV_VIEW_FIND_NEXT, 0); + jump_to_find_result (view); + gtk_widget_queue_draw (GTK_WIDGET (view)); + } +-- +2.1.0 + diff --git a/0002-Show-correct-page-when-next-search-result-requested.patch b/0002-Show-correct-page-when-next-search-result-requested.patch new file mode 100644 index 0000000..91a5836 --- /dev/null +++ b/0002-Show-correct-page-when-next-search-result-requested.patch @@ -0,0 +1,41 @@ +From d39c99cbb1c28a894b09f467b18e34754fd6842f Mon Sep 17 00:00:00 2001 +From: Marek Kasik +Date: Tue, 18 Nov 2014 12:53:40 +0100 +Subject: [PATCH 2/2] Show correct page when next search result requested + +If there are more than 1 results on a page then requesting +next search result from the same page will not return you +to the page with the search results if you moved from the +page in the meantime (when you are not in continuous mode). +This applies also to previous results. + +https://bugzilla.gnome.org/show_bug.cgi?id=730252 +--- + libview/ev-view.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/libview/ev-view.c b/libview/ev-view.c +index f3aa033..a9159cd 100644 +--- a/libview/ev-view.c ++++ b/libview/ev-view.c +@@ -8250,6 +8250,8 @@ ev_view_find_next (EvView *view) + if (view->find_result >= n_results) { + view->find_result = 0; + jump_to_find_page (view, EV_VIEW_FIND_NEXT, 1); ++ } else if (view->find_page != view->current_page) { ++ jump_to_find_page (view, EV_VIEW_FIND_NEXT, 0); + } + + jump_to_find_result (view); +@@ -8264,6 +8266,8 @@ ev_view_find_previous (EvView *view) + if (view->find_result < 0) { + jump_to_find_page (view, EV_VIEW_FIND_PREV, -1); + view->find_result = MAX (0, ev_view_find_get_n_results (view, view->find_page) - 1); ++ } else if (view->find_page != view->current_page) { ++ jump_to_find_page (view, EV_VIEW_FIND_PREV, 0); + } + + jump_to_find_result (view); +-- +2.1.0 + diff --git a/evince.spec b/evince.spec index cca7139..c2244d2 100644 --- a/evince.spec +++ b/evince.spec @@ -5,7 +5,7 @@ Name: evince Version: 3.14.1 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Document viewer License: GPLv2+ and GPLv3+ and LGPLv2+ and MIT and Afmparse @@ -18,6 +18,10 @@ Patch0: 0001-Disable-toggle-find-action-for-documents-not-support.patch Patch1: 0001-Fix-runtime-critical-warning-when-starting-in-fullsc.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1162254 +Patch2: 0001-Scroll-to-the-search-result-selected-by-user.patch +Patch3: 0002-Show-correct-page-when-next-search-result-requested.patch + BuildRequires: glib2-devel >= %{glib2_version} BuildRequires: gtk3-devel >= %{gtk3_version} BuildRequires: poppler-glib-devel >= %{poppler_version} @@ -129,6 +133,8 @@ This package contains the evince web browser plugin. %patch0 -p1 -b .toggle-find %patch1 -p1 -b .unref +%patch2 -p1 -b .scroll-to-search-result +%patch3 -p1 -b .scroll-to-search-result2 %build ./autogen.sh @@ -262,6 +268,11 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas >&/dev/null ||: %{_libdir}/mozilla/plugins/libevbrowserplugin.so %changelog +* Wed Nov 19 2014 Marek Kasik - 3.14.1-6 +- Scroll to page on which is the search result selected by user +- when not in continuous mode. +- Resolves: #1162254 + * Tue Nov 18 2014 Marek Kasik - 3.14.1-5 - Use libgnome-desktop to generate and cache thumbnails - Resolves: #1147270