Planet maemo: category "feed:b32fefb44b67aa4644bd42f2b7488419"


ReSiStance 0.9.2 released

2011-06-07 09:41 UTC  by  svillar

Every now and then I try to devote some spare time to add new features to ReSiStance. For this release there are 3 major changes:

  • Item window new appearance
  • Open links in external browser
  • Labels support

The item window (aka the window that shows the contents of a particular blog post/news/whatever) has been completely reworked. The header (with the title of the post, the name of the author and the date) used to be an static label on the top that was always visible. That was not a good idea taking into account the size constraints we have for this kind of devices. That’s why I decided to embed all that info the the HTML of the feed item. Next/Prev buttons were also removed from the header. They’re now located on the right in landscape mode.

Another long awaited feature by users was the “open links in browser”. Finally I got some time to implement it.

Last but not least, ReSiStance got labels support (thanks to  Chus Picos again for the initial implementation). This means that you can decide whether to start ReSiStance with the “classic” window with all the feeds, or with a new window that shows a list of labels created by the user. Users can add feeds to one ore more labels and that way they could group them by topics, interests, languages…

This screencast shows these three new features in action:

ReSiStance 0.9.2 from Igalia on Vimeo.

PS: as usual you can checkout the code from gitorious.

Categories: Hacking

ReSiStance 0.8 with Google Reader support

2011-01-11 19:33 UTC  by  svillar

I delayed a bit ReSiStance development during last months because we had a lot of work in Igalia’s WebKit team. But I managed to find some time during Xmass to advance some work and to review a couple of pending patches. The most important ones were by far, the Google Reader support ones.

It all started with some sensational work done by Chus Picos. She did almost all the research regarding the status of Google Reader API (check here if you’re interested) and cooked a very nice set of initial patches. Thank you very much for the great work o/o.

Using those patches as basis, I fixed some remaining issues detected during the review process and implemented a couple of (IMHO) nice features I wanted on top. Basically with ReSiStance 0.8 you can:

  • One-click import of the feeds from your Google Reader account
  • Auto read/unread status sync with Google Reader as you read
  • Add new subscriptions to Google Reader
  • Remove subscriptions from Google Reader

Note that being a mobile app I tried to minimize network traffic as much as possible, and thus, no synchronization is performed automatically except the read status update as you read.

So this is how the main window looks like right now:

There you could see that the Google Reader patches came with a couple of UI changes. Zooming in the left part of the screenshot

unveils a couple of new UI elements:

  • a brand new cell renderer to showboth  feed title with subtitle and small Google Reader like icon for subscribed feeds (Planet Igalia and Fanhouse NBA blog in this case)
  • feeds without favicon now get a default RSS one (see Planet Webkit)

Now if we take a closer look at the rightmost part of the main window

we could realize that another new cell renderer was also developed to show the amount of unread items (and yes the background color is taken from the theme) inside a rounded corner rectangles.

Apart from the new UI items and the Google Reader support, there are a lot of other changes like connectivity improvements (with libconic integration), better exception handling, sorting fixes, duplicate entries detection…

Summing up, this new release not only adds some changes in the UI but tons of them in the guts of ReSiStance, so give it a try if you like it and tell me any bug you might find. Take into account that you need to setup the extras-devel respository in your N900 to have ReSiStance listed in the Application Manager. For those interested in the code, you can get it from the git repo as usual.

Categories: Hacking

ReSiStance with WebKitGtk inside

2010-04-02 10:49 UTC  by  svillar

I have released ReSiStance 0.3 (in case if you wonder what about v0.2, it is just that I didn’t blog about it, but it was released on Monday). I don’t know how it could happen, but I totally overlooked the presence of WebKitGtk python bindings in the Maemo repos by the time I started to code ReSiStance. I decided to move to WebKit as soon as I noticed my mistake, specially knowing all the cool features of WebKit Gtk port from the Igalia mates hacking on it.

These are the more remarkable changes since v0.2.1:

  • HTML rendering is now WebKitGtk’s business. It performs blazingly fast, much more than GTKHtml, you’ll easily notice that.
  • Feeds list can be sorted
  • Added application settings
    • Auto load images
    • Default font size
    • Portrait/Landscape modes

You can see all of them in action in this screecast:

ReSiStance 0.3 from Igalia on Vimeo.

UPDATE: I had to push v0.3.1 to the repositories because v0.3 had missing package dependencies

Categories: Hacking

Vive la ReSiStance!

2010-03-22 12:33 UTC  by  svillar

After all the hard work required to release Modest and Tinymail I finally found some energy to start a new pet project. I have never really liked the RSS reader that comes with the Nokia N900 Igalia gave me. I looks too “Diablo” and it’s not consistent at all with Fremantle look&feel.

That’s why I decided to write my own and, at the same time, regain contact with Python. The result is ReSiStance 0.1.

ReSiStance 0.1 from Igalia on Vimeo.

These are the main features of this first release

  • Support for RSS 0.90, Netscape RSS 0.91, Userland RSS
    0.91, RSS 0.92, RSS 0.93, RSS 0.94, RSS 1.0, RSS 2.0, Atom 0.3,
    Atom 1.0, and CDF (kindly provided by feedparser module)
  • Feed and Favicon autodiscovery (no need to type the exact URI to the .xml file)
  • Add/Remove/Update feed sources
  • Landscape/Portrait mode support (I love apps with portrait mode)
  • Internationalization support

ReSiStance sources are already available for downloading from gitorious and the package for the N900 was uploaded to extras-devel repository.

Categories: Hacking

Tinymail 1.0 released

2010-03-05 16:13 UTC  by  svillar

I’m really proud to announce the release of Tinymail 1.0. New packages are available here.

It has been more than 3 years since the project started, and after all the hard work we think now it is time to release the first version of our beloved framework to build e-mail applications for mobile devices. Thank you very much to all contributors! Specially thanks to Philip, Dape, Dirk-Jan and Rob, you all rock guys!

It is already being mentioned in the official announcement I sent to the tinymail devel list but I would like to highlight the main achievements of this release since the previous 0.0.9 pre-release:

  • New widgets to show the mailboxes tree as a plain list
  • New widget to expose only the latest messages of a mailbox
  • New download external images capability
  • Complete rework of IMAP IDLE
  • Improved namespace handling in IMAP
  • Locking, security and connectivity improvements in POP3 code
  • Improved MIME parsing (PGP/GPG parsing now works)
  • New asynchronous methods for getting folders and messages
  • Upated Vala & Python bindings
  • Improved support for 64-bit architectures

For those of you having a Nokia N900 this release contains more or less the same code shipped within your device (remember that Modest, the email program, is tinymail powered). For all people that followed the progresses in tinymail I blogged about recently (here, here or here) you will have to wait for v1.2 release. I promise you won’t have to wait that much…

Categories: Hacking

The Postman always rings twice

2010-02-19 11:33 UTC  by  svillar

Thanks to the hackfest time Igalia gently gives me every week I could resume the work I had previously started to add ENVELOPE support to tinymail.

What’s this stuff about? Well basically what we can do now is ask the server for ENVELOPE instead of fetching a random set of headers (like ‘From:’, ‘Subject:’ …). Why is this cool? For several reasons:

  • Speed: IMAP servers do cache ENVELOPE information so they do not have to inspect every email message to extract the requested headers. They can give you ENVELOPE blazingly fast (I run a rough test and downloading a folder with ~1500 headers from AOL IMAP server lasted twice the time of downloading ENVELOPE and BODYSTRUCT, and this means minutes).
  • Bandwidth: ENVELOPE is smaller in size than headers as the name of the headers is not transmitted over the network
  • Future: RDF storage support in tinymail is now closer

You can find this new feature in trunk.

Categories: Hacking

Moblin support for Tinymail

2010-02-10 12:13 UTC  by  svillar

I have just submitted a couple of patches (this and this) to Tinymail that add Moblin to the list of supported platforms.

Basically the main addition is the TnyMoblinDevice, it’s an object that allows every application that uses Tinymail to use the connectivity services provided by Moblin’s Connection Manager.

In order to build Tinymail for Moblin you just need to use --with-platform=moblin in the configure process.

Categories: Hacking

Dear GMail IMAP server developers…

2010-02-09 09:01 UTC  by  svillar

Some people have already complained about the way GMail IMAP works. With great power comes a great responsibility. Google guys, you have one of the largest email services in the world, so this means that you have to care a lot about users and clients. Dape recently reported and error in how GMail creates the body structure of some particular messages and still got no answer.

Now I found that it does not return the full bodystructure of a multipart/mixed with two refc822 messages in it. If this sounds strange to you, it’s basically how Mozilla Thunderbird creates an email with two other emails as attachments. GMail simply will not tell you about the structure of the two attached emails.

Bodystruct support in Modest is working in most cases although these problems with GMail will most likely mean that it won’t be shipped with the next software update for the N900.

Categories: Hacking

Another One Bites the Dust

2010-01-26 17:04 UTC  by  svillar

After some months of really hard work, I managed to take a look at one of the most annoying bugs people have found while using Modest. There was some problem in Tinymail with IMAP servers that do not support NAMESPACE. Basically users were not able to open their INBOXes, just the children mailboxes.

This morning I committed this long awaited fix. This bug was affecting among others people fetching mail from Oracle Beehive, Runbox, O2Online, and probably the most important one, (German’s biggest provider of free email). Note that if you select GMX in your N900 it currently works fine because it uses the POP access as it is free of charge. IMAP access, the one that was not working, needs a paid account.

PS: as I mentioned in the bugzilla, you will get the fix with the next release of Maemo5 software.

Categories: Hacking

Modest with BODYSTRUCTURE support

2009-12-16 17:20 UTC  by  svillar

These last weeks Dape and me have been working really hard fixing bugs in Modest and Tinymail here and there. Best Modest ever is coming.

But today, I don’t want to talk about fixes but features. I want to talk about BODYSTRUCTURE. This is one of the coolest features we could have added to Modest. Tinymail had some initial support, but due to the many bugs it had and the fact that some use cases were not supported forced us not to use it so far. But thanks to the time Igalia gives us for hacking we managed to get it working.

Oh wait! I didn’t tell you what BODYSTRUCTURE is about. Email messages are made of a group of MIME parts. One of them could be the subject, another one some footer and some others could be attachments. Without BODYSTRUCTURE support we were forced to download all those MIME parts when you wanted to see a message. This meant that if the message had some heavy attachments and you only wanted to see a small body with just a couple of words, you had to wait until the full message was downloaded,

With this new feature, we can download every MIME part one by one, and thus saving you time, disk space and specially if you’re using a mobile device like N900, money in your GPRS connections. Do you want to read only the body? No problem we’ll show you that you have some attachments but we won’t download them until you request us to do so. Do you want to forward the full message? No problem, we properly detect that and include the full original message whether or not it was completely downloaded before.

This will most likely be included in the next N900 software update that will be eventually delivered by Nokia. In the meantime, if you don’t want to wait just download packages and build it by yourself. Remember that you can find us in #modest channel @ Freenode.

Categories: Hacking