Qt on the N900

Up until now, Qt for Maemo based devices has only been available as a community project.

Up until now?

Yes, up until now. We're happy to announce the first technology preview of Qt 4.6 for the N900 (Maemo 5). Highlights:

  • Native look & feel via Hildonized style
  • Hardware acceleration with OpenGL ES 2
  • Input method support (hardware keyboard and software keyboard)
  • Global menu integration - QMenuBar will be mapped to Maemo's global menu
  • Online/offline support in libQtNetwork
  • Standard Dialogs support (e.g. file dialog)
  • Maemo stacked widget support
  • Multimedia playback via Phonon

Most of those features were already available in the Qt 4.5 based community port and have been brushed up, extended and partially rewritten for Qt 4.6. There are still some rough edges, but we're confident that we can deliver a fully supported Qt running on the N900 during the lifetime of Qt 4.6.

Here's another of those videos straight from the lab showing Qt on the N900. Watch it if you want to get an impression of where we are now, or if you're just curious about what the color of our desks here in Munich is :)

(planet readers click here for the video)

Note that Qt for Maemo 5 can currently only be built within the Maemo scratchbox-based SDK. We're in the process of creating official packages, but it'll take a few more days until they hit upstream. For the brave ones that want to try it today, you can build the Maemo-ized Qt version with the following configure switches:

-maemo5 -opengl es2

Note that the Maemo SDK contains a full emulator, so even without owning a device, you can test how your Qt app will look and feel on a N900 device.

Download link for the source code: http://get.qt.nokia.com/qt/source/qt-x11-maemo-src-4.6.0-alpha1.tar.gz

Public git repository: http://qt.gitorious.org/qt/qt-x11-maemo

Announcement on our website: http://qt.nokia.com/developer/qt-for-maemo-developers


Blog Topics:

Comments

Commenting for this post has ended.

?
Marco Borm
0 points
189 months ago

This is a big step forward, great!
Funny to see the N900 prepre-production unit in the video.

?
Javier
0 points
189 months ago

And what about the N810? is it supported still? i don't want my next 'tablet' be a phone!

?
Deven
0 points
189 months ago

This is great! Very slick looking... Now what does KDE look like on it? :D

?
Henrik Hartz
0 points
189 months ago

Woop! Can't wait to get my N900 now...

?
sandy
0 points
189 months ago

Super cool!

?
Harald Fernengel
0 points
189 months ago

Javier: Just don't put a SIM card in, then the N900 is the perfect tablet ;)

Qt for Maemo <5 is still only community supported, I hope the garage.maemo.org people can help out with a 4.6 port (it's basically just about resolving the merge conflicts).

?
Thiago Macieira
0 points
189 months ago

@Marco: it's easier to buy the device on the online store (nokia.com) than it is to order it internally for our developers to work with.

?
espenr
0 points
189 months ago

Harald, stop being so awesome - it makes the rest of us look bad!

?
Alessandro
0 points
189 months ago

/me drools
And I am not that easy to impress.

?
jos van den Oever
0 points
189 months ago

greetings from the summit!

Glad to see this available already. This should really help making/porting nice applications.

?
Andr&#233;
0 points
189 months ago

I would hope the port would be supported for longer than just 4.6? With Qt appearing at new platforms all the time now, can we assume some measure of stability in the sense that is a platform enters the supported platforms list, it will really be supported for a serious time? Including as many of the technologies as possible (like Phonon)?

?
Tim
0 points
189 months ago

Cool, but I'm hoping you plan to make it more finger-friendly. It doesn't stand a chance vs the iPhone, Android, etc. if you have to use a stylus.

?
Felipe Andrade
0 points
189 months ago

My only advice is: please, stop using styles! You do not need them! :P
Anyway, keep up the great work! :)

?
Thomas
0 points
189 months ago

I've seen some references to new widgets (QtSvgButton, QtSvgSlideSwitch) in the above video, but can't find them in the preview docs - is this public API for all platforms or only Maemo?

I know you guys organized this pimp my widget contest a couple of months ago, but I'm still eager to see results of this in Qt itself. I know I could do lots of things myself with Stylesheets already, but it would still be great if Qt could introduce a couple of new widgets which are nowadays standard f.e. on newer Mac OSes (search fields with this little "close" button inside, f.e., or a more up-to-date accordeon widget, or these little concatenated buttons with custom shade you see below lists which have a little '+' / '-' as hint, stuff like that).

"Patches welcome", I think... :)

?
Morty
0 points
189 months ago

Looks greate, and I have started to wanting a N900 :-)

One question, will the N900 have official support for upgrading to the next generation Maemo, the Qt based one?
Or must one wait for the next generation phone, to get the interresting version of Maemo?

?
Harald Fernengel
0 points
189 months ago

Andre: No info yet on how long we'll officially support Maemo 5. Even if we drop official support, it'll still live on as community project.

Thomas: You can find the sources for the SVG widgets here: http://qt.nokia.com/develop...

Morty: Sorry, no clue - that's up to the Maemo team

?
david
0 points
189 months ago

Very nice. Nokia certainly has done a great job in making Qt more relevant. Outside of Qt and the keyboard integration this demo has shown, can you elaborate as to the rest of Maemo 6, that is the PIM , Telephony stack, camera integration, etc. Will these use any of the former Qtopia Phone stack or is it all a complete rewrite. When might we expect to see a full phone implementation based on Qt ?

?
Wanderson
0 points
189 months ago

In my applications for N810 with Qt, I found some problems with numbers: QTimer only works in sequences like 500, 1000, 2000, 4000, 8000, 16000..., horizontal positioning widgets only works if I use numbers that are divisible by 4, like 600, 400, 200, 256... These were my main problems in it, will it be fixed in Qt Maemo 4.6 official version?

?
Thiago Macieira
0 points
189 months ago

Wanderson: Qt was not officially supported on the N810. We don't really know what those bugs are, since they were never addressed by us.

?
Andras
0 points
189 months ago

I played a lot lately with the OpenGL ES2 on a Beagle Board (that should be similar hw to the N900) and find it well...buggy. Do you want bug reports, or is there a team that I can contact with the issues? Will the ES2 part be officially supported?

?
Pekka Kosonen
0 points
189 months ago

Regarding the speculations of Qt for maemo 5 support I'm seeing it having a pretty long lifetime. N900 is an important device for us.

About the N810 and other internet tablets the support and contacts can be found from qt4.garage.maemo.org/

BTW had a great dev days in Munich, thank you guys, cheers!

?
Adrian Glaubitz
0 points
189 months ago

Hi,

that demonstration is awesome. Makes me want to have an N900 and I am going to get one (once the price has dropped a bit ;)). I love the way it integrates with Qt, great. That device was overdue and would be the first Nokia for me to buy for a long time ;-). I was originally aiming for an Android but now I have changed my mind. I am developing applications with Qt myself, so I am both user and developer.

Btw: What's the name of that soundtrack? I like it. Would like to add it to my collection, guess it's on Spotify also.

Ah, and that's Oslo downtown on the map application, I recognize slottsparken and Karl Johans gt. Was there just a few days ago and also walked along at the headquarters in Nydalen.

Adrian