PR 1.2 SDK for Maemo released with Qt 4.6

If you recently typed apt-get update && apt-get dist-upgrade in your Scratchbox based Maemo 5 SDK, you might have noticed a large amount of packages flooding in - yes, PR 1.2 is near. is already full of PR 1.2 blogs, including a visual overview of the new features and the PR 1.2 Changelog.

This means that the time of the libqt4-maemo5-* packages has come to an end, please use and test the libqt4-* packages (4.6.2~git20100310-0maemo1+0m5), which now contain Qt 4.6.2+x in /usr/lib. To uninstall the old preview packages, just run apt-get remove libqt4-maemo5-*.

Wait - Qt 4.6.2+x? Well, as with every Linux distribution, some smaller fixlets and features were backported. I'd like to highlight a few of them.

Up until now, kinetic scrolling was limited to 20 fps. This is a good default, since 20 fps look smooth, don't drain too much battery and leave some CPU for background processes/threads (isn't it nice to have multi-tasking?). However, for demo purposes, you might want to have 60 fps for that really, really smooth look, so we introduced the QAbstractKineticScroller::scrollsPerSecond property. Unfortunately, our camera cannot grab 60 fps, so no youtube video today :)

The second interesting feature is QAbstractKineticScroller::axisLockThreshold. Imagine that a user scrolls downwards in a QScrollArea. Now, unless he's an android, he won't manage to scroll down in a perfect line, usually it's something like 100 pixels downwards and 5 pixels to the left. The axisLockThreshold property allows to lock the scrolling to the nearest X or Y axis. In our example, the 5 pixels to the left are ignored, and the view just moves 100 pixels down.

Finally, QAbstractKineticScroller::OvershootPolicy allows to set the overshooting behavior when scrolling. The default is to just do overshooting when a view is able to scroll in a particular direction. In addition to the default behavior, overshooting can now be completely disabled, or always forced on.

A note for everyone building Qt from sources - after you upgrade your SDK to PR 1.2, you should use the *-pr1.2 branches (e.g. 4.6-fremantle-pr1.2) to get the latest input method fixes.

Happy Easter Hacking :)

Blog Topics: