summaryrefslogtreecommitdiff
path: root/src/downloadmanager.cpp
diff options
context:
space:
mode:
authorerri120 <erri120@protonmail.com>2020-08-20 17:40:46 +0200
committererri120 <erri120@protonmail.com>2020-08-20 17:40:46 +0200
commit586b3cd04e0f2048e085b9a997f76b93ed953f7a (patch)
treea07b2c5cd4be4c00828643a00ec001a1dd4157f1 /src/downloadmanager.cpp
parent41249036e5d9d96c42a358d19d025b6542b0b3a8 (diff)
Added Open Meta File context action to downloads
Diffstat (limited to 'src/downloadmanager.cpp')
-rw-r--r--src/downloadmanager.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/downloadmanager.cpp b/src/downloadmanager.cpp
index 4defd96b..ce60c8e1 100644
--- a/src/downloadmanager.cpp
+++ b/src/downloadmanager.cpp
@@ -1091,6 +1091,29 @@ void DownloadManager::openFile(int index)
return;
}
+void DownloadManager::openMetaFile(int index) {
+ if (index < 0 || index >= m_ActiveDownloads.size()) {
+ reportError(tr("OpenMetaFile: invalid download index %1").arg(index));
+ return;
+ }
+
+ auto path = QDir(m_OutputDirectory);
+ auto metaPath = getFilePath(index) + ".meta";
+ if (path.exists(metaPath)) {
+ shell::Open(metaPath);
+ return;
+ }
+
+ auto info = m_ActiveDownloads[index];
+ info->m_FileInfo->repository = "Nexus";
+
+ if (path.exists(metaPath)) {
+ shell::Open(metaPath);
+ } else {
+ shell::Explore(m_OutputDirectory);
+ }
+}
+
void DownloadManager::openInDownloadsFolder(int index)
{
if ((index < 0) || (index >= m_ActiveDownloads.size())) {