-
Bug
-
Resolution: Done
-
P4: Low
-
5.10.1
-
None
-
Windows 10 64-bit
Visual Studio 2015 Update 3
Qt 5.10.1
-
a0a22037cdacbf51a2db560ff902a5a341561b15 (qtbase/5.11. 23.4.2018,5.11)
When registering native event filters on Windows - each mouse and keyboard event is duplicated. Othe the other hand, some events like WM_CHAR are "swallowed". I see the following output in logging for every event (left mouse button clicked, then one character typed):
WM_LBUTTONDOWN
WM_LBUTTONDOWN
WM_LBUTTONUP
WM_LBUTTONUP
WM_KEYDOWN
WM_KEYDOWN
WM_KEYUP
WM_KEYUP
While plain C WinAPI message loop logging results in:
WM_LBUTTONDOWN
WM_LBUTTONUP
WM_KEYDOWN
WM_CHAR
WM_KEYUP
The test project (find attached) is a basic QML project using Visual Studio 2015 32-bit for building. It creates single blank ApplicationWindow and registers object of class inheriting from QAbstractNativeEventFilter using QApplication::installNativeEventFilter.
The issue is serious since we have some 3rd party components that depend on correct handling of native windows events and the current message loop seems messed up...
- is duplicated by
-
QTBUG-42183 QWidget::nativeEvents doesn't receive WM_KEY* messages
-
- Open
-
- relates to
-
QTBUG-69687 Running an event loop with ExcludeUserInputEvents still passes input events to QWidget::nativeEvent() instead of queueing as in Qt 4
-
- Closed
-
-
QTBUG-69074 The implemented nativeEvent message is not match as sent
-
- Closed
-