downloads.onChanged
The onChanged() event of the downloads API is fired when any of a downloads.DownloadItem's properties changes (except for bytesReceived).
The listener is passed a downloadDelta as a parameter — an object containing the downloadId of the downloads.DownloadItem object in question, plus the status of all the properties that changed.
Syntax
browser.downloads.onChanged.addListener(listener)
browser.downloads.onChanged.removeListener(listener)
browser.downloads.onChanged.hasListener(listener)
Events have three functions:
addListener(listener)-
Adds a listener to this event.
removeListener(listener)-
Stop listening to this event. The
listenerargument is the listener to remove. hasListener(listener)-
Check whether a given
listeneris registered for this event. Returnstrueif it is listening,falseotherwise.
addListener syntax
>Parameters
listener-
The function called when this event occurs. This function will be passed this argument:
downloadDelta-
An
objectrepresenting thedownloads.DownloadItemobject that changed, and the status of all the properties that changed in it. See the downloadDelta section for more details.
Additional objects
>downloadDelta
The downloadDelta object has the following properties available:
id-
An
integerrepresenting theidof thedownloads.DownloadItemthat changed. urlOptional-
A
downloads.StringDeltaobject describing a change in adownloads.DownloadItem'surl. filenameOptional-
A
downloads.StringDeltaobject describing a change in adownloads.DownloadItem'sfilename. dangerOptional-
A
downloads.StringDeltaobject describing a change in adownloads.DownloadItem'sdanger. mimeOptional-
A
downloads.StringDeltaobject describing a change in adownloads.DownloadItem'smime. startTimeOptional-
A
downloads.StringDeltaobject describing a change in adownloads.DownloadItem'sstartTime. endTimeOptional-
A
downloads.StringDeltaobject describing a change in adownloads.DownloadItem'sendTime. stateOptional-
A
downloads.StringDeltaobject describing a change in adownloads.DownloadItem'sstate. canResumeOptional-
A
downloads.BooleanDeltaobject describing a change in adownloads.DownloadItem'scanResumestatus. pausedOptional-
A
downloads.BooleanDeltaobject describing a change in adownloads.DownloadItem'spausedstatus. errorOptional-
A
downloads.StringDeltaobject describing a change in adownloads.DownloadItem'serrorstatus. totalBytesOptional-
A
downloads.DoubleDeltaobject describing a change in adownloads.DownloadItem'stotalBytes. fileSizeOptional-
A
downloads.DoubleDeltaobject describing a change in adownloads.DownloadItem'sfileSize. existsOptional-
A
downloads.BooleanDeltaobject describing a change in adownloads.DownloadItem'sexistsstatus.
Examples
Log a message when downloads complete:
function handleChanged(delta) {
if (delta.state && delta.state.current === "complete") {
console.log(`Download ${delta.id} has completed.`);
}
}
browser.downloads.onChanged.addListener(handleChanged);
Browser compatibility
Loading...
Note:
This API is based on Chromium's chrome.downloads API.