summaryrefslogtreecommitdiff
path: root/src/downloadmanager.cpp
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2020-08-21 01:27:50 -0400
committerGitHub <noreply@github.com>2020-08-21 01:27:50 -0400
commita4043bab8cfa58e1bb8c2adcb686b7358932cdb6 (patch)
tree4ae86580a64d484411c009759e9e7bfff1fcefb2 /src/downloadmanager.cpp
parent9e3793c194c4e8570cb23470b931cfb9221ae2ec (diff)
parent321b1facdcb6ddc0a1e2b4ce6cdf4cc9ebe6c18b (diff)
Merge pull request #1201 from erri120/open-meta
Open Meta file from downloads list
Diffstat (limited to 'src/downloadmanager.cpp')
-rw-r--r--src/downloadmanager.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/downloadmanager.cpp b/src/downloadmanager.cpp
index 4defd96b..3e6010db 100644
--- a/src/downloadmanager.cpp
+++ b/src/downloadmanager.cpp
@@ -1091,6 +1091,33 @@ void DownloadManager::openFile(int index)
return;
}
+void DownloadManager::openMetaFile(int index) {
+ if (index < 0 || index >= m_ActiveDownloads.size()) {
+ log::error("OpenMetaFile: invalid download index {}", index);
+ return;
+ }
+
+ const auto path = QDir(m_OutputDirectory);
+ const auto filePath = getFilePath(index);
+ const auto metaPath = filePath + ".meta";
+
+ if (path.exists(metaPath)) {
+ shell::Open(metaPath);
+ return;
+ }
+ else {
+ QSettings metaFile(metaPath, QSettings::IniFormat);
+ metaFile.setValue("removed", false);
+ }
+
+ if (path.exists(metaPath)) {
+ shell::Open(metaPath);
+ return;
+ }
+
+ shell::Explore(filePath);
+}
+
void DownloadManager::openInDownloadsFolder(int index)
{
if ((index < 0) || (index >= m_ActiveDownloads.size())) {