After wrestling with OpenGL on Android for a bit, I was finally able to get Gecko on Android rendering using OpenGL. This was needed to both simplify the build process, removing the need to have private Android headers and libraries available, and also to remove an expensive CPU RGB->BGR byte swap. Michael Wu’s also done a pile of work, including the all-important keyboard hookup so that you can, you know, type in some URLs or search terms. (Handy in a web browser.) Here’s a little family portrait of Fennec running on a Nexus One, a Motorola Droid, and a display attached to a NVIDIA Tegra 250 devkit.
We’re still working on getting the basic blocks in place to where it’s “dogfoodable”, that is, usable by the developers. The good news is that while the builds are already pretty fast, we’re seeing that we have a lot of headroom for performance… especially for visual things like rendering and panning. Most of the work we’ve done so far has just been quick work to unblock getting the basic port running; I’m looking forward to being able to dig deeper into a bunch of these issues!
