Coding period of GSoC 2010 officially ended 16th. I was able to release the new stable version of the OpenOffice Plug-in on that day. So it’s time to have a look back on what I did for the past 4+ months and discuss about the issues I met.
Look back
The proposal for the development had following tasks.
- Supporting OpenOffice.org 3.0 – 3.1.
- Adding support for CC0.
- Adding support for Draw.
- User Interface Improvements.
- Adding references to important pages like FAQ and About.
- Provide help around what each option means ("what is Share Alike").
- Display license information when opening CC licensed documents.
- Other improvements for the UI.
- Speed up the first time license insertion process.
- Support for Internationalization.
I started working on the project since mid April. Moving the code base to OpenOffice.org 3.1 SDK was easy. I also updated the other libraries to their newest version. Then I tried to implement the Draw support. I found that implementation for Draw should be same as the implementation for Impress. So adding Draw support was fairly easy, but I had some problem with the page sizes. The available code did not conceder about the page sizes and the margins. The next problem was; the visible license notice was added to the master page of the Draw/Impress document like a background of an Impress document. Therefore the user can not arrange the notice as he wants.
While I fixing those issues, Nathan asked me to have a look at the Flickr Image Re-Use plug-in. Then I started look at it and integrating its functionality to the CC plug-in. I had to update the API wrappers for the Flickr plug-in to make it working. Then I started using that code to add image reuse support for Open Clip Art. I also improved the loading time of the Flickr dialog.
Then I started RDF adding RDF Metadata in the document. Currently this works only in Writer documents, because OpenOffice.org currently supports adding RDF only for writer documents. Then I get back to improve the image insertion I added Wikimedia Commons and Picasa for that. So the users can now add images using four well known image sharing sites; Flickr, Picasa, Wikimedia Commons and Open Clip Art.
The next thing I did is the UI improvement and adding public domain tools. Those two things were carried in parallel. After discussing with my mentors Nathan and Christopher we decided to use a tabbed window. This will make the licensing less confusing and easy to use.
Next was the internationalization phase. I used the existing i18n repository to add some translations to the licensing dialog, but still there are new strings available in the dialog that should be added to Transifex. Hope those new strings will added in the future. These translations files (.po files) need to be converted to Java resource bundles (internationalization method used in Java). The source folder includes a script for this, and the instructions can be found in the README.
Issues
For the last few weeks I was testing and trying to find out the issues related to the plug-in.
Though the new version released as a stable release, there are some problems which actually out of our control. This plug-in will not work in Mac OS Leopard where Java 64bit is the default; this is a known issue in OpenOffice.org. In additions to that, Mac OS X also have a problem in displaying AWT windows (issue 92926). I am still trying to see whether there is anything I can do.
The next issue is with Linux. We tested the plug-in in Debian and Ubuntu, in both cases if the plug-in is installed through the extension manager, the menus either become gray or they will not be available at all. This issue is most probably a problem in 9.10 and 10.04 because the plug-in worked well in Ubuntu 9.04 and Windows. I am glad to say that I have found a workaround for this. If the plug-in installed using the terminal there will not be any problem. Users can use both CLI and GUI versions of the unopkg (Extension manager).
To use the CLI version run
/usr/lib/openoffice/program/unopkg -f ccooo.oxt
and for the GUI version use
/usr/lib/openoffice/program/unopkg gui -f ccooo.oxt
Actually this is not an issue of the plug-in itself it should be a problem with Ubuntu. Similar plug-ins likeOoo2GDand Open Cards are also affected by this problem.
I tested this plug-in in Windows and Linux in both x86 and x86-64 versions and it work without any problem (in Linux with the workaround).
Installation
The plug-in can be found in the extension repository. Alternatively you can direct download from here.
Windows users can simply install it by double clicking the plug-in. Ubuntu (may be other Linux users also) need to install it trough the terminal using
/usr/lib/openoffice/program/unopkg gui -f ccooo.oxt
or
/usr/lib/openoffice/program/unopkg -f ccooo.oxt
Source
The source code of the plug-in can be found at http://code.creativecommons.org/viewsvn/ccooo/branches/akila-gsoc-2010/
Comments and Feedbacks
While I was searching the Internet to find more issues related to the plug-in, I found some blog posts and comments about the plug-in. I have listed them below.
http://www.golem.de/1007/76211.html
http://openoffice.magenta-aps.dk/cliparts-lokalt-eller-online
http://www.ubervu.com/conversations/extensions.services.openoffice.org/en/project/ccoootest
http://www.skolekonsulenterne.dk/Infoweb/Indhold/Links/Clipart.htm
All of these feedbacks were good, except the Mac OS X issue. I am trying to fix it as soon as possible.
To add new feedbacks, users can use the extension page at extension repository. Still there can be issues related to the plug-in. Those issues and feature requests can be added to the CC issues list.
Future Features
Nathan suggested a feature for Flickr; to extract add images from a given URL. So users can copy and paste the URL to OpenOffice.org and the plug-in will automatically download the image and add licensing data also. This can be used for others services also.
In addition to that localization should be completed.
This is time time to thank all the people who helped me in achieving this. I should thank the following people specially for helping me;
- Nathan Yergler: for helping me with good suggestions in the pre GSoC period and in the community bonding period.
- Christopher Allan Webber: for mentoring me in this process and for all the good suggestions he gave.
- Nathan Kinkade: for helping with the SVN issues (yes I had some :)).
- Alex Roberts and Greg Grossmeier: for their valuable suggestions in making the GUI.
Now it is the time to rip off the “test” part from the plug-in name “Creative Commons Licensing (test)” :). The plug-in was released for beta testing since May 2010 and it was downloaded more than 400 times. But making a perfect program is impossible thing. So I appreciate if the users can report any issues and suggestions as I mentioned in the Feedback section. I will always try to fix/implement them.
More information about the plug-in and the screen shots are available in the wiki page.