Still struggeling with this API. The scenario is like following:
Application main thread
MainWindow(hidden)
RenderWindow (DirectX)
(Additional render windows)
I need to be able to read the input from two devices, so i cannot use SiGrabDevice, because when I do, both devices act as a single device.
The problem is that I don't receive the events as expected. It seems it has something to do with keyboard focus. I want the events to always come to the window i supply to SiOpenWinInit()
I've tried:
- SiOpenWinInit in only MainWindow
- SiOpenWinInit in only RenderWindow
- SiOpenWinInit for both MainWindow and Renderwindow
- SiOpenWinInit in a new child window to MainWindow
- SiOpenWinInit in a new child window to RenderWindow
- SiOpenWinInit in a new child window for both MainWindow and Renderwindow
- A new window in a separate thread
In another single window application everything works fine (using the same methologies as above only difference is that it is a normal windows GUI application).
I've also used SPY++ to confirm that none of my windows (main or render) receive the messages (msg=0xC1B4) as in the GUI window application.
Is there any way to force the SDK so send the messages to the specified window handle regardless of keyboard focus?
It might be a bit unclear of what I'm doing, I could hand over code snippets when requested.
Thanks!