More Firefox hype and work to do

I hesitate to post yet again about Firefox, but I seem to be spending most of my computer time hacking it, tinkering, and working out cool ways to use the new magic in Fx 4. I am still extremely excited about it, from the point of view of a back-end person because of the new ways web-apps can be reworked, and from the front-end in terms of the huge new strides in parsing, rendering, and executing.

A lot of the technologies I am hacking around with like XUL are actually not new at all, but I am only just aware of them; others are genuinely new.

I would like to mention the three little hacks I am working on and would like to see finished soon.

1. Foreign namespaces in Atom

This has been one of my pet peeves for a while now. Fx has a brilliant engine perfectly capable of handling SVG and MathML, but these are flattened out when they are included in feeds. Just take a look at this feed, which has exactly the same pretty graphics as on Sam Ruby’s main pages, but in the feed display the pretty picture is wiped off (worse, if Sam were unlucky enough to put any text or annotations in his SVG, they would get munged into the feed content).

This one should be fairly easy to fix though. It has taken me many hours fiddling with a new codebase trying to work out how to debug JavaScript from the chrome, and messing with many setting to get my changes to compile, but I have found the file (FeedProcessor.js) and had some success fixing it, but need to do some more delving.

2. New CSS3 syntax for background-position

This is something I really want to get in (bug 522607), so that a background can (for example) be set in 5px from the right of a box. The parser is more self-contained than other parts of the layout engine, so I should be able to do something on this one if and only if I get the time to work out that part of the codebase. Some rendering fiddling might be needed to position the background appropriately, in which case I will probably have to struggle through too many new files to get round to it.

3. Support HTTP Digest auth-int

This ought to be easy to get in, but I have not looked at it at all yet. I guess no-one has really put any time into it yet. There are various other problemettes on the [digest-auth] whiteboard too.

On the positive side, there is a huge amount of stuff going on (JägerMonkey, HTML5, CSS3, SVG anywhere, and so on) which is hugely good, and which I am totally incompetent to contribute to at all. The keen real coders with experience are sorting out all the important stuff very well indeed, for which we the users are very thankful.