Akonadi Google 0.3.1

Hi! Nearly four weeks after the 0.3 release of Akonadi resources for Google there’s a new version with just a few, but important bug fixes and improvements.

Fixed bugs and crashes:

  • Bug #296541 – Uncought exception in signal handler in Contacts resource
  • Bug #297824 – Uncought exception in signal handler in Calendar resource
  • Bug #297548 – Crash at akonadi start after having added a new contact
  •  resource
  • Bug #298054 - Can’t build libkgoogle with KCal
  • Bug #298518 – Unable to edit newly created events
  • Bug #298519 – Deleting events incorrectly reports an error

The first two bugs were especially tricky as I couldn’t reproduce them, but many  users were affected by ugly and repeating crashes. But now the “Google experience” is much much better Smilie: :).

Big thanks go to Alex Fiestas who has contributed various improvements to libkgoogle to better work with 3rd party apps (so now we can be looking forward to his web-accounts wizard Smilie: :) ).

Sources: akonadi-google-0.3.1.tar.gz (MD5:  fed8d9082547835ab916edd219831cf6)

Bye!

PS: I found this on Akademy wiki, so:

Posted in Akonadi Google, KDE Tagged , , , ,

Akonadi Google 0.3 arrives

After many months of “I will release it next week” I finally released libkgoogle 0.3 and new version of Akonadi resources for Google this week.

So, what’s new? I managed to implement everything I described in this post back in November. That’s support for multiple Google accounts, and merging the tasks resource into the calendar resource (so now it’s called “Calendar and Tasks resource”Smilie: ;). The calendar now properly supports events recurrence and partially exceptions in recurrent events (there’s still some work to be done). The contacts resource now splits your contacts to “My Contacts” and “Others” groups. I hoped to fully support contact groups, the code was even in place, but I’ve run to some problems how to store it in Akonadi and unfortunately KAddressBook is not “compatible” with the Google’s concept of contact groups, so I decided to stick with the two elementary groups and hopefully I’ll get to this later (maybe some PIM dev could help me on Akademy? Smilie: ;) )

If you run to any problems or bugs, please report them to the libkgoogle product in bugzilla.

Finally, I’d like to thank to Jan Grulich and Vojtěch Zeisek for putting their contacts and events at risk to test the pre-release versions and provided valuable feedback.

Sources

(Updated tarball!) akonadi-google-0.3.tar.gz (md5: 8c5c1e015068bea90bf25dd7858dc913)

 

If you want to follow the most recent development, you can use sources from the master branch.

Have a nice day!

Posted in Akonadi Google, KDE Tagged , , , ,

Evolution meets WebKit

Evolution is the default email client, address book and calendar application in GNOME. It has large variety of features, including support for Microsoft Exchange and Google services. But it’s weak spot for some time now has been a poor email renderer. Evolution is using GtkHtml, which cannot compare to today modern HTML renderers.

And so, eight months ago, after working on Evolution for about 5 months, I took the webkit branch after Matthew Barnes and begun to dig into depths of Evolution’s email formatter, parser and renderer and started porting it to WebKit. Today all the work has been merged to the main branch and Evolution made it’s first step towards leaving GtkHtml behind.

So what’s new?  Many things! Thanks to GObject introspection in DOM bindings we can modify the rendered emails on the fly without parsing and rendering the entire email again. This makes expanding and collapsing headers and attachments previews much faster, smoother and improves the overall user experience.

Another benefit for users is full support of CSS. While GtkHtml does not support any styles, WebKit does. This means that various newsletters and flyers are rendered correctly and with all the details. WebKit has also first-class JavaScript support, but don’t be afraid. Scripts were disabled so that your emails and comfort are safe.

The invitation preview plugin has been rewritten to be completely in HTML, so it’s much easier to copy text from it, while all it’s functionality remains preserved (using DOM bindings again). It also makes it possible to print the invitations and events previews.

When I was rewriting the formatter, I have also looked on printing. Print-outs now look fresher, are better formatted and the content is better structured. I have also added a brand new feature, which allows you to select which email headers and in which order should printed. This option is available directly in the printing dialog, in “Headers” tab.

The port is ready for daily use, but there might still be bugs hiding at various places. Therefor the changes we merged so early after 3.4.0 release, so that we have enough time before 3.5.1 to catch them all and at least 6 months until 3.6 stable release to make sure that everything is perfectly in place.

And what’s going to happen next? I will now start porting the email composer to WebKit. If things go well and smoothly, I might make it to have it in Evolution 3.6 this Autumn and thus getting rid of GtkHtml once and for all.

Bye!

Posted in GNOME Tagged , ,

KDE Telepathy plugin for KRunner

Yesterday I have switched from Kopete to KDE Telepathy. At first I only wanted to see what’s new, but I was quite impressed and I didn’t see any problem that would keep me from using KDE Telepathy instead of Kopete. Except for one -  a contact runner. I’m an incredibly lazy creature and instead of having to remember various shortcuts or even touching mouse, I rather use KRunner for nearly everything, including starting chat with my IM contacts.

In the true spirit of open source, instead of whining about a missing feature I decided to take an action and write the plugin myself Smilie: :)

Same as with Kopete Contacts runner, just by typing name of your contact will display matching contacts in KRunner. If you have one contact in multiple accounts, it will display the contact multiple times, with name of the account as well.

The results are sorted by presence, e.g. if a person is online on Jabber, but offline on GTalk, the Jabber contact will be listed first.

If the contact has capabilities for audio or video call, file transfer or desktop sharing, you will see multiple buttons. By default, just by hitting Enter on the selected contact will start text chat, but by clicking on one of the buttons you can start the respective action. If the other side does not have some capability, it’s button will not be displayed.

If you want to explicitly start for example an audio call, typing “audiocall John” will list all contacts named John capable of audio call and clicking on it or hitting Enter will start an audio call immediately. Similarly there are commands “videcall”, “sendfile” and “sharedesktop” for respective actions.

This last feature is untested though, because none of my contacts seem to use KDE Telepathy or have any capability other then text chat Smilie: :D

Here is some artificially made screen shot Smilie: :)

KDE Telepathy Contact Runner example (Ignore the KSnapshot icon, I had already removed all the code to generate this preview when I noticed it Smilie: :D )

You can get sources from my scratch repo on KDE git:

git://anongit.kde.org/scratch/dvratil/ktp-contact-runner.git

And finally, big thanks to all our telepathic guys for their great work on the framework Smilie: :) Keep it up!

Bye

Posted in KDE Tagged ,

KDE Google Reader

I’ve made a big progress with the upcoming libkgoogle 0.3 last weekend on the Fedora KDE SIG meetings which took place in Brno. I then decided to take some rest from all this Google things and wanted to relax by working on something else. But then I remembered that some time ago I experimentally implemented the Google Reader API and…well, see for yourself.

Continue reading

Posted in KDE Tagged , ,

Akonadi Google Resource: what’s comming?

Akonadi Google

It’s been a while since my last blog about the Akonadi Google resources and since my last contribution to the project (except for a few minor bug fixes lately). Today I decided to change it (at least the former) and show you that the project is still active (I just don’t have much time to work on it) and reveal to you what big changes I plan to do in the near future.

Continue reading

Posted in Akonadi Google, KDE Tagged , , ,

Akonadi Google Resource: Tasks support

Hi!

As the title says, I just added support for Google Tasks by creating the Akonadi Google Tasks Resource. The Tasks API provided by Google is really simple and does not support many properties, only name, summary, due to date, completed date and status. You can’t set progress percentage, start date, attendees nor reminders (this sucks!). Despite the fact, that the API provides means for tree-like structure of tasks (tasks and subtasks), it does not seem to work. So you can only have a linear list of tasks. A positive thing is, that due to this limited functionality of Google Tasks the resource has a full support of this API. Continue reading

Posted in Akonadi Google, KDE Tagged , , ,

Akonadi Google Resource: complete rewrite

Hi there,

today I finally pushed a completely new version of the Akonadi Google Resource. Since last update cca 2 months ago I’ve completely rewritten the resources, moving most of the functionality into libKGoogle . The library now provides access to Google services and can be easily used by any other project. Continue reading

Posted in Akonadi Google, KDE Tagged , , ,

Akonadi Google Resource, part III

It’s been more then two weeks since my last update about progress on Akonadi Google Resource, so here we go. Many bugs in calendar were fixed, resource now supports creating and editing events and Contacts resource can fetch contact photos.

Continue reading

Posted in Akonadi Google, KDE Tagged , , ,

Akonadi Google Resource 0.2

Hi,

so it’s been almost ten days since first version of Akonadi Google Resource and now here comes 0.2. This version introduces Google Calendar Resource, so that you can finally access Google Calendar from comfortable interface of KOrganizer.

UPDATE: Akonadi Google Resource is now in KDE git repository!

Continue reading

Posted in Akonadi Google, KDE Tagged , , ,