Short description
Annotations are a very useful feature on pdf readers, but the way they are implemented in evince is far from ideal. With this project I expect to be able to fix its main problems and provide annotations in a user-friendly way.
About me
I am Giselle, a PhD student at Vienna University of Technology. My field of study is theoretical computer science, but in my heart I am a programmer. I found GSoC a great opportunity to code the summer away and contribute to an awesome project at the same time. If you want to contact me, the easiest is to drop me an e-mail (giselle.mnr {the first symbol} gmail {the second symbol} com). I am also hanging out on IRC (#evince, #gnome-hackers and #gnome-love) usually under the name 'giselle'. Oh! And don't forget to check my blog.
Ultimate Goal
Improvement of annotations in evince such that it is easy to use and has all the expected functionality.
Nowadays the annotation feature implemented is far from ideal. Firstly, it is hard to find that evince has annotations at all. Secondly, the user cannot delete an annotation once created. Another problem is that the main window of evince looses focus when creating/editing an annotation, since the focus goes to the annotation window itself. There is also the problem of not saving the position of the annotation if it was moved more than once through the document. My proposal is to fix all these bugs and ultimately have a nice annotation feature in evince.
Schedule
May 19th - Jun 2nd |
Testing of annotations and definition of tasks to work on, including current and expected behavior, proposing solutions and listing related bugs filed. |
Jun 2dn - Jun 16th |
Work on making annotations easier to find on the user interface. |
Jun 16th - Jun 30th |
Work on saving the state of the annotations (size and position). |
Jun 30th - Jul 14th |
Work on deleting annotations. |
Jul 14th - Jul 28th |
Work on implementing annotations without using GTK, such that the main window of evince does not lose focus. |
Jul 28th - Aug 11th |
Tests and debugging. |
Aug 11th - Aug 18th |
Final adjustments and documentation. |
Final report
It is interesting to come back here after three months and see what were my expectations then, and compare to what was actually done. From all the things on the schedule, the one that was in fact finished was deletion of annotations. During google summer of code, the focus changed to the implementation of new annotations, called markup annotations, which are highlight, strike out, squiggly and underline. This is much bigger than the bug fixes I had put in the schedule. It is also much more rewarding Although it is not 100% finished, we've come a long way, and I hope to continue working on this to actually finish it. Here you can find the final gsoc blog post with a screen cast of highlight annotation.