Compare commits
7 Commits
b4320f611b
...
20a1f8b2cd
Author | SHA1 | Date | |
---|---|---|---|
20a1f8b2cd | |||
a47af257f3 | |||
9686ef30c7 | |||
abce4cfcd9 | |||
d55187a71c | |||
9e1bc98f38 | |||
496aefaa09 |
@ -1,5 +1,11 @@
|
||||
# looqs: Release notes
|
||||
|
||||
## 2022-11-19 - v0.8.1
|
||||
|
||||
CHANGES:
|
||||
- Fix regression causing previews in second (and higher) result page to not render
|
||||
- Minor improvements
|
||||
|
||||
## 2022-10-22 - v0.8
|
||||
|
||||
CHANGES:
|
||||
|
@ -28,7 +28,7 @@ There is no need to write the long form of filters. There are also booleans avai
|
||||
The screenshots in this section may occasionally be slightly outdated, but they are usually recent enough to get an overall impression of the current state of the GUI.
|
||||
|
||||
## Current status
|
||||
Latest version: 2022-10-22, v0.8
|
||||
Latest version: 2022-11-19, v0.8.1
|
||||
|
||||
Please keep in mind: looqs is still at an early stage and may exhibit some weirdness and contain bugs.
|
||||
|
||||
|
@ -940,12 +940,12 @@ void MainWindow::makePreviews(int page)
|
||||
}
|
||||
}
|
||||
}
|
||||
int end = previewsPerPage;
|
||||
int begin = page * previewsPerPage - previewsPerPage;
|
||||
if(begin < 0)
|
||||
int length = previewsPerPage;
|
||||
int beginOffset = page * previewsPerPage - previewsPerPage;
|
||||
if(beginOffset < 0)
|
||||
{
|
||||
// Should not happen actually
|
||||
begin = 0;
|
||||
beginOffset = 0;
|
||||
}
|
||||
|
||||
int currentScale = currentSelectedScale();
|
||||
@ -972,11 +972,14 @@ void MainWindow::makePreviews(int page)
|
||||
renderTarget.path = sr.fileData.absPath;
|
||||
renderTarget.page = (int)sr.page;
|
||||
targets.append(renderTarget);
|
||||
this->previewOrder[renderTarget.path + QString::number(renderTarget.page)] = previewPos++;
|
||||
|
||||
int pos = previewPos - beginOffset;
|
||||
this->previewOrder[renderTarget.path + QString::number(renderTarget.page)] = pos;
|
||||
++previewPos;
|
||||
}
|
||||
int numpages = ceil(static_cast<double>(targets.size()) / previewsPerPage);
|
||||
ui->spinPreviewPage->setMaximum(numpages);
|
||||
targets = targets.mid(begin, end);
|
||||
targets = targets.mid(beginOffset, length);
|
||||
|
||||
ui->lblTotalPreviewPagesCount->setText(QString::number(numpages));
|
||||
ui->previewProcessBar->setMaximum(targets.count());
|
||||
|
@ -44,9 +44,9 @@ class MainWindow : public QMainWindow
|
||||
QHash<QString, int> previewOrder; /* Quick lookup for the order a preview should have */
|
||||
QMap<int, QWidget *>
|
||||
previewWidgetOrderCache /* Saves those that arrived out of order to be inserted later at the correct pos */;
|
||||
bool previewDirty;
|
||||
int previewsPerPage;
|
||||
unsigned int processedPdfPreviews;
|
||||
bool previewDirty = false;
|
||||
int previewsPerPage = 20;
|
||||
unsigned int processedPdfPreviews = 0;
|
||||
unsigned int currentPreviewGeneration = 1;
|
||||
|
||||
void connectSignals();
|
||||
|
@ -103,7 +103,7 @@ QString PreviewGeneratorPlainText::generateLineBasedPreviewText(QTextStream &in,
|
||||
int foundWordsCount = 0;
|
||||
for(QString &word : config.wordsToHighlight)
|
||||
{
|
||||
QRegularExpression searchRegex("\\b" + word + "\\b");
|
||||
QRegularExpression searchRegex("\\b" + QRegularExpression::escape(word) + "\\b");
|
||||
bool containsRegex = line.contains(searchRegex);
|
||||
bool contains = false;
|
||||
if(!containsRegex)
|
||||
|
@ -30,7 +30,7 @@ QByteArray PreviewResultPdf::serialize() const
|
||||
|
||||
QSharedPointer<PreviewResultPdf> PreviewResultPdf::deserialize(QByteArray &ba)
|
||||
{
|
||||
PreviewResultPdf *result = new PreviewResultPdf();
|
||||
QSharedPointer<PreviewResultPdf> result(new PreviewResultPdf());
|
||||
PreviewResultType type;
|
||||
|
||||
QDataStream stream{&ba, QIODevice::ReadOnly};
|
||||
@ -40,5 +40,5 @@ QSharedPointer<PreviewResultPdf> PreviewResultPdf::deserialize(QByteArray &ba)
|
||||
throw std::runtime_error("Invalid byte array: Not a pdf preview");
|
||||
}
|
||||
stream >> result->documentPath >> result->page >> result->previewImage;
|
||||
return QSharedPointer<PreviewResultPdf>(result);
|
||||
return result;
|
||||
}
|
||||
|
@ -40,7 +40,8 @@ QByteArray PreviewResultPlainText::serialize() const
|
||||
|
||||
QSharedPointer<PreviewResultPlainText> PreviewResultPlainText::deserialize(QByteArray &ba)
|
||||
{
|
||||
PreviewResultPlainText *result = new PreviewResultPlainText();
|
||||
QSharedPointer<PreviewResultPlainText> result(new PreviewResultPlainText());
|
||||
|
||||
PreviewResultType type;
|
||||
|
||||
QDataStream stream{&ba, QIODevice::ReadOnly};
|
||||
@ -50,5 +51,5 @@ QSharedPointer<PreviewResultPlainText> PreviewResultPlainText::deserialize(QByte
|
||||
throw std::runtime_error("Invalid byte array: Not a pdf preview");
|
||||
}
|
||||
stream >> result->documentPath >> result->page >> result->text;
|
||||
return QSharedPointer<PreviewResultPlainText>(result);
|
||||
return result;
|
||||
}
|
||||
|
@ -157,7 +157,6 @@ QSqlQuery SqliteSearch::makeSqlQuery(const LooqsQuery &query)
|
||||
throw LooqsGeneralException("Nothing to search for supplied");
|
||||
}
|
||||
|
||||
bool ftsAlreadyJoined = false;
|
||||
auto tokens = query.getTokens();
|
||||
for(const Token &token : tokens)
|
||||
{
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit e711a1d53a9210f8f562f774901e5e044d20e67a
|
||||
Subproject commit 769f729dc51f2feb8bc3cbb2a48ed91ff2d56bf3
|
Loading…
Reference in New Issue
Block a user