Firefox 3 introduces support for web-based protocol handling so instead of a desktop application taking care of irc:, im:, ftp:, mailto: and other protocol link, these addresses are passed to a defined web service provided that it is capable of parsing and processing them.
Firefox 3 ships with Yahoo! Mail and 30Boxes as bundled web protocol handlers (for email and calendars respectively) but you can easily add more as they become available.
Google for example added the necessary interface too short before the Firefox 3 release so it wasn’t included by default but you can change that.
First, you will have to enable registration of protocol web handlers from different domains.
Enter about:config in the location bar and press Enter to access the advanced preferences.
Look for gecko.handlerService.allowRegisterFromDifferentHost and double click it to set it to true.
Now click in the link below to add Gmail as a mailto: links handler.
You will be prompted with a confirmation info bar. Press Add Application.
You can now select Gmail as your mailto links handler from the Application page in the Options dialog.
Now when you click on mailto: links a new tab with a Gmail compose window will open. You can also or click on Send Link… in the File menu to send the current page address and title.
I suggest setting gecko.handlerService.allowRegisterFromDifferentHost back to false to prevent malicious web sites offering their own protocol handlers.
In case you need to remove Gmail as a mailto handler, in the Tools menu, select Options. In the Applications page look for mailto in the content type column. Open the menu in the Action column and select Application Details…, select Gmail and press Remove.
Update: If clicking on the link to add Gmail still doesn’t work, access the advanced preferences (enter about:config in the location bar) and check that network.protocol-handler.external.mailto is set to true, its default value. If it isn’t double click on it to change it or right-click and select Reset.