Kate is maemo chief engineer in Forum Nokia,
She has long Linux/Open Source developer background.
kate.alhola | 20 October, 2009 14:09
Maemo summit in Amsterdam 9..11.10.2009 colelcted nearly 400 maemo developers. Qt was clearly one of main themes as addition to N900 and Maemo 5/Fremantle and some advance information about Maemo 6 Harmattan.
There was several presentations about Qt, i had presentation with tittle Qt for Maemo 5 , maemo_qt_maemosummit_2009_1.0.pdf. I covered in my presentation roadmap of Maemo Qt,Maemo Qt port and portting Qt applications for Maemo. There was also same time announcement Qt4.6 fort Maemo and Nokia announces official Qt port to Maemo This caused lot of confusion and I try clarify situation little bit.
Maemo Qt history starts from Nokia 770 times when i made first Qt3.3.4 port but this did not lead anywhere. When Nokia announced beginning of 2008 acquisition on Trolltech i quickly realized that we need to have Qt for Maemo. In these days, Maemo Diablo was GTK+ based and there was no intention to have Qt at all. Forum Nokia decided to support Maemo community for Qt port and we hired Antonio Aloisio (GNUton) as lead developer summer 2008. We continued Maemo Qt development together with open source community. Special thanks to Kimitake, David Greaves(lbt), Timo Härkönen, Andrew Olmsted(fiferboy), Eetu Lehmusvuo and many others from OSS community. We released and maintained Qt port for Maemo Diablo during 2008 . We released Qt 4.5 port together with Maemo 5 (Fremantle) alpha SDK 2.3.2009 . Summer 2009 Qt4.5.3 port was tested and integrated to Maemo. When Maemmo 5 final SDK was released, Qt 4.5.3 was integrated. Four core Qt4.5.3 libraries are already in device flash and others downloadable from apps repository. The next step is obvious, Qt4.6 was in technology preview state and now Nokia Qt Development Frameworks announced that they are integrating our Maemo support as part of Qt4.6 . That was great news for us, Qt for Maemo were no longer supported only by OSS community and Forum Nokia but also it will be supported Qt Development Frameworks . Now Qt is part of Maemo mainstream but also Maemo is part of Qt mainstream.
Many developers asked me, should I use Qt4.5.3 that is part of Maemo SDk or should I switch Qt4.6 . When the Qt4.6 was released for maemo, Qt4.6 was with "technology preview" tag and Qt4.6 for Maemo was lacking some of key features and it was not yet available at installation package at all. Qt4.6 beta was released 14.10.2009 . We work hard to get first packetized Qt4.6 with all mandatory features implemented as soon as possible. Then, next steps are testing and integrating Qt4.6 by Maemo Devices. When Qt4.6 has passed extensive testings, it will be approved as part of Maemo product and it will replace Qt4.5.3 . Press release states that plan is to have it released 1Q2010.
Early Maemo Koffice port and latest port using Maemo Qt UI elements
Other question was that why we need to have Qt port for Maemo, why we can't just compile standard Qt X11 version for Maemo? Qt is cross platform and Maemo is based on Linux and X11 . First reason is that Maemo is based on Linux and X11 but it has numerous enhangements to improve it's usability in mobile devices. As example input method that supports mini qwerty keyboard or virtual keyboard. Maemo 5 window manager defines new window types and attributes like Hildon desktop widgets and Stackable Windows that is not supported by desktop X11. Second reason is that Maemo has new several type of user interface elements to improve usability with finger in small form factor mobile device. Qt implements common set of UI elements that exists all mainstream desktop operating systems but that set does not provide optimum user experience in mobile devices. There is more details in my maemo summit presentation.
There was also lot discussion about porting Qt applications for Maemo. Qt is cross platform toolkit and when application is compiled with Maemo Qt, it will have all default Maemo support as example input method and maemo styles are automatically applied. In best case application is usable but usability won't be optimum but application will be usable, least with stylus. In worst case application is not usable at all, as example UI elements does not fit on screen and some of them are unaccessible. To make application usability optimized for mobile device, taking full use af great Maemo 5 user experience and making user interface consistent with all other maemo applications the user interface need to be be re-factored. Good example is KOffice for maemo.To re-factor UI you should keep in your mind how it works in small form factor screen. There is no room for large toolboxes , they eat valuable space from application work area. You may use as example window stack to quickly access toolboxes. You should redesign dialog layouts, big form style dialogs used in desktops does not work at all in small screen. Best way is to use maemo style dialog where content is in finger scrollable list. Other think to consider is usability with finger. Mobile device user prefers using finger and stylus is rarely used at all. All UI elements should be large for finger. Instead normal menus you should use maemo app menus, using scrollbars with finger is not practical, you should use finger scrolling from pane. Maemo Qt port provides necessary UI elements to implement Maemu UI as addition to standard Qt UI elements.
How to start ? At moment i am writting this ( 20.10.2009 ), the packetized Qt4.6 for Maemo is not yet available from repository. Qt4.5.3 was released as beta with Maemo Final SDK. After SDK release, some issues were found, as example missing printing support caused problem with KDE applications. To fix these issues, we have latest snapshot available from http://qt4.garage.maemo.org . These fixes will be integrated to Maemo end of week 44 and then latest qt will be in apps repository.
Commentsovjo12 | 20/10/2009, 16:47
I am going Maemo Developer Day and Forum Nokia Qt for Mobile Developers training
November 18-20, 2009, Copenhagen Denmarkto http://mktools.forum.nokia.com/invitation/qttrainingmaemo and have to prepare my laptop. Will be a first packetized Qt4.6 with all mandatory features implemented before that? or should I go for Qt4.5.3?
nilchak | 21/10/2009, 16:48
I have been waiting for this a long time - anf the potential of developing on QT and thus for multiple devices is the main benefit here.
Thanks so much for this article and some pointers.
Also ovjo12 - thanks for that small roadmap as to how and when we might expect QT4.6 to be on Maemo too.
Propecia | 22/01/2010, 21:36
Really interesting articles.I enjoyed reading it.Are these genuine images or has the artwork been touched up they are truly .Thanks for sharing a nice info…
Re: Maemo Qt and Maemo Summit 2009
ovjo12 | 20/10/2009, 16:35
>Many developers asked me, should I use Qt4.5.3 that is part of Maemo SDk or should I switch >Qt4.6 . When the Qt4.6 was released for maemo, Qt4.6 was with "technology preview" tag and >Qt4.6 for Maemo was lacking some of key features and it was not yet available at >installation package at all. Qt4.6 beta was released 14.10.2009 . We work hard to get first >packetized Qt4.6 with all mandatory features implemented as soon as possible. Then, next >steps are testing and integrating Qt4.6 by Maemo Devices. When Qt4.6 has passed extensive >testings, it will be approved as part of Maemo product and it will replace Qt4.5.3 . Press