mirror of
https://github.com/d47081/qBittorrent.git
synced 2025-01-25 14:04:23 +00:00
Use proper method for deferred calls
This commit is contained in:
parent
a59a6ce8e4
commit
3f762a416d
@ -47,6 +47,7 @@
|
|||||||
#include <QByteArray>
|
#include <QByteArray>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
#include <QLibraryInfo>
|
#include <QLibraryInfo>
|
||||||
|
#include <QMetaObject>
|
||||||
#include <QProcess>
|
#include <QProcess>
|
||||||
|
|
||||||
#ifndef DISABLE_GUI
|
#ifndef DISABLE_GUI
|
||||||
@ -770,7 +771,7 @@ void Application::shutdownCleanup(QSessionManager &manager)
|
|||||||
// According to the qt docs we shouldn't call quit() inside a slot.
|
// According to the qt docs we shouldn't call quit() inside a slot.
|
||||||
// aboutToQuit() is never emitted if the user hits "Cancel" in
|
// aboutToQuit() is never emitted if the user hits "Cancel" in
|
||||||
// the above dialog.
|
// the above dialog.
|
||||||
QTimer::singleShot(0, qApp, &QCoreApplication::quit);
|
QMetaObject::invokeMethod(qApp, &QCoreApplication::quit, Qt::QueuedConnection);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -29,6 +29,7 @@
|
|||||||
|
|
||||||
#include "searchhandler.h"
|
#include "searchhandler.h"
|
||||||
|
|
||||||
|
#include <QMetaObject>
|
||||||
#include <QProcess>
|
#include <QProcess>
|
||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
#include <QVector>
|
#include <QVector>
|
||||||
@ -87,7 +88,8 @@ SearchHandler::SearchHandler(const QString &pattern, const QString &category, co
|
|||||||
m_searchTimeout->start(180000); // 3 min
|
m_searchTimeout->start(180000); // 3 min
|
||||||
|
|
||||||
// deferred start allows clients to handle starting-related signals
|
// deferred start allows clients to handle starting-related signals
|
||||||
QTimer::singleShot(0, this, [this]() { m_searchProcess->start(QIODevice::ReadOnly); });
|
QMetaObject::invokeMethod(this, [this]() { m_searchProcess->start(QIODevice::ReadOnly); }
|
||||||
|
, Qt::QueuedConnection);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool SearchHandler::isActive() const
|
bool SearchHandler::isActive() const
|
||||||
|
@ -40,6 +40,7 @@
|
|||||||
#include <QFileSystemWatcher>
|
#include <QFileSystemWatcher>
|
||||||
#include <QKeyEvent>
|
#include <QKeyEvent>
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
|
#include <QMetaObject>
|
||||||
#include <QMimeData>
|
#include <QMimeData>
|
||||||
#include <QProcess>
|
#include <QProcess>
|
||||||
#include <QPushButton>
|
#include <QPushButton>
|
||||||
@ -348,8 +349,7 @@ MainWindow::MainWindow(QWidget *parent)
|
|||||||
on_actionWarningMessages_triggered(m_ui->actionWarningMessages->isChecked());
|
on_actionWarningMessages_triggered(m_ui->actionWarningMessages->isChecked());
|
||||||
on_actionCriticalMessages_triggered(m_ui->actionCriticalMessages->isChecked());
|
on_actionCriticalMessages_triggered(m_ui->actionCriticalMessages->isChecked());
|
||||||
if (m_ui->actionSearchWidget->isChecked())
|
if (m_ui->actionSearchWidget->isChecked())
|
||||||
QTimer::singleShot(0, this, &MainWindow::on_actionSearchWidget_triggered);
|
QMetaObject::invokeMethod(this, &MainWindow::on_actionSearchWidget_triggered, Qt::QueuedConnection);
|
||||||
|
|
||||||
// Auto shutdown actions
|
// Auto shutdown actions
|
||||||
auto *autoShutdownGroup = new QActionGroup(this);
|
auto *autoShutdownGroup = new QActionGroup(this);
|
||||||
autoShutdownGroup->setExclusive(true);
|
autoShutdownGroup->setExclusive(true);
|
||||||
@ -1195,7 +1195,7 @@ void MainWindow::closeEvent(QCloseEvent *e)
|
|||||||
if (!m_forceExit && m_systrayIcon && goToSystrayOnExit && !this->isHidden())
|
if (!m_forceExit && m_systrayIcon && goToSystrayOnExit && !this->isHidden())
|
||||||
{
|
{
|
||||||
e->ignore();
|
e->ignore();
|
||||||
QTimer::singleShot(0, this, &QWidget::hide);
|
QMetaObject::invokeMethod(this, &QWidget::hide, Qt::QueuedConnection);
|
||||||
if (!pref->closeToTrayNotified())
|
if (!pref->closeToTrayNotified())
|
||||||
{
|
{
|
||||||
showNotificationBalloon(tr("qBittorrent is closed to tray"), tr("This behavior can be changed in the settings. You won't be reminded again."));
|
showNotificationBalloon(tr("qBittorrent is closed to tray"), tr("This behavior can be changed in the settings. You won't be reminded again."));
|
||||||
@ -1292,7 +1292,7 @@ bool MainWindow::event(QEvent *e)
|
|||||||
{
|
{
|
||||||
qDebug("Minimize to Tray enabled, hiding!");
|
qDebug("Minimize to Tray enabled, hiding!");
|
||||||
e->ignore();
|
e->ignore();
|
||||||
QTimer::singleShot(0, this, &QWidget::hide);
|
QMetaObject::invokeMethod(this, &QWidget::hide, Qt::QueuedConnection);
|
||||||
if (!pref->minimizeToTrayNotified())
|
if (!pref->minimizeToTrayNotified())
|
||||||
{
|
{
|
||||||
showNotificationBalloon(tr("qBittorrent is minimized to tray"), tr("This behavior can be changed in the settings. You won't be reminded again."));
|
showNotificationBalloon(tr("qBittorrent is minimized to tray"), tr("This behavior can be changed in the settings. You won't be reminded again."));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user