aboutsummaryrefslogtreecommitdiffstats
path: root/src/quickdialogs/quickdialogsquickimpl/qquickplatformfolderdialog.cpp
diff options
context:
space:
mode:
authorSanthosh Kumar <santhosh.kumar.selvaraj@qt.io>2024-08-21 18:42:55 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2025-07-10 11:15:13 +0000
commitf86510a2122d8c836fd0de4ac4b56ef3d2bd70e8 (patch)
treeb84212a170c398b0ff278a35cc1b6dd236a9dece /src/quickdialogs/quickdialogsquickimpl/qquickplatformfolderdialog.cpp
parent68fc3f1ab6b4fa960bdd4b5f9f5045f2a1c8ce55 (diff)
Propagate modality to the non-native quick dialogs
The non-native quick dialogs don't block input to the windows even after setting the modality as ApplicationModal/WindowModal. This is because non-native platform dialogs (QuickPlaform*Dialogs) didn't set modal to its respective window (QQuickPopupWindow). This patch fixes that issue by setting the modality to the non-native platform dialogs. Task-number: QTBUG-127605 Pick-to: 6.9 6.8 Change-Id: Idb3374e881766ae92adc0360c9b9af5c498dd6df Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io> (cherry picked from commit 931d634c469babe7835d8486cafc4bfe17bcb21f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/quickdialogs/quickdialogsquickimpl/qquickplatformfolderdialog.cpp')
-rw-r--r--src/quickdialogs/quickdialogsquickimpl/qquickplatformfolderdialog.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/quickdialogs/quickdialogsquickimpl/qquickplatformfolderdialog.cpp b/src/quickdialogs/quickdialogsquickimpl/qquickplatformfolderdialog.cpp
index 2f4cf630c7..849fe4b042 100644
--- a/src/quickdialogs/quickdialogsquickimpl/qquickplatformfolderdialog.cpp
+++ b/src/quickdialogs/quickdialogsquickimpl/qquickplatformfolderdialog.cpp
@@ -10,6 +10,7 @@
#include <QtQml/qqmlinfo.h>
#include <QtQuick/qquickwindow.h>
#include <QtQuickTemplates2/private/qquickdialog_p.h>
+#include <QtQuickTemplates2/private/qquickdialog_p_p.h>
#include <QtQuickTemplates2/private/qquickpopup_p_p.h>
#include <QtQuickTemplates2/private/qquickpopupanchors_p.h>
@@ -154,7 +155,7 @@ bool QQuickPlatformFolderDialog::show(Qt::WindowFlags flags, Qt::WindowModality
? options->labelText(QFileDialogOptions::Accept) : QString());
m_dialog->setRejectLabel(options->isLabelExplicitlySet(QFileDialogOptions::Reject)
? options->labelText(QFileDialogOptions::Reject) : QString());
-
+ m_dialog->setWindowModality(modality);
m_dialog->open();
return true;
}