[Libreoffice-commits] core.git: include/vcl vcl/source
Miklos Vajna (via logerrit)
logerrit at kemper.freedesktop.org
Wed Feb 3 08:27:43 UTC 2021
include/vcl/filter/PDFiumLibrary.hxx | 2 ++
vcl/source/graphic/VectorGraphicSearch.cxx | 5 +----
vcl/source/pdf/PDFiumLibrary.cxx | 8 ++++++++
3 files changed, 11 insertions(+), 4 deletions(-)
New commits:
commit 76f878e299796db2bf3f31b2519a87e6ca232609
Author: Miklos Vajna <vmiklos at collabora.com>
AuthorDate: Tue Feb 2 21:09:53 2021 +0100
Commit: Miklos Vajna <vmiklos at collabora.com>
CommitDate: Wed Feb 3 09:26:54 2021 +0100
pdfium: add a FPDFText_FindStart() wrapper
Change-Id: I0bf77c116ab83ea557467da7f0c780d92db6a60e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110333
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos at collabora.com>
diff --git a/include/vcl/filter/PDFiumLibrary.hxx b/include/vcl/filter/PDFiumLibrary.hxx
index 418feede99b6..667fa614da70 100644
--- a/include/vcl/filter/PDFiumLibrary.hxx
+++ b/include/vcl/filter/PDFiumLibrary.hxx
@@ -180,6 +180,8 @@ public:
int countChars();
unsigned int getUnicode(int index);
+ std::unique_ptr<PDFiumSearchHandle> findStart(const OUString& rFindWhat, sal_uInt64 nFlags,
+ sal_Int32 nStartIndex);
};
class VCL_DLLPUBLIC PDFiumPage final
diff --git a/vcl/source/graphic/VectorGraphicSearch.cxx b/vcl/source/graphic/VectorGraphicSearch.cxx
index 3ac33db37cc3..01b76fb28b06 100644
--- a/vcl/source/graphic/VectorGraphicSearch.cxx
+++ b/vcl/source/graphic/VectorGraphicSearch.cxx
@@ -95,8 +95,6 @@ public:
if (!mpTextPage)
return false;
- FPDF_WIDESTRING pString = reinterpret_cast<FPDF_WIDESTRING>(maSearchString.getStr());
-
// Index where to start to search. -1 => at the end
int nStartIndex = maOptions.meStartPosition == SearchStartPosition::End ? -1 : 0;
@@ -113,8 +111,7 @@ public:
if (maOptions.mbMatchWholeWord)
nSearchFlags |= FPDF_MATCHWHOLEWORD;
- mpSearchHandle = std::make_unique<vcl::pdf::PDFiumSearchHandle>(
- FPDFText_FindStart(mpTextPage->getPointer(), pString, nSearchFlags, nStartIndex));
+ mpSearchHandle = mpTextPage->findStart(maSearchString, nSearchFlags, nStartIndex);
return mpSearchHandle != nullptr;
}
diff --git a/vcl/source/pdf/PDFiumLibrary.cxx b/vcl/source/pdf/PDFiumLibrary.cxx
index fce8d4d539bd..c1571682f4b3 100644
--- a/vcl/source/pdf/PDFiumLibrary.cxx
+++ b/vcl/source/pdf/PDFiumLibrary.cxx
@@ -1100,6 +1100,14 @@ unsigned int PDFiumTextPage::getUnicode(int index)
return FPDFText_GetUnicode(mpTextPage, index);
}
+std::unique_ptr<PDFiumSearchHandle>
+PDFiumTextPage::findStart(const OUString& rFindWhat, sal_uInt64 nFlags, sal_Int32 nStartIndex)
+{
+ FPDF_WIDESTRING pFindWhat = reinterpret_cast<FPDF_WIDESTRING>(rFindWhat.getStr());
+ return std::make_unique<vcl::pdf::PDFiumSearchHandle>(
+ FPDFText_FindStart(mpTextPage, pFindWhat, nFlags, nStartIndex));
+}
+
PDFiumSearchHandle::PDFiumSearchHandle(FPDF_SCHHANDLE pSearchHandle)
: mpSearchHandle(pSearchHandle)
{
More information about the Libreoffice-commits
mailing list