Monthly Archives: February 2011

Reading mail without distraction

So one thing I do a lot, every day, in the morning and in the evening, is reading mail. With friends, family, work, appointments and what else. But as far as I can think back, this is tedious. And it is a lot of work to get a mail client do what I want. A cuple of minutes to randomly flip settings until it stops showing errors. Then some more time to get rid of extra bars and columns and make it fit inside my screen without scrolling. And then to find out how to be notified of new mail. And those are the basics, I didn’t even think about searching mail yet. Or waiting for it to startup.

The gist of this is, I am now breaking free from this past and releasing a mail reader that works, that doesn’t even ask me about all these details and that magically works after I type my name, address, password and company name. That’s it. I am surprised myself. I expected having a huge set of settings was mandatory, but it turns out I don’t miss them a bit. Also no menubar and no statusbar. Fetching mail happens in the background, cached locally so I can use it without lags and even when I’m travelling and have no network. Secure IMAP only for the moment, I can’t even remember when I last used something else. Incidentally it also works fine with Gmail.

Support for Ayatana messaging indicator included. Developed on Archlinx 64bit. Underlying Xfce core. So I think this app is pretty portable. You need Gtk 2.18, GLib 2.26, WebKitGTK+ 1.1.18, unique, libnotify and libcanberra. The indicator can be disabled if the distribution doesn’t support it. For compiling Vala is needed, which on a related note is a very nice language.

I recommend the Elementary icon theme and GTK+ theme. A sensibly uptodate theme is expected, so if in doubt get Elementary as a fallback to your favourite icon theme.

I also recommend to get the [https://launchpad.net/dexter-rolodex addess book Dexter]. If it is installed, Postler will autocomplete addresses, use it for sender names in the message list and let you add contacts with one click from a message. It is optional however.

So [http://www.twotoasts.de/media/postler-0.1.0.tar.bz2#!sha1!a8c7fdff740c3d4e46b842d6b70fcea56b4b766a download Postler v0.1.0] (237 kB) now and have some fun reading mail, not setting it up.*

For Ubuntu and derivatives, there are two PPA’s available, ppa:postler-dev/ppa and ppa:postler-dev/devel for stable and daily builds respectively.

*Improvised download location due to a problem with the release manager.

Page groups, page icons and pretty quick reviews

I updated [https://bugs.webkit.org/show_bug.cgi?id=32789 a patch adding WebKitWebGroup API], which is going to let applications inject scripts and styles into views or, as the name indicates, groups of pages with a common name. The methods to add and clear scripts are in a separate patch, discussion is needed on what the exact API should look like. The page group will also be the way to control visited links and DOM storage privileges, those are implicitly global currently with no way of changing it.

With my latest patches I encountered a lot of false positives on automated coding style checks. I was happy to see that the issues with WebKitGTK+ API headers were fixed very quickly after I reported them.
I also noticed and fixed [https://bugs.webkit.org/show_bug.cgi?id=54393 a regression with missing default menu items] and again review happened in no time. This is how it should be.

At the moment the access to page icons, or favicons, consists of a function to obtain the URI for a web view. [https://bugs.webkit.org/show_bug.cgi?id=32510 The new WebKitIconDatabase object] is there to make it more flexible. Icons can be loaded into pixbufs, it is possible to globally listen to icon changes, which is essential for bookmark icons or history display and the location on disk can be changed, including unset to disable icons if so desired.

Thanks again to [http://www.lanedo.com my employer Lanedo] for letting me hack on WebKit.

Menubar, multiple infobars and Win32

Aiming to get back to a sane release cycle, this release fixes crash on autocompletion, adblock which was half-broken in the last release, duplication of bookmarks on startup and using the Go button to open addresses.

This release by default has no menubar in new installations. Existing users can right-click the toolbar and select ‘Menubar’ to the same effect. The ‘app menu’, also called ‘compact menu’ informally, has existed in previous versions but I was concerned it didn’t fully replace the menubar functionally, I am now confident it does provide the better experience.

Spontaneous collaboration of users on IRC brought up proper restoring of tab order in the session. This is the kind of small detail I personally never noticed much but people who care about it were able to make a big difference literally over night, just before the release.

Fans of user scripts and styles will welcome that they will no longer see multiple infobars in the wrong tab, and support for the review pages on userscripts.org.

Bookmarks can now be exported to Netscape HTML, as compatible as possible in light of apparent bugs of other browsers with regard to escaping.

Progress and search engines in location are now mandatory, as well as download notification bubbles. The statusbar no longer popups up for downloads if it was explicitly hidden. This is clearer and works better.

There is also a way to reload uncached now with a hotkey, by default Ctrl+Shift+R.

Finally thanks to PaweĊ‚ we have a new Win32 release again. Note that this should be considered an unstable release as it didn’t undergo much testing, so installing it in a separate location is recommended. Any feedback and bug reports are very welcome, and especially anyone willing to investigate Win32-specific problems will be appreciated. I must give kudos to Peter who made the previous releases possible and made a huge effort at polishing the Win32 builds.
There is only an archive and no installer at this time.

So [http://archive.xfce.org/src/apps/midori/0.3/midori-0.3.2.tar.bz2 download midori v0.3.2] (806 kB) ([http://archive.xfce.org/src/apps/midori/0.3/midori-0.3.2.tar.bz2.md5 MD5]) ([http://git.xfce.org/apps/midori/tree/ChangeLog ChangeLog]) already!

[http://www.twotoasts.de/media/midori-0.3.2.7z Midori Win32 Archive v0.3.2] (11,3 MB)

File choosing, passwords and translations

So I started to get back to WebKitGTK+ hacking after being inactive for a while, [http://www.lanedo.com Lanedo kindly sponsors some time for me me to work on WebKit]. I spent some time to get an overview of the bug load while doing test builds, which still require patience and a lot of tea, despite the two 2 2.5GHz cores I have.

So I updated and improved the proposed patch for [https://bugs.webkit.org/show_bug.cgi?id=32163 WebKitFileChooser API], which should allow applications to provide their own file chooser, preset the right folder and keep track of uploaded files, including support for multiple files.

A seemingly simple issue is [https://bugs.webkit.org/show_bug.cgi?id=34285 support for input methods in password fields] which is basically unconditionally disabled right now. By extension virtual keyboards can’t be used. What stalled this in the first place is that the Mac port has completely different code for it and understandably reviewers are hesitant to continue working around the inconsistency.

I noticed prominently a number of translations slumbering in bugzilla, so I actually went ahead and committed all I found except one (waiting for reply from the translator). And it may be possible to add these to the next stable release as well.

[https://bugs.webkit.org/show_bug.cgi?id=50561 Pan Scrolling] is a popular feature. You may have never heard of the name, at least I didn’t know that term before I found out WebKit calls it that. Middle click on a page, and a four-directional mouse pointer appears, allowing you to scroll by moving the mouse. The featues is right now disables by default in WebKitGTK+ and depends on a build-time option. I updated a patch to add a runtime setting, and I am also proposing to make it unconditional. Waiting for feedback.

I also fixed [https://bugs.webkit.org/show_bug.cgi?id=54087 too many spelling suggestions] and [https://bugs.webkit.org/show_bug.cgi?id=54092 a redundant separator in context menus]. Small but very noticible bugs.