Friday, August 6, 2010

GSOC update - Desktop widget complete

During the last few weeks I have been making some final changes to the desktop widget and it should be ready to be merged in with the rest of FaceBrick now.

* Changed the buttons to use default maemo icons (as per Dominik's comment to my last post)

The buttons are slightly different, but not a huge change.

* Switched to using the Qt Homescreen adapter
When I was setting the widget to be a homescreen widget manually I noticed that in order to click a listview item or a button, you would have to first click the widget once to get it in focus, then once more for the item you're clicking to actually notice something is going on. This is fixed in a later version of Qt, but using the adapter takes care of fixing this for now - which was my main reason for trying it.

It also sorted out some other issues I would have had otherwise, such as making making FaceBrick show up in the "add widget" menu (and re-appear there if removed) and restarting the widget if the desktop were to crash.

(Ignore the gibberish at the top - my phone is set to Norwegian ;p)

Using the homescreen adapter is quite easy, you only need an extra 2-3 lines of code and that's it. The only minus with it is that in order to test your homescreen widget, you need to package the application, install it and add it to your desktop via the menu - which probably wouldn't be too bad if you have done packaging before.

I ended up having a fun time last week trying to sort out packaging, but I eventually managed to package an example widget with help from this tutorial and the forum. Packaging FaceBrick itself turned out to be more hassle though.

FaceBrick uses a third party library called libqfacebook, and MADDE isn't all that happy with third party libraries. In the end I ended up trying scratchbox instead and it worked like a charm (at least for the most part)!

What's next?
* Possible fixes to desktop widget after mentor review
* Continue work on the inbox (fetching messages)

1 comment:

  1. Looks good! When can I start testing this?