Firefox for Android changes UI code

A message posted to Mozilla's mailing list by the company's Director of Firefox Engineeering, Johnathan Nightingale, has announced the company intends to reduce customizability with the Firefox browser for Android in order to increase performance. Firefox is transitioning from its XUL roots to the native Android code; the action marks a significant change for the browser, since Mozilla products have historically been built using XUL.

The new version of the browser will reduce the amount of customizability available, since previously created addons will not be compatible anymore. Developers will need to recreate their addons to take advantage of the rebuilt UI. The change from XUL, it is important to note, will not impact on the browser engine. Firefox for Android (or Fennec, as it is known) will continue to be built on the Gecko engine. The way in which the UI will be created is simply different.

Nightingale points out some of the new changes that will come from the UI design transition. Perhaps most appealingly for users of Firefox on Android, it will result in a faster boot time. Nightingale explains it as below:

A native UI can be presented much faster than a XUL based UI, since it can happen in parallel with Gecko startup. This means startup times in fractions of a second, versus several seconds for a XUL UI on some phones.

Firefox on Android is one of the heavier available browsers, so the news that the design will likely also reduce memory consumption can only serve to help its mobile market-share. Nightingale also admits that it is currently unknown when the new UI will be finished, but it will not impact on the versions in the Aurora and Nightly channels. It also will not impact upon the Tablet UI that the company are developing. Nightingale's full post can be read here.

Report a problem with article
Previous Story

Halo 10th Anniversary goes gold

Next Story

Minecraft developer Mojang celebrates first birthday

30 Comments

View more comments

But XUL is the most useful thing in Firefox. It is not the most optimized part of it but is the thing most of the extensions are based on. Didn't the non-XUL Camino project kinda die? Same goes for a lot of other browsers based on XUL distributed with Gnome, KDE etc. which all moved to Webkit.

LauRoman said,
But XUL is the most useful thing in Firefox. It is not the most optimized part of it but is the thing most of the extensions are based on. Didn't the non-XUL Camino project kinda die? Same goes for a lot of other browsers based on XUL distributed with Gnome, KDE etc. which all moved to Webkit.

KDE never used XUL. Only GNOME based applications like Epiphany. They moved to WebKit, because Mozilla dropped the embedded Firefox portion.

I personally would love to see XULRunner die.

I'd really like the same for Desktop Browser. Fx' UI many times is problematic in different situations due to its structure. A proper UI would help a lot. Plus the advantages given above. No other browser shows similar problems. Also, every now and then, it's full of "hacks" to work "properly" ( as they want it ).

PC EliTiST said,
I'd really like the same for Desktop Browser. Fx' UI many times is problematic in different situations due to its structure. A proper UI would help a lot. Plus the advantages given above. No other browser shows similar problems. Also, every now and then, it's full of "hacks" to work "properly" ( as they want it ).

There's nothing improper about Firefox UI on non-mobile platforms.

SharpGreen said,
There's nothing improper about Firefox UI on non-mobile platforms.

Apart from the fact it takes ages to start up?

Android Firefox really needs rewrite. its so slow, memory hungry, even hangs the phone. other browsers like Boat Browser or Dolphin are really fast and accurate than ff

Dead'Soul said,
Android Firefox really needs rewrite. its so slow, memory hungry, even hangs the phone. other browsers like Boat Browser or Dolphin are really fast and accurate than ff

Hence the reasoning for this project. Did you read the article?

Dead'Soul said,
Android Firefox really needs rewrite. its so slow, memory hungry, even hangs the phone. other browsers like Boat Browser or Dolphin are really fast and accurate than ff

Sadly everything you said is also true of the native Android browser.

Firefox moving to the native Android UI constructs aren't going to help much until Google can get performance up. It will help with RAM consumption, which is a major issue on Android with the way it terminates Apps to free up RAM.

However for pure UI performance, Android kind of sucks, even compared to Windows Mobile/PocketPC from 2002 that had basic 2D GPU UI acceleration.

Even the Honeycomb GPU acceleration is rather sad, and far from fully accelerated or consistent. This is where an OS engineer steps in and goes, "Google, we told ya so, and good luck with that."

(Just look at the problems Google has had with its current limited GPU acceleration, with major issues with various GPU chipsets, and ironically, some of the faster GPUs in devices have no support what so ever.)

Seriously, the original Droid's GPU is essentially the same GPU Intel uses in Netbooks, and it runs Windows 7 Aero and 3D gaming, all accelerated. You would have thought with this 'early' level of hardware, Google would have said, hmm, this might be important, as one of most popular devices' GPU can run Windows 7's UI accelerated, it surely could handle the simple UI and Apps on phone...

(Linux/Davlik = sad and/or eventual failure.)

Dead'Soul said,
yepp

Then you should have posted the following instead:

Android Firefox really needed to be rewritten. It's so slow, memory hungry, even hangs the phone. other browsers like Boat Browser or Dolphin are really fast and accurate than ff

Needs implies that nothing is happening where as needed is showing agreement and then the following sentence providing justification for such a position. Btw, It is 'it's' not 'its' when used the way you did.

well thats good news even thought currently the browser is rather stable the only issue i have with it is image rendering most of the time they are very pixilated. however generally on both my phone and Xoom i prefer Firefox to the Android Browser.

XUL UI is the worst part of Firefox and the reason why it takes forever to launch. I actually mentioned this to the devs 5 years ago and they simply laughed at me.
If they wrote a native cross-platform UI, the browser would seem much faster and could keep all its features.

Sacha said,

If they wrote a native cross-platform UI, the browser would seem much faster and could keep all its features.

They did that already. It's called XUL.

SharpGreen said,

They did that already. It's called XUL.

XUL is not native to anything, it's just an object model like XAML. The virtual machine that displays it may or may not be native.

GreyWolf said,

XUL is not native to anything, it's just an object model like XAML. The virtual machine that displays it may or may not be native.

It's actually more like COM (Component Object Model), but cross platform. Same ugly crap COM is.

HoochieMamma said,


REALLY!?!? About time! I will have to try it out now

I would not recommend that. Nightly crashes alot. And much more when flash is involved.

Adrian0E said,

I would not recommend that. Nightly crashes alot. And much more when flash is involved.

In fairness, what doesn't crash more when Flash is involved?

M_Lyons10 said,

In fairness, what doesn't crash more when Flash is involved?

I'm using it regularly and, despite being Nightly version, it never crashed for me. Not until i've tried flash. That's when I've started to see a lot of crashes.

This doesn't sound like a bad idea for a mobile browser really. Some customization I could understand, but not a tremendous amount. Same with the browser for WP7. Some customization would be nice, but you really shouldn't have to do much...

Commenting is disabled on this article.