« Exploding Turkey and other New Year Fun | Main | 1/13/07 House Party Pics and Tracks »

January 18, 2007

Mozilla Mac OS X Update

Its been a while since I wrote about what I've been working on and the status of Mozilla Mac OS X development. I am going to make an effort to do this more often, hopefully at least once a week.

There are basically three major tasks to complete in the Gecko 1.9 timeframe.

The first task is to stabilize Cocoa widgets. We need to make them as good or better than Carbon widgets were. We're about 80% of the way there, the biggest remaining issues being speed, painting, event handling (focus), and printing. That stuff is just going to require us to sit down and fix bug after bug. Colin Barrett is working on Cocoa printing right now, which is awesome because that is the most broken part of Cocoa widgets by far at this point. It sounds like he is making good progress, I'm excited to get that in shape.

The second item on the list is native form widgets. Right now, Camino uses its own code for native form widgets. That code has served Camino well for a while but really it isn't written correctly and has a lot of bugs. We want to fix all of that so we can have native form widgets in Firefox 3, and that is what I have been working on for the past two weeks. It is going somewhat slowly because it requires unwinding a lot of CSS hacks that Camino used, uncovering and dealing with layout and nsITheme bugs (David Baron has helped quite a bit here), figuring out how to tame the Mac OS X HITheme API, and dealing with Cairo graphics problems. I'm hoping to have a good patch up within the next couple of weeks. Firefox 3 is going to be purdy on Mac OS X.

The last major work item on our list is to allow NPAPI plugins to render using Quartz instead of Quicktime. Right now we only allow plugins to draw with Quicktime, which is bad for plugin vendors and Mozilla performance (once a window starts using Quickdraw, it is kicked off the Quartz Extreme pipeline). I talked with Apple about a spec for this a while ago, and the result is here. I have a patch for part of that, but I'm not going to be able to sit down and finish it until I'm done with the native form widgets.

That's pretty much where we're at. In the future I'll probably write about more specific issues that I'm working on, feel free to ask questions in the comments.

Posted by josh at January 18, 2007 4:10 PM

Comments

wow, this all sounds like pretty exciting stuff. I'm sick of bouncing back and forth between Camino and Firefox, I can wait for a fully cocaofied firefox!

Posted by: speedo at January 18, 2007 6:14 PM

Is there any time frame for these fixes? I'm just waiting for a (somewhat) stable/usable trunk Camino nightly to try out.

And that's cool that Colin Barrett is working on that. Open source people working together is really cool.

Posted by: Peter at January 18, 2007 6:29 PM

Are the new Firefox form widgets going to look better than Camino's? They always have looked a little 'wonky' to me, for lack of a better word. The button sizes aren't right, and they just don't look as slick as the widgets in Safari do.

Posted by: at January 18, 2007 6:56 PM

That's the idea - they should look significantly better than Camino's.

Posted by: Josh Aas at January 18, 2007 7:33 PM

> figuring out how to tame the Mac OS X HITheme API,

Have you tried using NSCell classes to do form control drawing, like WebKit does?

Posted by: Simon F. at January 18, 2007 11:02 PM

Hey, I was meaning to ask you--is FF3 going to interact with things like Services? I liked having that in Camino, and it'd be nice to have it in my regular browser.

Posted by: Nick Fagerlund at January 19, 2007 12:25 AM

With all the work going into Cocoa controls are there plans to update the default there such that the Tabs used in Preferences look like 10.3/4 tabs instead of 10.2 tabs? That would be great to fix to look more Mac like as well.

Posted by: Pat at January 20, 2007 9:48 AM

And, what about a rich text clipboard - copy rich text and images ?

Posted by: Kadoma at January 20, 2007 9:26 PM

With Firefox getting the Cocoa treatment, what's the future of Camino? Will it continue to be updated and keep its niche (lightweight, fast, good Mac citizen), or is Firefox 3 intended to replace it?

Posted by: Rich C at February 2, 2007 12:04 AM

how about other issues such as support for summarize et al.

Posted by: Jason at February 14, 2007 6:27 PM

is camino dead then?

Posted by: joe m at February 23, 2007 10:59 PM