Blog List

Firefox to go with native UI on Android

Mozilla’s Johnathan Nightingale has announced an important change coming to future releases of Firefox on Android. According to the post, Mozilla will drop XUL as the language of choice for creating Firefox UI on Android and will use native widgets and interfaces instead.
XUL (eXtensible User interface Language), is an XML grammar used by Mozilla to define user interfaces for Firefox and Thunderbird. Gecko, the rendering engine is capable or interpreting this language and draw the user interface as required. The advantage of XUL has been that Mozilla only needs to compile and adapt Gecko for each platform in order to get the same user interface.
The problem, however, is that interpreting and painting at the application level adds an unwanted overhead, which usually goes unnoticed on most modern desktop and laptop computers, but becomes a bottleneck in resource constrained devices like cell phones and tablets. Native widgets are handled by Android directly so it doesn’t require additional translation or memory to map how to draw them.
Faster startup, less memory consumption, and improved responsiveness are some of the expected benefits of such a move,which is not free of important new challenges, most notably: localization and add-ons support, both of which are completely XUL-oriented. Options are still being weighted, which go from switching only the main UI (and possibly still getting a big chunk of the benefits) to limit add-ons to jetpacks only, which are less dependent on user interface restrictions.
The switch would also be a good opportunity to make an important revision of the UI design. As you can see in the screenshot below, the tab and navigation sidebars could be merged in a single one activated by the menu button, present in every Android phone.
The project to switch to native UI (codenamed Birch) is underway, and the Mozilla Wiki page even provides instructions for building a native UI Firefox for Android, but no binary is available for testing yet.
There is no deadline set at this time, but you shouldn’t hold your breathe, as it would arrive not earlier than Firefox 10 (early next year).