diff --git a/src/pdf/quick/qml/PdfMultiPageView.qml b/src/pdf/quick/qml/PdfMultiPageView.qml
index cb4419b4d1db95df9a56fa5fa925879167468ce5..d50763a649e8b72794ed5d265ce0f5cbba0351ee 100644
--- a/src/pdf/quick/qml/PdfMultiPageView.qml
+++ b/src/pdf/quick/qml/PdfMultiPageView.qml
@@ -84,6 +84,7 @@ Item {
         if (zoom > 0)
             root.renderScale = zoom
         navigationStack.push(page, location, zoom)
+        searchModel.currentPage = page
     }
 
     // page scaling
@@ -366,6 +367,6 @@ Item {
     PdfSearchModel {
         id: searchModel
         document: root.document === undefined ? null : root.document
-        onCurrentPageChanged: root.goToPage(currentPage)
+        onCurrentPageChanged: if (currentPage != navigationStack.currentPage) root.goToPage(currentPage)
     }
 }