I started first from the existing codebase and tried to modify it. It was somewhat difficult as the existing codebase included (some) support for Maemo5, Symbian, and MeeGo. Quite quickly I decided that it would probably be easier to start from fresh project and only add what I needed. This proved to be good approach and now after about 5 days of work I have something that I'm happy with. Virtual keyboard really does work better with the new codebase and I think application UI looks nicer now. Also, the code now uses booster, which should help startup a bit. New code includes all the stuff that Helium has had and even a bit more. I'm calling the new version of the app HeliumReborn.
QtSDK 1.1.4 is really what made this rapid change possible. It now includes Harmattan Qt Quick Componts in the Qt Simulator. This meant that I could quickly experiment with the desktop how my changes work (since we have the same components in Nemo). The components worked pretty much the same way on real devices (both on N950 with Nemo and N9 with Harmattan) and I could ran the same arm binaries in both!
My target is to push the stuff back to Helium upstream project and then update Helium in the Nemo. However, this might take some time. In the meanwhile you can test this out if you have a device with Nemo Mobile. To install it open terminal application and then install with the following steps:
1) Change to root (password is "meego") with command:
1) Add my repository (the following should just one one line):
zypper addrepo http://repo.pub.meego.com/home:/vesku/CE_MW_MTF_armv7hl/ veskus_helium
3) And finally install with:
zypper install heliumreborn
HeliumReborn is now installed in the application grid (in the second page). The old Helium browser is still in the shortcuts bar.
In case you are interested about the sources of HeliumReborn, they are available here until I get the changes properly upstreamed.