Firefox 3 offers improvements to the Download Manager that allow multiple progress listeners, use of the Storage API for data management, download resuming, and more. In addition, you can augment or replace the Download Manager's user interface by implementing the new nsIDownloadManagerUI interface.

Note: These changes will require some modest revisions to code using the Download Manager; several methods have had minor changes.

Download Manager interfaces

nsIDownloadManager
Gives applications and extensions access to the Download Manager, allowing them to add and remove files to the download list, retrieve information about past and present downloads, and request notifications as to the progress of downloads.
nsIDownload
Describes a file in the download queue; these files may currently be queued for download, actively being downloaded, or finished being downloaded.
nsIDownloadProgressListener
Applications and extensions implement this interface to be made aware of changes in the status of downloads.
nsIDownloadManagerUI
Implement this interface to replace or augment the Download Manager user interface.

Other Download Manager documentation

Download Manager preferences
This article lists preferences used by the Download Manager as well as their default values.
The Download Manager schema
This article describes the database format used to store and track information about each download.

Examples

Monitoring downloads
An example showing how to use the new Download Manager APIs to create a download log window that shows all past and present downloads and their status, including the start and end times of the downloads, the download speed, and more. Also demonstrates the Storage API.