GSoC/2019/StatusReports/JoãoNetto
Improving Okular JavaScript Support
Adobe defines a set of JavaScript functions in its JavaScript for Adobe API reference. Our plan is to support the execution of these scripts by the documents opened in Okular.
Work report
First two weeks of the project were directed to the simply animations put all by the package beamer, this package works by setting some fields (in)visible, to do the animation. Everything was already implemented in Poppler/Okular to make it work, I just needed to edit the /script folder to support some functions that are on the PDF's Javascript. I also needed to make Okular support running scripts when the page were open/closed.
The next two weeks I've implemented support for buttons and the animate package. This was harder since the get/set Icon wasn't implemented in Poppler, I had to edit Poppler to support this. This was a fun challenge since I never had tinkered with Poppler before, I spent two entire days just trying to figure out the codebase. After I did, implementing was pretty straightforward.
The following diffs support the work above:
Poppler - https://gitlab.freedesktop.org/poppler/poppler/merge_requests/297
Okular - https://gitlab.freedesktop.org/poppler/poppler