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