diff options
author | bruvzg <7645683+bruvzg@users.noreply.github.com> | 2019-11-07 14:12:15 +0200 |
---|---|---|
committer | bruvzg <7645683+bruvzg@users.noreply.github.com> | 2019-11-07 14:12:15 +0200 |
commit | 1c8d3ab94f130b09320584b29513790e90311b52 (patch) | |
tree | c4054aa74cd7510b63bb2566ce0d71840e860326 | |
parent | bcb6a991547f17c51e39603b74419794b9daa6f3 (diff) |
Fix graphic tablet input coordinates on Windows.
-rwxr-xr-x[-rw-r--r--] | platform/windows/os_windows.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/platform/windows/os_windows.cpp b/platform/windows/os_windows.cpp index c4cd8e068c..e73cfcf241 100644..100755 --- a/platform/windows/os_windows.cpp +++ b/platform/windows/os_windows.cpp @@ -556,8 +556,14 @@ LRESULT OS_Windows::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) mm->set_button_mask(last_button_state); - mm->set_position(Vector2(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam))); - mm->set_global_position(Vector2(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam))); + POINT coords; //client coords + coords.x = GET_X_LPARAM(lParam); + coords.y = GET_Y_LPARAM(lParam); + + ScreenToClient(hWnd, &coords); + + mm->set_position(Vector2(coords.x, coords.y)); + mm->set_global_position(Vector2(coords.x, coords.y)); if (mouse_mode == MOUSE_MODE_CAPTURED) { |