[v2 1/2] d3d8/tests: Accept CURSOR_SUPPRESSED in cursor flags.

Vincent Povirk madewokherd at gmail.com
Tue Nov 24 14:41:07 CST 2015


From: Vincent Povirk <vincent at codeweavers.com>

On Windows 8, any input received from a touchscreen hides the cursor and sets
this flag. Input from a relative pointer shows the cursor and clears the flag.

Changes since v1:
- Simplified test condition.

Signed-off-by: Vincent Povirk <vincent at codeweavers.com>
---
 dlls/d3d8/tests/device.c | 5 +++--
 include/winuser.h        | 3 +++
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/dlls/d3d8/tests/device.c b/dlls/d3d8/tests/device.c
index 827f144..daf45b7 100644
--- a/dlls/d3d8/tests/device.c
+++ b/dlls/d3d8/tests/device.c
@@ -21,6 +21,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
 
+#define WINVER 0x0602 /* for CURSOR_SUPPRESSED */
 #define COBJMACROS
 #include <initguid.h>
 #include <d3d8.h>
@@ -853,7 +854,7 @@ static void test_cursor(void)
     memset(&info, 0, sizeof(info));
     info.cbSize = sizeof(info);
     ok(pGetCursorInfo(&info), "GetCursorInfo failed\n");
-    ok(info.flags & CURSOR_SHOWING, "The gdi cursor is hidden (%08x)\n", info.flags);
+    ok(info.flags & (CURSOR_SHOWING|CURSOR_SUPPRESSED), "The gdi cursor is hidden (%08x)\n", info.flags);
     ok(info.hCursor == cur, "The cursor handle is %p\n", info.hCursor); /* unchanged */
 
     /* Still hidden */
@@ -867,7 +868,7 @@ static void test_cursor(void)
     memset(&info, 0, sizeof(info));
     info.cbSize = sizeof(info);
     ok(pGetCursorInfo(&info), "GetCursorInfo failed\n");
-    ok(info.flags & CURSOR_SHOWING, "The gdi cursor is hidden (%08x)\n", info.flags);
+    ok(info.flags & (CURSOR_SHOWING|CURSOR_SUPPRESSED), "The gdi cursor is hidden (%08x)\n", info.flags);
     ok(info.hCursor != cur, "The cursor handle is %p\n", info.hCursor);
 
     refcount = IDirect3DDevice8_Release(device);
diff --git a/include/winuser.h b/include/winuser.h
index 1d3759a..b009d66 100644
--- a/include/winuser.h
+++ b/include/winuser.h
@@ -1533,6 +1533,9 @@ typedef struct tagCURSORINFO
 } CURSORINFO, *PCURSORINFO, *LPCURSORINFO;
 
 #define CURSOR_SHOWING 0x00000001
+#if (WINVER >= 0x0602)
+#define CURSOR_SUPPRESSED 0x00000002
+#endif
 
 /* this is the 6 byte accel struct used in Win32 when presented to the user */
 typedef struct tagACCEL
-- 
2.5.0




More information about the wine-patches mailing list