Details
-
Bug
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
5.15.1
-
None
Description
I have Menu in my qml file, it has a submenu which create a custom dialog defined by myself. The problem is that the lineedit in the dialog didn't accept any key input.
I debugged into the qt library and found that the menu grab key board when it calls show in qquickpopupwindow.cpp:
void QQuickPopupWindow1::show()
{
...
setKeyboardGrabEnabled(true);
}
But it didn't release the keyGrab when it dismissed. So that the system keeps a windows pointer to this Menu in class QWindowsKeyMapper, and not any key event was passed to my dialog.
What's more, the problem only exists in windows platform, and linux is ok.
Wish to get any good advice to avoid this later.
Thank you.