xref: /OK3568_Linux_fs/buildroot/package/qt5/qt5base/0029-bugfix-qtvitrualkeyboard.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFrom b649690107f1654bce1c3f2a1f508631f316dfb3 Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: liyue <liyue@forlinx.com>
3*4882a593SmuzhiyunDate: Sat, 4 Jan 2025 15:55:51 +0800
4*4882a593SmuzhiyunSubject: [PATCH] bugfix qtvitrualkeyboard
5*4882a593Smuzhiyun
6*4882a593Smuzhiyun---
7*4882a593Smuzhiyun src/gui/kernel/qguiapplication.cpp | 4 ++++
8*4882a593Smuzhiyun 1 file changed, 4 insertions(+)
9*4882a593Smuzhiyun
10*4882a593Smuzhiyundiff --git a/src/gui/kernel/qguiapplication.cpp b/src/gui/kernel/qguiapplication.cpp
11*4882a593Smuzhiyunindex 66d305d2..58ef73dc 100644
12*4882a593Smuzhiyun--- a/src/gui/kernel/qguiapplication.cpp
13*4882a593Smuzhiyun+++ b/src/gui/kernel/qguiapplication.cpp
14*4882a593Smuzhiyun@@ -845,6 +845,10 @@ void QGuiApplicationPrivate::updateBlockedStatus(QWindow *window)
15*4882a593Smuzhiyun     const bool popupType = (window->type() == Qt::ToolTip) || (window->type() == Qt::Popup);
16*4882a593Smuzhiyun     if (!popupType && !self->modalWindowList.isEmpty())
17*4882a593Smuzhiyun         shouldBeBlocked = self->isWindowBlocked(window);
18*4882a593Smuzhiyun+    if(shouldBeBlocked &&((window->flags() & Qt::WindowStaysOnTopHint) ==Qt::WindowStaysOnTopHint)
19*4882a593Smuzhiyun+						&((window->flags() & Qt::WindowDoesNotAcceptFocus) ==Qt::WindowDoesNotAcceptFocus)
20*4882a593Smuzhiyun+				&window->isVisible())
21*4882a593Smuzhiyun+			shouldBeBlocked = false;
22*4882a593Smuzhiyun     updateBlockedStatusRecursion(window, shouldBeBlocked);
23*4882a593Smuzhiyun }
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun--
26*4882a593Smuzhiyun2.25.1
27*4882a593Smuzhiyun
28