Remove possibility of the infinitive loop on screen capture and remove activeModalWidget check on screen capture for MacOS

(cherry picked from commit afaed07ae9b3c729e6082cc6b325aeca1dc08436)
This commit is contained in:
Yuriy Puchkov
2021-02-08 16:51:54 +02:00
parent 3973c2f38d
commit 0425be7a44

View File

@@ -265,14 +265,8 @@ void Controller::startVisualCapture(const uint id,
#endif
if (nullptr == m_captureWindow) {
#if (defined(Q_OS_MAC) || defined(Q_OS_MAC64) || defined(Q_OS_MACOS) || \
defined(Q_OS_MACX))
// It seems that the following code is not required for MacOS because it
// has another type of CaptureWidget editor (FullScreen instead Flags:
// Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint | Qt::Popup
int timeout = 5000; // 5 seconds
for (; timeout >= 0; timeout -= 10) {
qDebug() << "timeout" << timeout;
QWidget* modalWidget = qApp->activeModalWidget();
if (modalWidget) {
modalWidget->close();
@@ -285,8 +279,8 @@ void Controller::startVisualCapture(const uint id,
if (0 == timeout) {
QMessageBox::warning(
nullptr, tr("Error"), tr("Unable to close active modal widgets"));
return;
}
#endif
m_captureWindow = new CaptureWidget(id, forcedSavePath);
// m_captureWindow = new CaptureWidget(id, forcedSavePath, false); //