Browse Source

Show the loaded torrents in the transferlist when qBT is launched with a torrent/magnet and the AddNewTorrentDialog is showing. Closes #1564.

adaptive-webui-19844
sledgehammer999 10 years ago
parent
commit
30bc5a1da6
  1. 21
      src/addnewtorrentdialog.cpp
  2. 4
      src/addnewtorrentdialog.h
  3. 16
      src/mainwindow.cpp

21
src/addnewtorrentdialog.cpp

@ -60,6 +60,7 @@ AddNewTorrentDialog::AddNewTorrentDialog(QWidget *parent) : @@ -60,6 +60,7 @@ AddNewTorrentDialog::AddNewTorrentDialog(QWidget *parent) :
m_hasRenamedFile(false)
{
ui->setupUi(this);
setAttribute(Qt::WA_DeleteOnClose);
ui->lblMetaLoading->setVisible(false);
ui->progMetaLoading->setVisible(false);
@ -120,18 +121,22 @@ void AddNewTorrentDialog::saveState() @@ -120,18 +121,22 @@ void AddNewTorrentDialog::saveState()
pref->setAddNewTorrentDialogExpanded(ui->adv_button->isChecked());
}
void AddNewTorrentDialog::showTorrent(const QString &torrent_path, const QString& from_url)
void AddNewTorrentDialog::showTorrent(const QString &torrent_path, const QString& from_url, QWidget *parent)
{
AddNewTorrentDialog dlg;
if (dlg.loadTorrent(torrent_path, from_url))
dlg.exec();
AddNewTorrentDialog *dlg = new AddNewTorrentDialog(parent);
if (dlg->loadTorrent(torrent_path, from_url))
dlg->open();
else
delete dlg;
}
void AddNewTorrentDialog::showMagnet(const QString& link)
void AddNewTorrentDialog::showMagnet(const QString& link, QWidget *parent)
{
AddNewTorrentDialog dlg;
if (dlg.loadMagnet(link))
dlg.exec();
AddNewTorrentDialog *dlg = new AddNewTorrentDialog(parent);
if (dlg->loadMagnet(link))
dlg->open();
else
delete dlg;
}
void AddNewTorrentDialog::showEvent(QShowEvent *event) {

4
src/addnewtorrentdialog.h

@ -54,8 +54,8 @@ class AddNewTorrentDialog : public QDialog @@ -54,8 +54,8 @@ class AddNewTorrentDialog : public QDialog
public:
~AddNewTorrentDialog();
static void showTorrent(const QString& torrent_path, const QString& from_url = QString());
static void showMagnet(const QString& torrent_link);
static void showTorrent(const QString& torrent_path, const QString& from_url, QWidget *parent = 0);
static void showMagnet(const QString& torrent_link, QWidget *parent = 0);
protected:
void showEvent(QShowEvent *event);

16
src/mainwindow.cpp

@ -890,13 +890,13 @@ void MainWindow::dropEvent(QDropEvent *event) { @@ -890,13 +890,13 @@ void MainWindow::dropEvent(QDropEvent *event) {
}
if (file.startsWith("magnet:", Qt::CaseInsensitive)) {
if (useTorrentAdditionDialog)
AddNewTorrentDialog::showMagnet(file);
AddNewTorrentDialog::showMagnet(file, this);
else
QBtSession::instance()->addMagnetUri(file);
} else {
// Local file
if (useTorrentAdditionDialog)
AddNewTorrentDialog::showTorrent(file);
AddNewTorrentDialog::showTorrent(file, QString(), this);
else
QBtSession::instance()->addTorrent(file);
}
@ -932,7 +932,7 @@ void MainWindow::on_actionOpen_triggered() { @@ -932,7 +932,7 @@ void MainWindow::on_actionOpen_triggered() {
const uint listSize = pathsList.size();
for (uint i=0; i<listSize; ++i) {
if (pref->useAdditionDialog())
AddNewTorrentDialog::showTorrent(pathsList.at(i));
AddNewTorrentDialog::showTorrent(pathsList.at(i), QString(), this);
else
QBtSession::instance()->addTorrent(pathsList.at(i));
}
@ -975,12 +975,12 @@ void MainWindow::processParams(const QStringList& params) { @@ -975,12 +975,12 @@ void MainWindow::processParams(const QStringList& params) {
}
if (param.startsWith("magnet:", Qt::CaseInsensitive)) {
if (useTorrentAdditionDialog)
AddNewTorrentDialog::showMagnet(param);
AddNewTorrentDialog::showMagnet(param, this);
else
QBtSession::instance()->addMagnetUri(param);
} else {
if (useTorrentAdditionDialog)
AddNewTorrentDialog::showTorrent(param);
AddNewTorrentDialog::showTorrent(param, QString(), this);
else
QBtSession::instance()->addTorrent(param);
}
@ -995,7 +995,7 @@ void MainWindow::addTorrent(QString path) { @@ -995,7 +995,7 @@ void MainWindow::addTorrent(QString path) {
void MainWindow::processDownloadedFiles(QString path, QString url) {
Preferences* const pref = Preferences::instance();
if (pref->useAdditionDialog())
AddNewTorrentDialog::showTorrent(path, url);
AddNewTorrentDialog::showTorrent(path, url, this);
else
QBtSession::instance()->addTorrent(path, false, url);
}
@ -1003,7 +1003,7 @@ void MainWindow::processDownloadedFiles(QString path, QString url) { @@ -1003,7 +1003,7 @@ void MainWindow::processDownloadedFiles(QString path, QString url) {
void MainWindow::processNewMagnetLink(const QString& link) {
Preferences* const pref = Preferences::instance();
if (pref->useAdditionDialog())
AddNewTorrentDialog::showMagnet(link);
AddNewTorrentDialog::showMagnet(link, this);
else
QBtSession::instance()->addMagnetUri(link);
}
@ -1198,7 +1198,7 @@ void MainWindow::downloadFromURLList(const QStringList& url_list) { @@ -1198,7 +1198,7 @@ void MainWindow::downloadFromURLList(const QStringList& url_list) {
}
if (url.startsWith("magnet:", Qt::CaseInsensitive)) {
if (useTorrentAdditionDialog)
AddNewTorrentDialog::showMagnet(url);
AddNewTorrentDialog::showMagnet(url, this);
else
QBtSession::instance()->addMagnetUri(url);
}

Loading…
Cancel
Save