File indexing completed on 2024-05-12 16:23:41

0001 // SPDX-FileCopyrightText: 2020 Jonah BrĂ¼chert <jbb@kaidan.im>
0002 //
0003 // SPDX-License-Identifier: GPL-2.0-or-later
0004 
0005 #include "downloadmanager.h"
0006 
0007 #include <QUrl>
0008 
0009 #include <private/qquickwebenginedownloadrequest_p.h>
0010 
0011 DownloadManager::DownloadManager() = default;
0012 
0013 DownloadManager &DownloadManager::instance()
0014 {
0015     static DownloadManager instance;
0016     return instance;
0017 }
0018 
0019 void DownloadManager::addDownload(std::unique_ptr<DownloadItem> &&download)
0020 {
0021     m_downloads.push_back(std::move(download));
0022 }
0023 
0024 void DownloadManager::removeDownload(const int index)
0025 {
0026     m_downloads.at(index)->cancel();
0027     m_downloads.erase(m_downloads.begin() + index);
0028 }
0029 
0030 const std::vector<std::unique_ptr<DownloadItem>> &DownloadManager::downloads()
0031 {
0032     return m_downloads;
0033 }