mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-22 05:40:01 -06:00
Track the co-ordinates of the mouse relative to the pointed window instead of the original hwnd.
This commit is contained in:
@ -31,11 +31,11 @@ static const struct
|
|||||||
};
|
};
|
||||||
|
|
||||||
// lil silly
|
// lil silly
|
||||||
static HWND hwnd;
|
static HWND m_hwnd;
|
||||||
|
|
||||||
void InitKeyboardMouse(IDirectInput8* const idi8, std::vector<Core::Device*>& devices, HWND _hwnd)
|
void InitKeyboardMouse(IDirectInput8* const idi8, std::vector<Core::Device*>& devices, HWND _hwnd)
|
||||||
{
|
{
|
||||||
hwnd = _hwnd;
|
m_hwnd = _hwnd;
|
||||||
|
|
||||||
// mouse and keyboard are a combined device, to allow shift+click and stuff
|
// mouse and keyboard are a combined device, to allow shift+click and stuff
|
||||||
// if that's dumb, I will make a VirtualDevice class that just uses ranges of inputs/outputs from other devices
|
// if that's dumb, I will make a VirtualDevice class that just uses ranges of inputs/outputs from other devices
|
||||||
@ -124,10 +124,11 @@ void GetMousePos(ControlState* const x, ControlState* const y)
|
|||||||
{
|
{
|
||||||
POINT point = { 1, 1 };
|
POINT point = { 1, 1 };
|
||||||
GetCursorPos(&point);
|
GetCursorPos(&point);
|
||||||
// Get the cursor position relative to the upper left corner of the rendering window
|
// Get the cursor position relative to the upper left corner of the current window (separate or render to main)
|
||||||
|
HWND hwnd = WindowFromPoint(point);
|
||||||
ScreenToClient(hwnd, &point);
|
ScreenToClient(hwnd, &point);
|
||||||
|
|
||||||
// Get the size of the rendering window. (In my case Rect.top and Rect.left was zero.)
|
// Get the size of the current window. (In my case Rect.top and Rect.left was zero.)
|
||||||
RECT rect;
|
RECT rect;
|
||||||
GetClientRect(hwnd, &rect);
|
GetClientRect(hwnd, &rect);
|
||||||
// Width and height is the size of the rendering window
|
// Width and height is the size of the rendering window
|
||||||
|
Reference in New Issue
Block a user