mirror of
https://github.com/fergalmoran/flameshot.git
synced 2025-12-26 11:50:47 +00:00
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:
@@ -265,14 +265,8 @@ void Controller::startVisualCapture(const uint id,
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (nullptr == m_captureWindow) {
|
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
|
int timeout = 5000; // 5 seconds
|
||||||
for (; timeout >= 0; timeout -= 10) {
|
for (; timeout >= 0; timeout -= 10) {
|
||||||
qDebug() << "timeout" << timeout;
|
|
||||||
QWidget* modalWidget = qApp->activeModalWidget();
|
QWidget* modalWidget = qApp->activeModalWidget();
|
||||||
if (modalWidget) {
|
if (modalWidget) {
|
||||||
modalWidget->close();
|
modalWidget->close();
|
||||||
@@ -285,8 +279,8 @@ void Controller::startVisualCapture(const uint id,
|
|||||||
if (0 == timeout) {
|
if (0 == timeout) {
|
||||||
QMessageBox::warning(
|
QMessageBox::warning(
|
||||||
nullptr, tr("Error"), tr("Unable to close active modal widgets"));
|
nullptr, tr("Error"), tr("Unable to close active modal widgets"));
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
m_captureWindow = new CaptureWidget(id, forcedSavePath);
|
m_captureWindow = new CaptureWidget(id, forcedSavePath);
|
||||||
// m_captureWindow = new CaptureWidget(id, forcedSavePath, false); //
|
// m_captureWindow = new CaptureWidget(id, forcedSavePath, false); //
|
||||||
|
|||||||
Reference in New Issue
Block a user