Monday, August 16, 2010

GSoC: Canola update

The deadline for Summer of Code projects is coming in a few hours, so it's time for an update on my project.
During the last weeks I have been working on switching Canola from etk to elementary. Etk is the old toolkit used in the Enlightenment world, it is now deprecated being replaced by elementary. Etk in Canola was used mainly to create the settings dialogs and panels. Part of this switch I have replaced the etk buttons, lists, entries, labels, etc.. with their elementary corespondent. The more difficult part was to adapt the theme/style of the new elementary widgets to match Canola's design. Finally it looks pretty good, although I have some problems with the alignment of some buttons. I am not sure if there is a problem with my code or a bug in the efl libraries. I have asked for some help on e-develop mailing list and I'm still waiting for their response.

Some of the old Canola plugins will probably have to be updated ( if they use custom panel/dialog that were created using  etk) . I have already updated the Picasa plugin I have developed last year so it's ready to be used with the new version of Canola.

As soon as the efl packages are updated (Eduardo Lima is taking care of this)  the new version of Canola will be available in extras-devel/testing.

A summary of the things that I've done as part of the project (more details are available on wiki page):
  • fixed the annoying segmentation faults 
  • fix system properties for Maemo 5 (battery, wireless and signal level)
  • fix the keyboard input bug
  • use ethumb to generate thumbnails
  • integrate Canola with the Connection Manager
  • integrate Canola with Tracker
  • use elementary instead of the etk widgets

Sunday, July 11, 2010

GSoC status update - Porting Canola to Maemo 5

The mid-term evalution is coming pretty soon so it's time for an update on my GSoC project. I have created a wiki page  with the tasks of my project to have a better overview of the project. 

Since my last blog post I have mainly been working on the Ethumb and Tracker integration.

Thumbnails in Canola were generated using Canola-thumbnailer. Recent version of the EFL libraries introduced Ethumb, a fast library for thumbnail generation. Canola-thumbnailer was old and unmaintained so a switch to Ethumb was necessary.

For media files indexing Canola was using Light Media Scanner. However, Maemo 5 comes with Tracker so it was a waste of resources to have 2 separate databases and to scan&monitor the file system with 2 different processes.  Canola is now going to check for Tracker's availability and make D-bus calls to retrieve information media files (pictures, videos and music).

For the remaining part of the project I will mainly focus to replace the old etk widgets with Elementary

Tuesday, June 15, 2010

GSoC status update - Porting Canola to Maemo 5

Since my last update I have managed to fix the annoying Canola bug ( #5517 is now fixed and verified. The problem was actually in one of Canola's dependencies - python-terra). As a result it is now possible to change themes, change download folder, slideshow options and possibly others (accessing these options was causing Canola to give a segmentation fault message).

The recent PR1.2 update came with some changes in X server  that affects my solution for the keyboard input bug ( #6511 ) . Clicking on a text field in Canola to activate it seems to send not only the mouse down event but also the key_pressed (enter key) event which causes the dialog to close. I'm currently talking with etunko to find the best solution for this problem.

A new "Maemo 5 system" has been implemented. It is used by Canola to retrieve the battery and wireless level. Moreover Canola will now display the level of GSM/3G signal.

Next I'm planning to integrate Canola with the Internet Connectivity library. Canola is now displaying a "Network is down" message instead of trying to connect to the default connection or ask the user to select a network.

Talking with my mentor, etrunko, we have decided to create a snapshot of the current work after the integration with the Internet Connectivity library and update the version from extras-devel. The next features that I will implement will depend on a new version of the EFL libraries, so this is the best moment to upload a new version to extras-devel.

Wednesday, May 19, 2010

GSoC 2010 - Porting Canola to Maemo 5 and beyond

It's been a while since Google Summer of Code 2010 results were announced. I will be working again for Maemo on the project "Porting Canola to Maemo 5 and beyond", with the help of Eduardo Lima(etrunko) who is going to be my mentor.

Canola it's the application with the most downloads for N8x0. The package for Fremantle it's currently in extras-devel but lots of bugs were reported on bugzilla. The aim of my project is to solve those bugs and to integrate it better with Maemo 5 infrastructure/guidelines.

Since the announcement of the results I have started to investigate the most annoying bugs. Until now I have found some solutions for the segmentation fault and keyboard input bugs. I'm planning to keep the community up to date with my progress on the project by posting regularly on this blog.