diff options
Diffstat (limited to 'src/downloadmanager.cpp')
| -rw-r--r-- | src/downloadmanager.cpp | 23 |
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())) { |
