Commit 414d225b authored by Stefan Dösinger's avatar Stefan Dösinger Committed by Alexandre Julliard

d3d8/tests: Skip test_cursor_pos if we can't move the cursor.

parent dfd64573
......@@ -1210,6 +1210,7 @@ static void test_cursor_pos(void)
HWND window;
HRESULT hr;
BOOL ret;
POINT pt;
/* Note that we don't check for movement we're not supposed to receive.
* That's because it's hard to distinguish from the user accidentally
......@@ -1241,6 +1242,18 @@ static void test_cursor_pos(void)
ok(ret, "Failed to set cursor position.\n");
flush_events();
/* Check if we can move the cursor. If we're running in a virtual desktop
* that does not have focus or the mouse is outside the desktop window, some
* window managers (e.g. kwin) will refuse to let us steal the pointer. That
* is reasonable, but breaks the test. */
ret = GetCursorPos(&pt);
ok(ret, "Failed to get cursor position.\n");
if (pt.x != 99 || pt.y != 99)
{
skip("Could not warp the cursor (cur pos %ux%u), skipping test.\n", pt.x, pt.y);
return;
}
wc.lpfnWndProc = test_cursor_proc;
wc.lpszClassName = "d3d8_test_cursor_wc";
ok(RegisterClassA(&wc), "Failed to register window class.\n");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment