On Wed Aug 6 15:44:03 2025 +0000, Rémi Bernon wrote:
I'm not very confident about hook chain logic but I think this only happens when the first hook is called, and the other hooks in the chain then dispatched/called using WM_WINE_MOUSE_LL_HOOK internal messages. It then raises the question to whether this is the right place to do this, or whether it would be better in `call_hook`, right before the hook is actually called. In particular `get_thread_dpi` could return different values depending on the thread / process DPI awareness, and that also raises the question to whether ll-hook pointer position needs to be DPI mapped or not.
I did more testing on Windows, WH_MOUSE_LL messages are not DPI scaled. So I suppose, instead of `get_thread_dpi`, I should just put 0 so it doesn't do any DPI scaling? Also, because WH_MOUSE_LL is not DPI scaled, I think there are still going to be issues on the way mouse movement is currently calculated by DirectInput.
How would we write a test for this? On Windows I can just increase the scaling of the display in the settings, but I'm not sure how to do it programmatically.