mozillaZineheader image

More on the GTK/GNOME Port!

by CHRIS NELSON | As a followup to the news about the GTK/GNOME front-end being integrated into the Mozilla source code tree, I spoke with Christopher Blizzard, GTK/GNOME port coordinator, to find out more about the project and how it's progressing.

MZ: How many people are actively involved in the port at this time?

CB: I've taken and integrated patches from a few people at this point, not very many. In the past, trying to build the gnome front end to Mozilla was such a chore that most people gave up after a short time. You used to have to make hand modifications to several files in the Mozilla source code to comment out some Motif specific code and get code from two different places to build it. Trying to keep GnomeFE up to date with the constantly changing Mozilla code was very, very difficult and frustrated end developers.

Now that the front end is integrated with the Mozilla source code, building the GnomeFE is as simple as passing a flag to configure. I'm hoping that making it this easy will allow just about anyone to build and contribute to GnomeFE which is the goal.

Also the ports page was out of date. This has been updated with the information that you need to build and use the port. I've also started updating the todo list with specific tasks which people can take up if they want.

MZ: Are you trying to duplicate the functionality of the current toolbar structure of Mozilla, or emulate it in a generic sense? Are you designing this port in such a way as to be able to use as much of the cross-platform backend as possible? Or are you redoing some of that XP code specifically for a GTK/GNOME version?

CB: Right now, we're just trying to get the toolbar working. When the RDF enabled toolbar is done in XFE someone will port it over. I know that there are going to be some major changes down the road for the toolbar and I'm not going to try to guess what the Netscape folks are going to do. Once they have their framework in place, we can just write to that framework.

The FE code that has to be written is actually pretty lightweight, at least in my opinion. I'm sure there are those who would disagree. Writing front end code means implementing an API that will do things like create new browser frames, put some text here, put an image there and things like that. If you want to see what the front end has to implement, take a look at the StubFE code that's in the Mozilla code. It's a pretty complete API.

MZ: Any major stumbling blocks so far?

CB: Not really. We have the source code to the widget toolkit so any major stumbling blocks are easily remedied. Also, because Mozilla already runs an another X based toolkit there shouldn't be any big porting issues. It's already proven itself in that area.

MZ: Will the GTK/GNOME port support the RDF configurable toolbars that have been showing up in current Mozilla builds?

CB: It's my personal goal to make sure that the GTK/GNOME port of Mozilla has 100% of the functionality of the Motif port. Maybe more.

MZ: Which layout engine will you be incorporating into the GTK/GNOME port?

CB: Right now, just the standard one. I'm not up to date on a lot of the issues with writing a front end to the new layout engine but my understanding is that it's going to require a lot of front end work. If someone who has a greater understanding of NGLayout wants to port to the new layout engine I'm certainly not going to get in their way. I'm not sure whether or not the new layout engine is going to ship with 5.0 and I want to have something ready to use when 5.0 ships.

MZ: What has your contact with the team been like?

CB: I would describe the contact that I've had with the team as pretty constant. When I have issues I can mail them and get a response. They are really good about getting back to people.

MZ: Is there anything other than what's on your todo list that you would like to see happen with the GTK/GNOME port?

CB: I'd like to use the GNOME canvas eventually because of some of the things that it can offer. The canvas might be an excellent way to implement the NGLayout code.

MZ: Is there anything else you'd like to mention?

CB: Not really, except that if you haven't checked it out in a while, please do so now. It's starting to come together and we can always use the help.


Got a response? TalkBack!


MozillaZine and the MozillaZine Logo Copyright © 2000 Chris Nelson. All Rights Reserved.