From 073a4374ffcc2b4a8d4bcca50991ad1ec03606e4 Mon Sep 17 00:00:00 2001 From: Witold Filipczyk Date: Sat, 31 Oct 2020 22:47:17 +0100 Subject: [PATCH] [search] Repeat searching, when pressing 'n'. Refs #76 On new page number_of_search_points is 0, so do search in such case, when user pressed 'n'. --- src/viewer/text/search.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/viewer/text/search.c b/src/viewer/text/search.c index ac9ed220..4aca1cb6 100644 --- a/src/viewer/text/search.c +++ b/src/viewer/text/search.c @@ -1312,8 +1312,20 @@ find_first_search_in_view(struct session *ses, struct document_view *doc_view) static enum frame_event_status move_search_do(struct session *ses, struct document_view *doc_view, int direction) { - if (!doc_view->document->number_of_search_points) - return FRAME_EVENT_OK; + + if (!doc_view->document->number_of_search_points) { +#ifdef CONFIG_UTF8 + int utf8 = doc_view->document->options.utf8; +#else + int utf8 = 0; +#endif + enum find_error error = get_searched_all(ses, doc_view, &doc_view->document->search_points, + &doc_view->document->number_of_search_points, utf8); + + if (error == FIND_ERROR_NOT_FOUND) { + return FRAME_EVENT_OK; + } + } int number;