mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-28 15:53:55 -04:00
windisplay: Fix M_confined mode confining cursor to incorrect region
It should be confined to the client rect, not the window rect. Fixes #929
This commit is contained in:
parent
c59a039fa8
commit
4b00f9e660
@ -1311,22 +1311,18 @@ track_mouse_leaving(HWND hwnd) {
|
|||||||
bool WinGraphicsWindow::
|
bool WinGraphicsWindow::
|
||||||
confine_cursor() {
|
confine_cursor() {
|
||||||
RECT clip;
|
RECT clip;
|
||||||
if (!GetWindowRect(_hWnd, &clip)) {
|
get_client_rect_screen(_hWnd, &clip);
|
||||||
|
|
||||||
|
windisplay_cat.info()
|
||||||
|
<< "ClipCursor() to " << clip.left << "," << clip.top << " to "
|
||||||
|
<< clip.right << "," << clip.bottom << endl;
|
||||||
|
|
||||||
|
if (!ClipCursor(&clip)) {
|
||||||
windisplay_cat.warning()
|
windisplay_cat.warning()
|
||||||
<< "GetWindowRect() failed, cannot confine cursor.\n";
|
<< "Failed to confine cursor to window.\n";
|
||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
windisplay_cat.info()
|
return true;
|
||||||
<< "ClipCursor() to " << clip.left << "," << clip.top << " to "
|
|
||||||
<< clip.right << "," << clip.bottom << endl;
|
|
||||||
|
|
||||||
if (!ClipCursor(&clip)) {
|
|
||||||
windisplay_cat.warning()
|
|
||||||
<< "Failed to confine cursor to window.\n";
|
|
||||||
return false;
|
|
||||||
} else {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user