...entering the pwd for the certificate store
Also Move CertificateStoreImpl to PopplerCertificateStore, since
PopplerCertificateStore was declared but never defined and use it
in CertificateTools to get the certificate list instead of calling
the poppler classes directly
* Don't make WidgetAnnotation know about signatures stuff, widget
annotations are for multiple things
* Don't create an "empty" widget annotation and then call sign on it
(which is wrong because widget annotations can be multiple things),
just say sign the document with this data (cert, l&f, etc)
* Remove the "management" functionality from CertificateTools it was
only visual, i.e. it didn't really add/remove certificates
* Ask for the NSS password (if needed)
- make explicit we're using static QFile func here
- QFile::rename doesn't work across filesystems, so instead
create it alongside. Might fail if dir is not writeable
- can't use QSaveFile, since poppler sign() func wants a filename
Now poppler offers signing via PDFConverter class. Add some error
handling, and store signature in temp file. Document gets reloaded
after replacing original file.
f9841b0f8a and e0f45add55
They break the windows build, which shows there's something defenitely
fishy going on with the current code, but oh well, someone with more
time needs to figure out a proper solution
Read https://stackoverflow.com/a/23749273/11956287 for a full
explanation, but basically this is important for headers like the
interfaces/ and kdocumentviewer.h that are supposed to be used by third
partyies where it may happen that wrong things happen because the whole
class is inline in a header
For the classes that are defined in the .cpp or are not installed
headers this would not be necessary but it's not so hard to add a few
default defined destructors, so do that :)
Not having this is not as bad as it sounds since for most of the
annotations where the style makes sense this is currently already being
converted by AnnotationPrivate::setAnnotationProperties but the plan is
to stop passing xml between poppler annotations and okular annotations
because that's just plain bad
find . \( -name "*.cpp" -or -name "*.h" -or -name "*.c" -or -name "*.cc" \) -exec clang-format -i {} \;
If you reached this file doing a git blame, please see README.clang-format (added 2 commits in the future of this one)
poppler 0.88 is crashy when using the signatures() method.
Use poppler's own version defines to check for 0.89 (since there's no
new api added in 0.89 we can't check it like the others)
Needs poppler 0.88, we "pretend" the belong to page 0 since in Okular
core there's no concept of having a signature that doesn't belong to any
page
BUGS: 415199