Commit graph

322 commits

Author SHA1 Message Date
Nikolay Sivov 4ad75a7ae8 d2d1/effect: Implement ConnectNode().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-16 23:09:04 +02:00
Nikolay Sivov be646151b9 d2d1/effect: Implement SetPassthroughGraph().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-16 23:09:04 +02:00
Nikolay Sivov 76eaa05c92 d2d1/effect: Add a stub vertex buffer object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-15 20:23:35 +02:00
Nikolay Sivov eb7199cb43 d2d1/tests: Add some vertex buffer tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-15 20:23:35 +02:00
Nikolay Sivov a1dadf3683 d2d1/effect: Fix GetImageLocalBounds() prototype.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-12 16:26:17 +02:00
Nikolay Sivov 3e3e347ed0 d2d1/tests: Add a test for effect output image interface query.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-05-12 16:26:17 +02:00
Nikolay Sivov 89111704a5 d2d1: Fix GetPropertyNameLength() return value.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-11 09:00:45 -05:00
Nikolay Sivov d05cfdd777 d2d1/effect: Add 'Rect' property to the Crop effect description.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-11 09:00:44 -05:00
Nikolay Sivov ce3d3f751a d2d1: Implement GetEffectProperties().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-11 09:00:44 -05:00
Nikolay Sivov d0b4040521 d2d1/tests: Use distinct types for vector and matrix values.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-09 08:29:21 -05:00
Nikolay Sivov 88af1e5b9e d2d1/effect: Zero value buffer on size or type mismatch.
Found this after seeing test crashes caused by writing to adjacent
stack memory, corrupting it. Happened with "size + 1" tests.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-09 08:29:19 -05:00
Nikolay Sivov 3d38ac44e7 d2d1/tests: Add supported interface checks for transform objects.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-03 23:03:38 +02:00
Nikolay Sivov 81d684a508 d2d1/effect: Implement bounds adjustment transform.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-03 23:03:38 +02:00
Nikolay Sivov 70799e1c79 d2d1/effect: Implement border transform object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-03 23:03:38 +02:00
Nikolay Sivov 48d043d31f d2d1/effect: Fix property value size for empty or missing string values.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-03 23:03:38 +02:00
Nikolay Sivov 7c969b0589 d2d1/effect: Implement SetSingleTransformNode().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-02 23:30:11 +02:00
Nikolay Sivov 3d64da16ce d2d1/effect: Implement SetOutputNode().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-02 23:30:11 +02:00
Nikolay Sivov 054c9d85fe d2d1/effect: Implement ConnectToEffectInput().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-02 23:30:11 +02:00
Nikolay Sivov fb4548b432 d2d1/effect: Implement node list for the transform graph.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-02 23:30:11 +02:00
Nikolay Sivov 1707550dae d2d1/effect: Implement blend transform object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-02 23:30:11 +02:00
Nikolay Sivov 5908d7faad d2d1/effect: Implement offset transform object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-02 23:30:11 +02:00
Nikolay Sivov a9926aebae d2d1/effect: Keep input count as a graph property when recreating it.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-02 23:30:11 +02:00
Nikolay Sivov 55f80c4ea4 d2d1/tests: Add a test for transform graph input count.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-02 23:30:11 +02:00
Nikolay Sivov 6ecd59ca39 d2d1/tests: Add a basic test for ID2D1DrawInfo instance.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-02 23:30:11 +02:00
Nikolay Sivov f38a32e64c d2d1/tests: Add a test for a custom effect using a pixel shader.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-04-01 20:23:14 +02:00
Nikolay Sivov 87ebccc37d d2d1/tests: Get rid of test shader blobs.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-03-29 22:45:36 +01:00
Brendan McGrath c65ac223a0 d2d1/tests: Increase timeout from 1 sec to 5 secs.
Fixes a test that is frequently failing on the GitLab CI.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56188
2024-02-22 12:44:01 +01:00
Nikolay Sivov d46021bab9 d2d1/effect: Recreate transform graph when input count changes. 2024-01-22 10:14:54 +01:00
Nikolay Sivov 1671031143 d2d1/effect: Use XML description for builtin effects. 2024-01-22 10:14:53 +01:00
Nikolay Sivov 9b32b18b08 d2d1/effect: Handle variable input count attributes in the description. 2024-01-22 10:14:51 +01:00
Nikolay Sivov 69870ee88b d2d1/tests: Add some tests for minimum/maximum input count in effect description. 2024-01-22 10:14:51 +01:00
Brendan McGrath 72590048b2 d2d1: Acquire lock before attempt to draw to device context.
Ensures the Direct 2D lock is held before attempting to access Direct 2D
exclusive resources.

This fixes periodic crashes in PowerPoint 365
2023-11-29 20:45:23 +01:00
Brendan McGrath e6954d793b d2d1: Add test for singlethreaded draw.
Tests that Direct2D can access D2D exclusive resources whilst the
Direct 2D lock is held if the factory type is single threaded
2023-11-29 20:45:21 +01:00
Brendan McGrath de9eeba7bd d2d1: Add test for multithreaded draw.
Tests that Direct2D can not access D2D exclusive resources whilst the
Direct 2D lock is held
2023-11-29 20:45:20 +01:00
Alexandre Julliard acad49573a makefiles: Always use the global SOURCES variable for .c files. 2023-11-01 22:44:03 +01:00
Jacek Caban a07fbb9307 d2d1/tests: Use D2D1_INTERPOLATION_MODE constants in DrawImage calls. 2023-10-20 19:24:08 +02:00
Andrew Brobston 54b875c08e d2d1: Support GUID_WICPixelFormat32bppRGB.
Needed by PowerFritz 18.
2023-09-26 21:20:06 +02:00
Jeff Smith 7febd8db5d d2d1/tests: Use compare_uint() in compare_float() instead of abs().
The result of abs(INT_MIN) is INT_MIN, which breaks the ulps comparison.
2023-08-08 12:00:01 +09:00
Nikolay Sivov e0ab89b856 d2d1: Keep effect shader objects at device level.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-08-03 20:42:27 +09:00
Nikolay Sivov cf2e1db7b5 d2d1/tests: Add some more tests for effect shader loading.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-08-03 20:42:27 +09:00
Nikolay Sivov b62f3c881b d2d1: Improve resource properties check when creating a bitmap. 2023-05-26 21:24:14 +02:00
Nikolay Sivov df7e680cd2 d2d1: Create GDI-compatible swapchain only for corresponding target usage. 2023-05-23 14:43:12 +02:00
Nikolay Sivov 6526de5c5a d2d1: Improve GetDC()/ReleaseDC() handling on render targets. 2023-05-23 14:43:12 +02:00
Nikolay Sivov 981db8313f d2d1: Create GDI-compatible target bitmap for GDI-compatible target usage. 2023-05-23 14:43:12 +02:00
Nikolay Sivov 612020f952 d2d1/tests: Add some more tests for ID2D1GdiInteropRenderTarget. 2023-05-23 14:43:12 +02:00
Nikolay Sivov ae43a87d01 d2d1: Reject D2D1_ALPHA_MODE_STRAIGHT alpha mode for HWND targets. 2023-05-23 14:43:12 +02:00
Nikolay Sivov 02919e4298 d2d1/tests: Use test context for more tests. 2023-05-23 14:43:12 +02:00
Nikolay Sivov df50411fac d2d1: Implement IsSupported() for DC target. 2023-05-23 14:43:12 +02:00
Nikolay Sivov c9b68daf44 d2d1: Implement IsSupported() for HWND target.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-05-17 07:13:21 -05:00
Zhiyi Zhang 4150d7282e d2d1/tests: Add some IsSupported() tests for HWND target.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-05-17 07:13:21 -05:00