diff options
| author | Santhosh Kumar <santhosh.kumar.selvaraj@qt.io> | 2024-08-21 18:42:55 +0200 |
|---|---|---|
| committer | Santhosh Kumar <santhosh.kumar.selvaraj@qt.io> | 2025-07-09 22:31:35 +0200 |
| commit | 931d634c469babe7835d8486cafc4bfe17bcb21f (patch) | |
| tree | 2f7a17e41fed020da636f3ab57db5105e7625b14 /src/quickdialogs/quickdialogsquickimpl/qquickplatformfontdialog.cpp | |
| parent | 8aeb0b3236a98458a7310e8f2817aab0bb60558a (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.10 6.9 6.8
Change-Id: Idb3374e881766ae92adc0360c9b9af5c498dd6df
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
Diffstat (limited to 'src/quickdialogs/quickdialogsquickimpl/qquickplatformfontdialog.cpp')
| -rw-r--r-- | src/quickdialogs/quickdialogsquickimpl/qquickplatformfontdialog.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/quickdialogs/quickdialogsquickimpl/qquickplatformfontdialog.cpp b/src/quickdialogs/quickdialogsquickimpl/qquickplatformfontdialog.cpp index 6a68a28525..ba391f44f8 100644 --- a/src/quickdialogs/quickdialogsquickimpl/qquickplatformfontdialog.cpp +++ b/src/quickdialogs/quickdialogsquickimpl/qquickplatformfontdialog.cpp @@ -10,6 +10,7 @@ #include <QtQml/qqmlcomponent.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> @@ -125,7 +126,7 @@ bool QQuickPlatformFontDialog::show(Qt::WindowFlags flags, Qt::WindowModality mo m_dialog->setOptions(options); m_dialog->init(); - + m_dialog->setWindowModality(modality); m_dialog->open(); return true; } |
