diff options
author | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-04-25 16:05:19 +0200 |
---|---|---|
committer | janekptacijarabaci <janekptacijarabaci@seznam.cz> | 2018-04-25 16:05:19 +0200 |
commit | fa6fa13eb45f2fbfc79545e9b832c7b1ebb2dcae (patch) | |
tree | c7713bb6706e7533e7449b14f5515277c0c6804d /application/palemoon/components/downloads/content | |
parent | 3ab6c7feee8126bdfc5c9ab9371db41102e12e95 (diff) | |
download | UXP-fa6fa13eb45f2fbfc79545e9b832c7b1ebb2dcae.tar UXP-fa6fa13eb45f2fbfc79545e9b832c7b1ebb2dcae.tar.gz UXP-fa6fa13eb45f2fbfc79545e9b832c7b1ebb2dcae.tar.lz UXP-fa6fa13eb45f2fbfc79545e9b832c7b1ebb2dcae.tar.xz UXP-fa6fa13eb45f2fbfc79545e9b832c7b1ebb2dcae.zip |
Bug 945707 - Pausing a download fails when done after a retry + follow up (see the description)
Issue #121
[follow up] Bug 92737 - Part 9: Download multiple files when multiple
items are dropped on Downloads view in Library Window
Diffstat (limited to 'application/palemoon/components/downloads/content')
-rw-r--r-- | application/palemoon/components/downloads/content/allDownloadsViewOverlay.js | 34 | ||||
-rw-r--r-- | application/palemoon/components/downloads/content/downloads.js | 3 |
2 files changed, 16 insertions, 21 deletions
diff --git a/application/palemoon/components/downloads/content/allDownloadsViewOverlay.js b/application/palemoon/components/downloads/content/allDownloadsViewOverlay.js index d9758cb09..cf51db9d9 100644 --- a/application/palemoon/components/downloads/content/allDownloadsViewOverlay.js +++ b/application/palemoon/components/downloads/content/allDownloadsViewOverlay.js @@ -41,22 +41,6 @@ const DOWNLOAD_VIEW_SUPPORTED_COMMANDS = const NOT_AVAILABLE = Number.MAX_VALUE; /** - * Download a URL. - * - * @param aURL - * the url to download (nsIURI object) - * @param [optional] aFileName - * the destination file name - */ -function DownloadURL(aURL, aFileName) { - // For private browsing, try to get document out of the most recent browser - // window, or provide our own if there's no browser window. - let browserWin = RecentWindow.getMostRecentBrowserWindow(); - let initiatingDoc = browserWin ? browserWin.document : document; - saveURL(aURL, aFileName, null, true, true, undefined, initiatingDoc); -} - -/** * A download element shell is responsible for handling the commands and the * displayed data for a single download view element. The download element * could represent either a past download (for which we get data from places) or @@ -654,7 +638,10 @@ DownloadElementShell.prototype = { // In future we may try to download into the same original target uri, when // we have it. Though that requires verifying the path is still valid and // may surprise the user if he wants to be requested every time. - DownloadURL(this.downloadURI, this.getDownloadMetaData().fileName); + let browserWin = RecentWindow.getMostRecentBrowserWindow(); + let initiatingDoc = browserWin ? browserWin.document : document; + DownloadURL(this.downloadURI, this.getDownloadMetaData().fileName, + initiatingDoc); }, /* nsIController */ @@ -1450,7 +1437,9 @@ DownloadsPlacesView.prototype = { _downloadURLFromClipboard: function DPV__downloadURLFromClipboard() { let [url, name] = this._getURLFromClipboardData(); - DownloadURL(url, name); + let browserWin = RecentWindow.getMostRecentBrowserWindow(); + let initiatingDoc = browserWin ? browserWin.document : document; + DownloadURL(url, name, initiatingDoc); }, doCommand: function DPV_doCommand(aCommand) { @@ -1504,6 +1493,11 @@ DownloadsPlacesView.prototype = { else contextMenu.removeAttribute("state"); + if (state == nsIDM.DOWNLOAD_DOWNLOADING) { + // The resumable property of a download may change at any time, so + // ensure we update the related command now. + goUpdateCommand("downloadsCmd_pauseResume"); + } return true; }, @@ -1597,10 +1591,12 @@ DownloadsPlacesView.prototype = { let links = Services.droppedLinkHandler.dropLinks(aEvent); if (!links.length) return; + let browserWin = RecentWindow.getMostRecentBrowserWindow(); + let initiatingDoc = browserWin ? browserWin.document : document; for (let link of links) { if (link.url.startsWith("about:")) continue; - DownloadURL(link.url, link.name); + DownloadURL(link.url, link.name, initiatingDoc); } } }; diff --git a/application/palemoon/components/downloads/content/downloads.js b/application/palemoon/components/downloads/content/downloads.js index 0412344bc..833d7d72f 100644 --- a/application/palemoon/components/downloads/content/downloads.js +++ b/application/palemoon/components/downloads/content/downloads.js @@ -507,8 +507,7 @@ const DownloadsPanel = { let uri = NetUtil.newURI(url); DownloadsCommon.log("Pasted URL seems valid. Starting download."); - saveURL(uri.spec, name || uri.spec, null, true, true, - undefined, document); + DownloadURL(uri.spec, name, document); } catch (ex) {} }, |