Merge pull request #628 from kiwix/fix_pagination

Fix pagination by setting pageLength properly
This commit is contained in:
Matthieu Gautier 2021-04-27 11:35:37 +02:00 committed by GitHub
commit 93c90032d3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -101,10 +101,12 @@ UrlSchemeHandler::handleSearchRequest(QWebEngineUrlRequestJob* request)
int temp = query.queryItemValue("start").toInt(&ok); int temp = query.queryItemValue("start").toInt(&ok);
if (ok) if (ok)
start = temp; start = temp;
int end = 25; int pageLength = 25;
temp = query.queryItemValue("end").toInt(&ok); temp = query.queryItemValue("pageLength").toInt(&ok);
if (ok) if (ok)
end = temp; pageLength = temp;
auto end = start + pageLength;
auto searcher = app->getLibrary()->getSearcher(bookId); auto searcher = app->getLibrary()->getSearcher(bookId);
searcher->search(searchQuery, start, end); searcher->search(searchQuery, start, end);
@ -115,6 +117,7 @@ UrlSchemeHandler::handleSearchRequest(QWebEngineUrlRequestJob* request)
renderer.setSearchContent(bookId.toStdString()); renderer.setSearchContent(bookId.toStdString());
renderer.setProtocolPrefix("zim://"); renderer.setProtocolPrefix("zim://");
renderer.setSearchProtocolPrefix("zim://" + host.toStdString() + "/?"); renderer.setSearchProtocolPrefix("zim://" + host.toStdString() + "/?");
renderer.setPageLength(pageLength);
auto content = renderer.getHtml(); auto content = renderer.getHtml();
QBuffer *buffer = new QBuffer; QBuffer *buffer = new QBuffer;
buffer->setData(content.data(), content.size()); buffer->setData(content.data(), content.size());