CHINMOY'S BLOG



GSoC 2018 - Third month status

Hi All,

In this post I intend to inform about the final status of my GSoC project Verifying signatures of pdf files.


Things Completed:

1. Signature Properties Dialog

In this version of dialog I got rid of the icon label. The dialog has three sections displaying information about signature validation status, signer, and document revision.

Signature Properties Dialog

2. Certificate Viewer

This certificate viewer is similar to that of chromium’s. It contains two pages. The “General” page displays sort of summary and the “Details” page has all details. On bottom it provides a push button to export the certificate. This dialog can only be accessed from signature properties dialog.

‘General’ tab Certificate Viewer - General Tab

‘Details’ tab Certificate Viewer - Details Tab

3. Revision Viewer

This is a dialog similar to print preview dialog but instead of previewing what is about to be printed it loads the data covered by a signature in a read-only KPart. On top it shows a message informing the user about the read-only nature of the view and on bottom it provides a “Save As” button so that the signed version can be saved. This dialog can be accessed from signature properties dialog and signature panel’s context menu.

Revision Viewer

4. Signature Panel

This is a sidebar widget which presents all signatures in a tree structure. A context menu is available for this widget through which signed version of a document and signature properties can be accessed. Also selecting any top-level item will change document’s viewport to the page where the signature form field is located.

Signature Panel

Signature Panel 2

5. Popup

Now when a signed document is opened there will be two notifications. The former will (as usual) inform about the (signature) forms present and the latter will tell user that the opened document is signed. A toggle button will be there in the second message widget to access signature panel.

Signature Popup


Things remaining:

Menu actions

Due to making frequent changes to API and other graphical components I wasn’t able to decide on what actions to add and where to put them.


Getting the code

The patches for okular are listed in the phabricator task.

The git branch with all patches applied : gsoc2018_digitalsignature

The patches for poppler : 107055 and 107056


Finally, the following gif sums up my progress.

Phase3 GIF

Thanks for reading :)

comments powered by Disqus