Commit graph

174229 commits

Author SHA1 Message Date
Vibhav Pant
044527c671 setupapi: Implement SetupDiGetDevicePropertyKeys. 2024-11-19 23:16:17 +01:00
Vibhav Pant
b6d427cae7 setupapi/tests: Add tests for SetupDiGetDevicePropertyKeys. 2024-11-19 23:16:17 +01:00
Vibhav Pant
d23d2847c5 setupapi: Add stub for SetupDiGetDevicePropertyKeys. 2024-11-19 23:16:17 +01:00
Jacek Caban
6927ccf6cc ntdll: Use proper format string for ULONG type. 2024-11-19 23:16:17 +01:00
Jacek Caban
34dce6335a configure: Preserve original CFLAGS when adding LLVM flags.
Ensure that the specified CROSSCFLAGS (or its default value) is applied consistently during
toolchain checks. Also fixes debug format recognition.

The regression was introduced in commit 471d7178ae.
2024-11-19 21:11:54 +01:00
Charlotte Pabst
005c8b8b9d jscript/tests: Add tests for star and opt operators in global regex. 2024-11-19 21:11:54 +01:00
Charlotte Pabst
1365b27a6b jscript: Handle star and opt operators while matching global regex properly.
Before this fix, the regex engine would run into an infinite loop and OOM when encountering a
quantifier allowing a zero amount of items in a REG_GLOB regex.
2024-11-19 21:11:54 +01:00
Rémi Bernon
721b7f5df6 evr: Use D3DCREATE_MULTITHREADED device creation flag. 2024-11-19 21:11:54 +01:00
Rémi Bernon
7b58ce5a02 d3d9/tests: Flush events after minimizing and restoring focus window.
Minimizing the window might trigger a focus change to the dummy window,
while restoring and setting foreground should change the foreground
back to the focus window.

However, the X window manager will instead send WM_TAKE_FOCUS event to
the dummy window and to the focus window concurrently, and the dummy
window might reply to it *after* we've restored the foreground to the
focus window. This will later cause the device window to fail to get
foreground, and the tests to randomly fail.
2024-11-19 21:11:54 +01:00
Matteo Bruni
8923eb51ea wined3d: Allow reusing current GL context without a current RT.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=57411
2024-11-19 21:11:54 +01:00
Haoyang Chen
5b4237d2be wined3d: Fix a memory leak. 2024-11-19 21:11:54 +01:00
Elizabeth Figura
a50dd3392b wined3d: Beginnings of an HLSL FFP vertex shader implementation. 2024-11-19 21:11:54 +01:00
Elizabeth Figura
eaef138dce wined3d: Use the FFP HLSL pipeline for pretransformed draws as well. 2024-11-19 21:11:54 +01:00
Elizabeth Figura
ff43072059 wined3d: Allow using the HLSL FFP replacement with GL.
This will allow us to replace the GLSL FFP pipes, and is useful for testing
the FFP HLSL backend before the Vulkan backend is mature enough in other
respects.

This patch introduces the d3d setting "ffp_hlsl", set to a DWORD value.
It is disabled by default, and only has an effect on the GL renderer.
2024-11-19 21:11:54 +01:00
Elizabeth Figura
3251015e68 wined3d: Account for HLSL FFP shaders in find_ps_compile_args().
In most cases, it is possible to construct a D3D shader which behaves
identically to a given FFP pipeline.

There are two exceptions, related to fog and texture transforms, where the FFP
pipeline has special behaviour that cannot be emulated with shaders, and we
handle those here by checking whether our shader is actually an FFP replacement
shader.
2024-11-19 21:11:54 +01:00
Elizabeth Figura
04450b6e07 wined3d: Create stub FFP vertex shaders. 2024-11-19 21:11:54 +01:00
Elizabeth Figura
484c6f9af1 wined3d: Create stub FFP pixel shaders.
We only compute ffp_frag_settings and stash that in the shader byte_code.
The HLSL shader will be compiled to sm2 bytecode on the CS side, and then parsed
and interpreted by the shader backend (and all other code) as if it were a real
shader.

In theory, we could take the extra step of retrieving the settings from this
shader in the GLSL backend, instead of from the current state.
This however requires changing a number of places which currently check
"state->shader[WINED3D_SHADER_TYPE_PIXEL]" to also check "is_ffp_ps", and it
also means we need to handle some more states (shade mode, fog, etc.) as part of
ffp_frag_settings. Both of these will go away as soon as the GLSL backend can
simply consume the generated HLSL shader.
2024-11-19 21:11:54 +01:00
Elizabeth Figura
2eb7397e23 wined3d: Move shader parsing to shader_set_function().
The idea is that we will have wined3d_shader objects that represent shaders
not yet in d3d form (specifically, in HLSL form or containing only an FFP
settings struct.) Hence we need to make it possible to delay d3d shader parsing,
but still keep the rest of shader_init().
2024-11-19 21:11:54 +01:00
Elizabeth Figura
d2bed27bfe wined3d: Move shader_trace(). 2024-11-19 21:11:54 +01:00
Fabian Maurer
c2b9d2102e ieframe: Add IERefreshElevationPolicy stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=57343
2024-11-19 15:49:21 +01:00
Alexandre Julliard
94ab547404 user32: Don't use server data types in clipboard.c. 2024-11-19 15:49:21 +01:00
Alexandre Julliard
95bab1b106 user32: Move support for posting a DDE message to win32u. 2024-11-19 15:49:21 +01:00
Alexandre Julliard
c66b27557d user32: Move PostQuitMessage() implementation to win32u. 2024-11-19 14:48:33 +01:00
Alexandre Julliard
babb7fbc62 win32u: Implement NtUserBuildNameList(). 2024-11-19 13:24:02 +01:00
Alexandre Julliard
fcb7160816 win32u: Implement NtUserBuildPropList(). 2024-11-19 12:59:31 +01:00
Anton Baskanov
e72bd3a7a0 dplayx: Send ADDPLAYERTOGROUP in AddPlayerToGroup(). 2024-11-19 10:36:10 +01:00
Anton Baskanov
28581f00d6 dplayx: Queue DPSYS_ADDPLAYERTOGROUP in DP_AddPlayerToGroup(). 2024-11-19 10:36:10 +01:00
Anton Baskanov
f37853f532 dplayx/tests: Test client side of AddPlayerToGroup() separately. 2024-11-19 10:36:10 +01:00
Anton Baskanov
7ec576a7bd dplayx: Add group players from SUPERENUMPLAYERSREPLY to the group. 2024-11-19 10:36:10 +01:00
Anton Baskanov
91e5057906 dplayx: Factor out a function for adding player to a group. 2024-11-19 10:36:10 +01:00
Anton Baskanov
434b5a148c dplayx: Always set the data size in GetGroupData(). 2024-11-19 10:36:10 +01:00
Anton Baskanov
924a8e0d69 dplayx: Respect enumeration flags in EnumGroups(). 2024-11-19 10:36:10 +01:00
Fabian Maurer
30c7900c40 msi: Make MsiGetSummaryInformationW open database as direct instead of transacted.
This fixes MsiSummaryInfoPersist not saving data to disk

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55859
2024-11-19 10:35:30 +01:00
Fabian Maurer
2b78570297 msi/tests: Add more tests for MsiSummaryInfoPersist. 2024-11-19 10:35:27 +01:00
Paul Gofman
eea781a03b opengl: Avoid infinite recursion in bezier_approximate() in case of degraded curve. 2024-11-19 10:34:01 +01:00
Gerald Pfeifer
245dfb801e dpwsockx: Don't use true as a variable name.
Revision 78bdd23406 (Oct 13 2023) introduced "true" as a variable name
in DPWSCB_EnumSessions.

This is a reserved identifier in C++ and recent versions of C and with
GCC 15 going to move to -std=gnu23 (so essentically C23) we'd break.
2024-11-19 10:33:37 +01:00
Vitor Ramos
6301854fd7 include: Use enum for PATHCCH_ options.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-11-19 10:33:09 +01:00
Vitor Ramos
e0773560ef include: Add cpp header guard to the pathcch.h.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-11-19 10:33:07 +01:00
Gabriel Ivăncescu
67c1c3c255 mshtml: Use actual referenced prop flags for window script props.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2024-11-18 22:42:00 +01:00
Gabriel Ivăncescu
c4630993fb jscript: Make most builtin global objects configurable.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2024-11-18 22:42:00 +01:00
Gabriel Ivăncescu
10cf578898 jscript: Delete external props before redefining them.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2024-11-18 22:42:00 +01:00
Fabian Maurer
12925e9113 net: Correct error code for stopping non existing service.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55859
2024-11-18 21:39:32 +01:00
Fabian Maurer
bce1213281 net/tests: Add test for stopping non existing service. 2024-11-18 21:39:32 +01:00
Rémi Bernon
0cda918561 winex11: Request window state updates asynchronously. 2024-11-18 21:38:16 +01:00
Rémi Bernon
d8b5a3ae12 winex11: Update the window client config on window state changes. 2024-11-18 21:38:16 +01:00
Rémi Bernon
03738c3f22 winex11: Wait for pending ConfigureNotify before updating the client state. 2024-11-18 21:38:16 +01:00
Rémi Bernon
8bbc193178 winex11: Wait for pending _NET_WM_STATE before updating the client state. 2024-11-18 21:38:16 +01:00
Rémi Bernon
03457ece24 winex11: Don't expect WM_STATE events on override-redirect windows. 2024-11-18 21:38:16 +01:00
Rémi Bernon
be6902d072 winex11: Listen to PropertyNotify events on the virtual desktop window.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=57423
2024-11-18 21:38:16 +01:00
Rémi Bernon
6ac127ebc6 dinput: Only call SetCursorPos if ClipCursor fails.
Fixes mouse sometimes jumping around in Mechwarrior Online on
KDE/Wayland.
2024-11-18 21:36:52 +01:00