I got a chance to talk to my professor, Dave Humphrey tonight about my project. I’ve been stuck in a bit of a rut since this weekend. I looked at some code and tried to find my way around but was having little success. However after talking with Dave and getting some things straightened around and then talking to Mark Finkle a bit on the structure of the mozilla-central directory things started to become more clear.
In short, a list of revelations I made tonight (correct me if I’m wrong on anything please):
- All Mozilla apps are just a UI or shell built in XUL, CSS, and JS. They fit on top of the core Mozilla “platform” (diagram).
- xulrunner is what you would call a runtime environment for mozilla apps. It is what allows the apps to run cross platform.
- mozilla-central is the root folder and holds all the source for the MOZILLA project. This meaning the source files for the mozilla platform are located here. Some folders exist that are for individual projects as well.
- mozilla-centralgfxthebessrc holds the .cpp files for all kinds of font management code. I will look here for how embedded fonts work in Firefox 3.5 currently.
- run a “hg pull” followed by “hg update” to bring your mozilla-central folder up to date with the most current files. Check tinderbox first though to see if the firefox or mobile versions are current building ok or burning (broken).
I plan to spend 2 hours a night for the next 4 nights reading code and blogging on what I learn along the way.