GUI:webengine: reslist: scroll to top/bottom when displaying next/previous page with the arrows

This commit is contained in:
Jean-Francois Dockes 2022-01-21 18:10:41 +01:00
parent d1db0380f2
commit 44c0ec93e4

View File

@ -669,10 +669,9 @@ void ResList::resPageUpOrBack()
#elif defined(USING_WEBENGINE) #elif defined(USING_WEBENGINE)
if (scrollIsAtTop()) { if (scrollIsAtTop()) {
resultPageBack(); resultPageBack();
runJS("window.scrollBy(0,50000);");
} else { } else {
QString js = "window.scrollBy(" + QString js = QString("window.scrollBy(%1, %2);").arg(0).arg(-int(0.9*geometry().height()));
QString::number(0) + ", " +
QString::number(-int(0.9*geometry().height())) + ");";
runJS(js); runJS(js);
} }
setupArrows(); setupArrows();
@ -696,10 +695,9 @@ void ResList::resPageDownOrNext()
#elif defined(USING_WEBENGINE) #elif defined(USING_WEBENGINE)
if (scrollIsAtBottom()) { if (scrollIsAtBottom()) {
resultPageNext(); resultPageNext();
runJS("window.scrollTo(0, 0);");
} else { } else {
QString js = "window.scrollBy(" + QString js = QString("window.scrollBy(%1, %2);").arg(0).arg(int(0.9*geometry().height()));
QString::number(0) + ", " +
QString::number(int(0.9*geometry().height())) + ");";
runJS(js); runJS(js);
} }
setupArrows(); setupArrows();