File indexing completed on 2024-05-12 15:58:52
0001 /* 0002 * SPDX-FileCopyrightText: 2020 Dmitry Kazakov <dimula73@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 #include "KisSafeBlockingQueueConnectionProxy.h" 0007 0008 #include <QThread> 0009 #include <QApplication> 0010 #include <KisBusyWaitBroker.h> 0011 0012 void KisSafeBlockingQueueConnectionProxyPrivate::passBlockingSignalSafely(FunctionToSignalProxy &source, SignalToFunctionProxy &destination) 0013 { 0014 if (QThread::currentThread() == qApp->thread() || 0015 KisBusyWaitBroker::instance()->guiThreadIsWaitingForBetterWeather()) { 0016 0017 destination.start(); 0018 } else { 0019 source.start(); 0020 } 0021 } 0022 0023 void KisSafeBlockingQueueConnectionProxyPrivate::initProxyObject(QObject *object) 0024 { 0025 object->moveToThread(qApp->thread()); 0026 }