Archive for August 24th, 2008

Mailody and Akonadi meet Nepomuk

Isn’t it great to have two Pilars of KDE in the subject? Anyway, this weekend I started working on Nepomuk. The end goals is simple, I want to tag my e-mails and have the possibility to enter a comment about them.

First step was trying to get some basic interaction with Nepomuk. They seem to change their API a lot, so it took some time and help from DanielW on #nepomuk-kde to get that working. Afer that I went looking for a widget that could be used for this.

I actually like the complete widget that Dolphin uses, but that’s not available in KDE libs and I did not want to go throught the process of doing the move. Luckely Nepomuk provides a tiny widget which can be integrated easily and does not take to much space in Mailody. I’ve put it in a QDockWidget so people can put it at the bottom of the complete Mailody window if they need more space. It now looks like this:

[img_assist|nid=245|title=Mailody meets Nepomuk|desc=|link=none|align=center|width=453|height=166]

On the right there is a little arrow and if you press it, you see a popup with all existing tags so you can easily assign them to a message. Whenever you switch between messages the area shows the assigned tags.

Assigning is fun, but you need to be able to do anything with it, right? Right. Of course you can use the kioslave to search for the tag and get all the messages which are tagged with that tag, but that should also be possible in Mailody.

So I implemented an Akonadi Resource for it. Similar to an IMAP resource that shows you the folders of an account, the Nepomuk tags resource shows you a folder for each tag, selecting it brings out all the messages that belong to that tag. It looks like this:

[img_assist|nid=246|title=Akonadi meets Nepomuk|desc=|link=none|align=center|width=391|height=224]

To get it to work Volker Krause implemented the LinkJob and UnlinkJob in the Akonadi KDE library. This makes it possible to link certain messages from there original folders to a virtual folder. The server was already prepared to handle this kind of Virtual Folders. What would we do without Volker?

Conclusion is that it is now possible to tag your emails with any tag you like and retrieve the messages with a certain tag just as easily. Next step is to implement the possibility to make comments on mails.