mirror of
https://github.com/d47081/qBittorrent.git
synced 2025-01-10 23:07:59 +00:00
Merge pull request #11473 from j1warren/dblclick_preview_file
Add "Preview file" double-click action
This commit is contained in:
commit
9cb07db84b
@ -42,6 +42,7 @@ enum DoubleClickAction
|
||||
{
|
||||
TOGGLE_PAUSE,
|
||||
OPEN_DEST,
|
||||
PREVIEW_FILE,
|
||||
NO_ACTION
|
||||
};
|
||||
|
||||
|
@ -330,6 +330,11 @@
|
||||
<string>Open destination folder</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Preview file, otherwise open destination folder</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>No action</string>
|
||||
|
@ -98,6 +98,18 @@ namespace
|
||||
return false;
|
||||
}
|
||||
|
||||
void openDestinationFolder(const BitTorrent::TorrentHandle *const torrent)
|
||||
{
|
||||
#ifdef Q_OS_MACOS
|
||||
MacUtils::openFiles(QSet<QString>{torrent->contentPath(true)});
|
||||
#else
|
||||
if (torrent->filesCount() == 1)
|
||||
Utils::Gui::openFolderSelect(torrent->contentPath(true));
|
||||
else
|
||||
Utils::Gui::openPath(torrent->contentPath(true));
|
||||
#endif
|
||||
}
|
||||
|
||||
void removeTorrents(const QVector<BitTorrent::TorrentHandle *> &torrents, const bool isDeleteFileSelected)
|
||||
{
|
||||
auto *session = BitTorrent::Session::instance();
|
||||
@ -269,15 +281,19 @@ void TransferListWidget::torrentDoubleClicked()
|
||||
else
|
||||
torrent->pause();
|
||||
break;
|
||||
case PREVIEW_FILE:
|
||||
if (torrentContainsPreviewableFiles(torrent)) {
|
||||
auto *dialog = new PreviewSelectDialog(this, torrent);
|
||||
dialog->setAttribute(Qt::WA_DeleteOnClose);
|
||||
connect(dialog, &PreviewSelectDialog::readyToPreviewFile, this, &TransferListWidget::previewFile);
|
||||
dialog->show();
|
||||
}
|
||||
else {
|
||||
openDestinationFolder(torrent);
|
||||
}
|
||||
break;
|
||||
case OPEN_DEST:
|
||||
#ifdef Q_OS_MACOS
|
||||
MacUtils::openFiles(QSet<QString>{torrent->contentPath(true)});
|
||||
#else
|
||||
if (torrent->filesCount() == 1)
|
||||
Utils::Gui::openFolderSelect(torrent->contentPath(true));
|
||||
else
|
||||
Utils::Gui::openPath(torrent->contentPath(true));
|
||||
#endif
|
||||
openDestinationFolder(torrent);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user