Boom Swagger Boom











{June 30, 2005}   Cocoa Widget Work

I’m working on Cocoa widgets some now, trying to fix them up and get them working in Firefox. Basically, we’ll have Camino-style widgets in Firefox. Using Cocoa widgets doesn’t necessarily mean that widgets (form buttons, etc…) will look like native widgets, that just happens to be the case with many widgets. It really only means that the widget code is (mostly) written using the Cocoa API as opposed to the Carbon API. So, with Cocoa widgets in Firefox we get some better looking forms and easier-to-maintain code. Furthermore, if we can get all products onto one widget set then we will have further reduced maintenance overhead. I’m learning the code right now, and starting to know enough to get some real work done. I may have it limping along by next week, but it won’t be a part of Firefox until some time after Firefox 1.1 is released. There is a considerable amount of work to be done.



Yesterday I spilled a lot of water right on top of my PowerBook. Not a shot-glass worth – about half a cup. It pretty much flowed all over the keyboard, while the machine was running, compiling a copy of Firefox. I quickly flipped it over on the desk so the water would drain out, and turn it off by holding down the power button while upside down. I took out the battery and held it upside down for a while so the water drained out, then went to see Batman Begins while it dried. Alex Polvi (fellow skateboarder interning at MF) kept reassuring me on the way to the movie that it would work just fine, but I had little faith due to the amount of water that went onto the keyboard. After the movie we went back and it booted fine, no problems whatsoever, and I’m using it now to type this. Amazing. I keep hearing people say they have problems with Apple hardware, but I’ve had nothing but wonderful experiences. Note: The PowerBook that got soaked is an aluminum PowerBook G4 1.5Ghz.

We’ll see how impressive the Intel Macs I’m getting tomorrow are. Unfortunately, I can’t blog about my experience with those…



I have started a Mac development section at Mozilla’s wiki site.

http://wiki.mozilla.org/Mac:Home_Page

In the Mac development section I have outlined some of the most important things we need to work on over the medium to long term. For each one I tried to make some basic notes about what is going on. It is sparse now, but I’ll write more soon and hopefully other Mac developers will help me fill it in. I’m not sure exactly how we’re going to maximize use of this resource, but I hope it will evolve based on our needs. I want it to be a place where we can outline the decisions we need to make, outline the pros and cons of different plans, record the decisions we make, and lay down plans for implementing things. If you want to know some of the details about what is going on with Mozilla.org Mac development, read the docs there. However, please don’t edit the docs unless you are a developer.



{June 23, 2005}   Vrrroooomm

I haven’t worked much today because I was up until 4 AM debugging Mozilla’s internal screen coordinate system and then all the Mozilla Foundation folks went GoKart racing in Burlingame around the time I showed up at work. Kart racing is awesome, but I left with my hands in pain from blisters from making so many sharp turns on a hard plastic steering wheel with no gloves. I’m going back at the coordinate stuff tonight (my biggest problem is Firefox on Mac window positioning, which opens a can of worms), but first its nap time.

Fun fact of the day from a car ride with Benjamin Smedberg is that his previous job was music director at a Catholic church. That’s awesome. Gives me hope for my ambition to become and English Literature professor.



Support for Mac OS X 10.1.x has been dropped. Current CVS code (including the forthcoming Firefox 1.1) will not run correctly if at all on 10.1.x for any Mozilla.org products. See bug 298430 for details. Don’t spam that bug with complaints please – its done. This is a great move as far as I’m concerned.



I checked in the code for switching all Mac OS X products to CFRunLoop. Tomorrow’s nightly builds will use it. None of the “regressions” pointed out by test users seemed related to CFRunLoop, they were just problems on the trunk at the time I made the test builds. Hopefully from here on out we’ll have a much improved plugin experience, and other parts of the browser should be snappier as well.

As a side note, lots of people reported problems with bfcache in my test build. People – bfcache is turned off by default for a reason, and that reason is that it doesn’t work yet.



{June 20, 2005}   Camino 0.9a1 is out!

Camino 0.9 Alpha 1 is out! Get it from:
http://www.caminobrowser.org/

Release notes:
http://www.caminobrowser.org/releases/09a1.html

Yes, this is the one with the spiffy new tabs…



I posted a test build of Firefox to the mozilla.org FTP site.

ftp://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/experimental/plevent/firefox-1.0+.en-US.mac.PLEVENT.dmg

This build uses the CFRunLoop event system, which should be a major performance win, especially for plugins and drawing. We need the community to test this quite a bit so we can try to get this in for Firefox 1.1. Give it a spin and let me know how it goes!



{June 17, 2005}   Dear Opera

About 8.0.1 on Mac OS X…

- nice rendering engine – snappy, looks nice (except for text placement in form widgets)
- your toolbar/tab/prefs and URL bar UI looks terrible – see Apple Human Interface Guidelines

You did the hard part, now finish the job outside the content area. Seriously looking forward to 8.5! Uninstalling 8.0.1.

P.S. All your bases are belong to Camino.



I haven’t been able to post much lately, but here is what has been going on with me and Mozilla stuff lately.

I’m at WWDC now, which is pretty cool. Many of the sessions could be replaced by some simple documentation (RTFM!), which is disappointing (the documentation exists, they just feel the need to read it off for you). The real value of WWDC is being able to talk to Apple engineers and other developers. Also, Apple has labs in which you can test software in different environments with different tools.

Apple is moving to Intel chips, as you probably know. I have attended a couple of sessions on porting to Intel and making the move to universal binaries, and talked to some engineers about it. I think I have a good plan that I don’t want to outline here. So we’re on it, and you’ll have fresh native copies of Firefox and Camino for your shiny new Intel macs when or soon after thay come out. Great news: Apple actually ported Firefox to Intel already, and they are giving us the patches. They used Firefox as an example of how to port to Intel. Lucky me, because now I don’t have to do it.

On the Camino front, we’re working on 0.9 but stalled for the week. Simon and I are at WWDC and Mike is on vacation. Next week we’re going to get a lot done I think and we’ll branch with the next major SeaMonkey/FF branch. I have put a lot of thought into what needs to be done for 0.9 at WWDC, but I haven’t had time to do it. Same old story huh? Yup. If you want it faster fire up Xcode and give us a hand. Its not hard, we’re around to help, and its a great project to work on.

A lot more is going on now with Mac Mozilla products, but I’m out of time. I’ll try to update my blog more.



et cetera