scroll the message w/ keyboard on mbox focus
autoscroll when reaching viewport upper/lower edge
merge scroll-by-keyboard branches
distance dependent autoscrolling
Ubuntu version: Use tab to switch TextFields in ImapSettings.qml

REVIEW: 117183
Adding icons for Ubuntu

These are copied or derived from the ubuntu-mobile-icons package available a
http://packages.ubuntu.com/raring/all/ubuntu-mobile-icons/download
and are available under the CC-BY-SA 3.0.
Copyright by 2004-2012, Canonical Ltd.

REVIEW: 117192
Fix missing path in Ubuntu/main.cpp

BUG: 332639
REVIEW: 117202
Ubuntu: fix insecure access to CWD when looking up files

The logic wa sapparently to make sure that we can find the QML file when run
straight from the build dir. However, it is important to use the path to the
aplication binary instead of the $CWD because otherwise Trojita would do
extremely dumb thing when called from inside an attacker-controlled directory.

This commit also adds the path to the app's exec file to the list of paths to
perform the lookup in order to preserve the desired functionality.
Ubuntu: clean up the path manipulation a bit

There's no need to clutter the original variable.

Also use QFile::exists as per Thomas' recommendation.
Ubuntu: do not mess with appDir path when using user-provided location

This enables stuff like `trojita --qml /path/to/it`.
Ubuntu: remove support for passing paths to QML files

There's no need to do this. The app will always load the QML from a path
relative to the application's own location (which handles the case for running
from inside the build directory). If that is not available, systemwide locations
are consulted as a fallback.

I just don't see any use case behind having to pass paths here.
Ubuntu: Remove debugging output
Ubuntu: It's Trojitá, not Trojita, and add l10n
Merge branch 'ubuntu-qml-path'

REVIEW: 117205
Add the Keywords entry to the .desktop files

The documentation is rather scarce on what kinds of keywords one is supposed to
put in there, so I took a shameless look at what the LibreOffice folks are doing
[1] and played a copycat.

[1] http://cgit.freedesktop.org/libreoffice/core/commit/?id=9d844ce3f8e411bfb4237372b1a6d4aec21a0a65

BUG: 332641
REVIEW: 117191
IMAP: treat numbers as string when strings are expected

The old code would sometimes try to be too optimistic when parsing bits which
looked like numbers even though they were not actually numbers -- e.g. a flag
named "333x666" would get parsed as two flags, the "333" and "x666". I suspect
this is one of the reasons why hand-written parsers using this pattern are
considered evil.

The only place which actually benefited from this directly-to-numbers approach
was the THREAD parsing, which now got switched to extracting the numbers from
QByteArrays.

REVIEW: 117186
coding style: Always use curly braces on both branches of the if statement
Use qobject_cast when checking the return value via if
Merge branch 'messageview_fixes'

REVIEW: 117189