GSoC 2010/Projects/Porting Canola to Maemo5

Porting Canola to Maemo 5 - GSoC 2010 Project

 * Student: Mirestean Andrei, email: andrei dot mirestean at gmail dot com
 * Mentor: Eduardo Lima
 * Project Status: accepted, in development
 * Repository:
 * http://code.openbossa.org/projects/canola/repos/andrei1089-clone
 * http://code.openbossa.org/projects/python-terra/repos/andrei1089-clone

Status updates for the project can be found on the blog: http://andrei1089.blogspot.com

Project summary
The aim of this project is to port Canola to Maemo 5, fixing problems that it shows. Also change some of the underlying libraries to adequate better to Maemo 5 infrastructure/guidelines. Moreover the project aims to prepare Canola for Meego.

Progress

 * solve segmentation fault bug (done)
 * this bug was causing Canola to crash while accessing most view in the options menu (theme change, download folder change, slideshow options and possibly others)
 * it was a really strange bug as it can be reproduced only on the N900, the same code is running ok on the old N8x0 tablets


 * keyboard input bug (done)
 * this bug affects all EFL application running on the N900. The window manager requires that WM_TAKE_FOCUS or InputHint to be set in order to receive keyboard events. This is solved in recent versions of the EFL libraries. Etrunko, the maintainer of those libraries said that he is going to update the libraries in the following weeks.


 * integrate Canola with Ethumb (done)
 * recent EFL libraries provide a fast module for thumbnails generation, so using Canola's own implementation ( [http://code.openbossa.org/projects/canola-thumbnailer Canola-thumbnailer) doesn't make sense anymore


 * create a new Maemo5 system (done)
 * some of the APIs to retrieve system information (battery status, wireless signal strength, etc) have changed Canola was not showing them properly. Also a new icon to show the strength of the GSM/3G signal has been introduced in the status area.


 * integrate Canola with Internet Connection Manager (90% done)
 * Canola was displaying the message "Network is down" whenever it required internet access and no connection was available. This behavior was changed, showing the standard internet connection chooser dialog.


 * integrate Canola with Tracker (80% done)
 * Canola was using its own library to search for media files (Light media scanner]). Maemo 5 is using Tracker to index files so it doesn't make sense to have another database just for Canola. Canola is now checking Tracker's availability and is requesting data about videos, music and photos using D-bus calls.


 * replace etk widgets with Elementary
 * Etk was the old widget toolkit used by the EFL applications. It is now deprecated, it's place was taken by Elementary. The aim is to remove the etk dependency for Canola. Also some nice elementary widgets (slideshow for example) could be integrated in Canola if there is enough time

A snapshot of the work done in the first half of the coding period is planned. After the update of the EFL libraries in the Maemo repository, Canola will also be updated.