diff --git a/src/gui/addnewtorrentdialog.cpp b/src/gui/addnewtorrentdialog.cpp index 7b553e091ae7..ebdba875c16a 100644 --- a/src/gui/addnewtorrentdialog.cpp +++ b/src/gui/addnewtorrentdialog.cpp @@ -373,7 +373,7 @@ AddNewTorrentDialog::AddNewTorrentDialog(const BitTorrent::TorrentDescriptor &to }); dlg->open(); }); - connect(m_filterLine, &LineEdit::textChanged, this, &AddNewTorrentDialog::setContentFilterPattern); + connect(m_filterLine, &LineEdit::textUpdated, this, &AddNewTorrentDialog::setContentFilterPattern); connect(m_ui->buttonSelectAll, &QPushButton::clicked, m_ui->contentTreeView, &TorrentContentWidget::checkAll); connect(m_ui->buttonSelectNone, &QPushButton::clicked, m_ui->contentTreeView, &TorrentContentWidget::checkNone); connect(Preferences::instance(), &Preferences::changed, this, [] diff --git a/src/gui/addnewtorrentdialog.ui b/src/gui/addnewtorrentdialog.ui index 7e17af2d6453..dc606b667bbf 100644 --- a/src/gui/addnewtorrentdialog.ui +++ b/src/gui/addnewtorrentdialog.ui @@ -484,7 +484,7 @@ true - Qt::TextInteractionFlag::TextSelectableByKeyboard|Qt::TextInteractionFlag::TextSelectableByMouse + Qt::TextInteractionFlag::LinksAccessibleByKeyboard|Qt::TextInteractionFlag::LinksAccessibleByMouse|Qt::TextInteractionFlag::TextSelectableByKeyboard|Qt::TextInteractionFlag::TextSelectableByMouse diff --git a/src/gui/lineedit.cpp b/src/gui/lineedit.cpp index 08a5aeea58f2..0a11d2e794f0 100644 --- a/src/gui/lineedit.cpp +++ b/src/gui/lineedit.cpp @@ -58,7 +58,7 @@ LineEdit::LineEdit(QWidget *parent) m_delayedTextChangedTimer->setSingleShot(true); connect(m_delayedTextChangedTimer, &QTimer::timeout, this, [this] { - emit textChanged(text()); + emit textUpdated(text()); }); connect(this, &QLineEdit::textChanged, this, [this] { diff --git a/src/gui/lineedit.h b/src/gui/lineedit.h index 459740f86946..7613c282f261 100644 --- a/src/gui/lineedit.h +++ b/src/gui/lineedit.h @@ -43,7 +43,7 @@ class LineEdit final : public QLineEdit explicit LineEdit(QWidget *parent = nullptr); signals: - void textChanged(const QString &text); + void textUpdated(const QString &text); private: void keyPressEvent(QKeyEvent *event) override; diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp index aba2f953c207..681d8a54edbf 100644 --- a/src/gui/mainwindow.cpp +++ b/src/gui/mainwindow.cpp @@ -271,7 +271,7 @@ MainWindow::MainWindow(IGUIApplication *app, const WindowState initialState, con m_columnFilterComboBox->addItem(typeName, type); } connect(m_columnFilterComboBox, &QComboBox::currentIndexChanged, this, &MainWindow::applyTransferListFilter); - connect(m_columnFilterEdit, &LineEdit::textChanged, this, &MainWindow::applyTransferListFilter); + connect(m_columnFilterEdit, &LineEdit::textUpdated, this, &MainWindow::applyTransferListFilter); connect(hSplitter, &QSplitter::splitterMoved, this, &MainWindow::saveSettings); connect(m_splitter, &QSplitter::splitterMoved, this, &MainWindow::saveSplitterSettings); diff --git a/src/gui/properties/propertieswidget.cpp b/src/gui/properties/propertieswidget.cpp index a885b1cff6dd..15640f40ff82 100644 --- a/src/gui/properties/propertieswidget.cpp +++ b/src/gui/properties/propertieswidget.cpp @@ -83,7 +83,7 @@ PropertiesWidget::PropertiesWidget(QWidget *parent) m_contentFilterLine->setFixedWidth(300); m_contentFilterLine->setContextMenuPolicy(Qt::CustomContextMenu); connect(m_contentFilterLine, &QWidget::customContextMenuRequested, this, &PropertiesWidget::showContentFilterContextMenu); - connect(m_contentFilterLine, &LineEdit::textChanged, this, &PropertiesWidget::setContentFilterPattern); + connect(m_contentFilterLine, &LineEdit::textUpdated, this, &PropertiesWidget::setContentFilterPattern); m_ui->contentFilterLayout->insertWidget(3, m_contentFilterLine); m_ui->filesList->setContentDragAllowed(true); diff --git a/src/gui/search/searchjobwidget.cpp b/src/gui/search/searchjobwidget.cpp index a77561b693d0..ad11e6a52053 100644 --- a/src/gui/search/searchjobwidget.cpp +++ b/src/gui/search/searchjobwidget.cpp @@ -169,7 +169,7 @@ SearchJobWidget::SearchJobWidget(const QString &id, IGUIApplication *app, QWidge m_lineEditSearchResultsFilter->setPlaceholderText(tr("Filter search results...")); m_lineEditSearchResultsFilter->setContextMenuPolicy(Qt::CustomContextMenu); connect(m_lineEditSearchResultsFilter, &QWidget::customContextMenuRequested, this, &SearchJobWidget::showFilterContextMenu); - connect(m_lineEditSearchResultsFilter, &LineEdit::textChanged, this, &SearchJobWidget::filterSearchResults); + connect(m_lineEditSearchResultsFilter, &LineEdit::textUpdated, this, &SearchJobWidget::filterSearchResults); m_ui->horizontalLayout->insertWidget(0, m_lineEditSearchResultsFilter); connect(m_ui->filterMode, qOverload(&QComboBox::currentIndexChanged), this, &SearchJobWidget::updateNameFilter); diff --git a/src/gui/torrentcreatordialog.cpp b/src/gui/torrentcreatordialog.cpp index 15f86034d867..1c5da261767d 100644 --- a/src/gui/torrentcreatordialog.cpp +++ b/src/gui/torrentcreatordialog.cpp @@ -39,6 +39,7 @@ #include #include #include +#include #include #include "base/bittorrent/session.h" @@ -99,7 +100,7 @@ namespace TorrentCreatorDialog::TorrentCreatorDialog(QWidget *parent, const Path &defaultPath) : QDialog(parent) , m_ui(new Ui::TorrentCreatorDialog) - , m_threadPool(this) + , m_threadPool {new QThreadPool(this)} , m_storeDialogSize(SETTINGS_KEY(u"Size"_s)) , m_storePieceSize(SETTINGS_KEY(u"PieceSize"_s)) , m_storePrivateTorrent(SETTINGS_KEY(u"PrivateTorrent"_s)) @@ -141,8 +142,8 @@ TorrentCreatorDialog::TorrentCreatorDialog(QWidget *parent, const Path &defaultP loadSettings(); updateInputPath(defaultPath); - m_threadPool.setMaxThreadCount(1); - m_threadPool.setObjectName("TorrentCreatorDialog m_threadPool"); + m_threadPool->setMaxThreadCount(1); + m_threadPool->setObjectName("TorrentCreatorDialog m_threadPool"); #ifdef QBT_USES_LIBTORRENT2 m_ui->checkOptimizeAlignment->hide(); @@ -155,6 +156,7 @@ TorrentCreatorDialog::~TorrentCreatorDialog() { saveSettings(); + delete m_threadPool; delete m_ui; } @@ -321,7 +323,7 @@ void TorrentCreatorDialog::onCreateButtonClicked() connect(torrentCreator, &BitTorrent::TorrentCreator::progressUpdated, this, &TorrentCreatorDialog::updateProgressBar); // run the torrentCreator in a thread - m_threadPool.start(torrentCreator); + m_threadPool->start(torrentCreator); } void TorrentCreatorDialog::handleCreationFailure(const QString &msg) @@ -371,7 +373,7 @@ void TorrentCreatorDialog::handleCreationSuccess(const BitTorrent::TorrentCreato } } -void TorrentCreatorDialog::updateProgressBar(int progress) +void TorrentCreatorDialog::updateProgressBar(const int progress) { m_ui->progressBar->setValue(progress); } diff --git a/src/gui/torrentcreatordialog.h b/src/gui/torrentcreatordialog.h index bca27b2765f6..80c1f658448e 100644 --- a/src/gui/torrentcreatordialog.h +++ b/src/gui/torrentcreatordialog.h @@ -31,11 +31,12 @@ #pragma once #include -#include #include "base/path.h" #include "base/settingvalue.h" +class QThreadPool; + namespace BitTorrent { enum class TorrentFormat; @@ -82,7 +83,7 @@ private slots: #endif Ui::TorrentCreatorDialog *m_ui = nullptr; - QThreadPool m_threadPool; + QThreadPool *m_threadPool = nullptr; // settings SettingValue m_storeDialogSize; diff --git a/src/gui/uithememanager.cpp b/src/gui/uithememanager.cpp index c79ccfec0359..73571961f493 100644 --- a/src/gui/uithememanager.cpp +++ b/src/gui/uithememanager.cpp @@ -55,7 +55,7 @@ namespace Path resolveThemePath(const Path &themePath) { - return (themePath.isAbsolute() ? themePath : (Profile::instance()->rootPath() / themePath)); + return (themePath.isAbsolute() ? themePath : (Profile::instance()->location(SpecialFolder::Config) / themePath)); } }