summaryrefslogtreecommitdiffstats
path: root/src/core
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2019-01-22 09:30:49 +0100
committerQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2019-01-22 09:30:49 +0100
commit8b2427f2c8de0a7c8f06318e8fe7849182621f68 (patch)
tree673a776c93a7e16d40d7bd572f4681d3b87718c5 /src/core
parentc5bcd124fecaad2b7f50c59bd3790fcc4af38a20 (diff)
parent0deb1ffda77f0410b3d13419856c757cdd422d2b (diff)
Merge remote-tracking branch 'origin/5.12' into dev
Diffstat (limited to 'src/core')
-rw-r--r--src/core/download_manager_delegate_qt.cpp30
-rw-r--r--src/core/download_manager_delegate_qt.h2
-rw-r--r--src/core/profile_adapter.cpp5
-rw-r--r--src/core/profile_adapter.h1
4 files changed, 28 insertions, 10 deletions
diff --git a/src/core/download_manager_delegate_qt.cpp b/src/core/download_manager_delegate_qt.cpp
index abf4a2a95..948a62047 100644
--- a/src/core/download_manager_delegate_qt.cpp
+++ b/src/core/download_manager_delegate_qt.cpp
@@ -82,35 +82,45 @@ void DownloadManagerDelegateQt::GetNextId(const content::DownloadIdCallback& cal
callback.Run(++m_currentId);
}
+download::DownloadItem *DownloadManagerDelegateQt::findDownloadById(quint32 downloadId)
+{
+ content::DownloadManager* dlm = content::BrowserContext::GetDownloadManager(m_profileAdapter->profile());
+ return dlm->GetDownload(downloadId);
+}
+
void DownloadManagerDelegateQt::cancelDownload(const content::DownloadTargetCallback& callback)
{
- callback.Run(base::FilePath(), download::DownloadItem::TARGET_DISPOSITION_PROMPT, download::DownloadDangerType::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT, base::FilePath(), download::DownloadInterruptReason::DOWNLOAD_INTERRUPT_REASON_USER_CANCELED);
+ callback.Run(base::FilePath(),
+ download::DownloadItem::TARGET_DISPOSITION_PROMPT,
+ download::DownloadDangerType::DOWNLOAD_DANGER_TYPE_MAYBE_DANGEROUS_CONTENT,
+ base::FilePath(),
+ download::DownloadInterruptReason::DOWNLOAD_INTERRUPT_REASON_USER_CANCELED);
}
void DownloadManagerDelegateQt::cancelDownload(quint32 downloadId)
{
- content::DownloadManager* dlm = content::BrowserContext::GetDownloadManager(m_profileAdapter->profile());
- download::DownloadItem *download = dlm->GetDownload(downloadId);
- if (download)
+ if (download::DownloadItem *download = findDownloadById(downloadId))
download->Cancel(/* user_cancel */ true);
}
void DownloadManagerDelegateQt::pauseDownload(quint32 downloadId)
{
- content::DownloadManager* dlm = content::BrowserContext::GetDownloadManager(m_profileAdapter->profile());
- download::DownloadItem *download = dlm->GetDownload(downloadId);
- if (download)
+ if (download::DownloadItem *download = findDownloadById(downloadId))
download->Pause();
}
void DownloadManagerDelegateQt::resumeDownload(quint32 downloadId)
{
- content::DownloadManager* dlm = content::BrowserContext::GetDownloadManager(m_profileAdapter->profile());
- download::DownloadItem *download = dlm->GetDownload(downloadId);
- if (download)
+ if (download::DownloadItem *download = findDownloadById(downloadId))
download->Resume();
}
+void DownloadManagerDelegateQt::removeDownload(quint32 downloadId)
+{
+ if (download::DownloadItem *download = findDownloadById(downloadId))
+ download->Remove();
+}
+
bool DownloadManagerDelegateQt::DetermineDownloadTarget(download::DownloadItem* item,
const content::DownloadTargetCallback& callback)
{
diff --git a/src/core/download_manager_delegate_qt.h b/src/core/download_manager_delegate_qt.h
index fa5bd12ec..db965b12d 100644
--- a/src/core/download_manager_delegate_qt.h
+++ b/src/core/download_manager_delegate_qt.h
@@ -90,6 +90,7 @@ public:
void cancelDownload(quint32 downloadId);
void pauseDownload(quint32 downloadId);
void resumeDownload(quint32 downloadId);
+ void removeDownload(quint32 downloadId);
void markNextDownloadAsUserRequested() { m_nextDownloadIsUserRequested = true; }
@@ -99,6 +100,7 @@ public:
private:
void cancelDownload(const content::DownloadTargetCallback& callback);
+ download::DownloadItem *findDownloadById(quint32 downloadId);
void savePackageDownloadCreated(download::DownloadItem *download);
ProfileAdapter *m_profileAdapter;
diff --git a/src/core/profile_adapter.cpp b/src/core/profile_adapter.cpp
index 0375c8852..cee783118 100644
--- a/src/core/profile_adapter.cpp
+++ b/src/core/profile_adapter.cpp
@@ -209,6 +209,11 @@ void ProfileAdapter::resumeDownload(quint32 downloadId)
downloadManagerDelegate()->resumeDownload(downloadId);
}
+void ProfileAdapter::removeDownload(quint32 downloadId)
+{
+ downloadManagerDelegate()->removeDownload(downloadId);
+}
+
ProfileAdapter *ProfileAdapter::createDefaultProfileAdapter()
{
return WebEngineContext::current()->createDefaultProfileAdapter();
diff --git a/src/core/profile_adapter.h b/src/core/profile_adapter.h
index 40633e802..9849d2788 100644
--- a/src/core/profile_adapter.h
+++ b/src/core/profile_adapter.h
@@ -100,6 +100,7 @@ public:
void cancelDownload(quint32 downloadId);
void pauseDownload(quint32 downloadId);
void resumeDownload(quint32 downloadId);
+ void removeDownload(quint32 downloadId);
ProfileQt *profile();