Commit graph

16314 commits

Author SHA1 Message Date
Zebediah Figura d8d8774568 include: Add D3D10CalcSubresource(). 2023-03-23 16:44:34 +01:00
Zebediah Figura fae48444af include: Use hexadecimal constants for XAudio flags. 2023-03-23 16:44:34 +01:00
Alex Henrie 44e1e9438c include: Allow multiple definitions on GCC with DECLSPEC_SELECTANY.
Needed to compile Tera Term.

As far as I can tell, GCC has always supported __attribute__((weak)).
2023-03-22 20:03:52 +01:00
Biswapriyo Nath 8204a0b864 include: Add missing TS_STATUS constants in textstor.idl.
Signed-off-by: Biswapriyo Nath <nathbappai@gmail.com>
2023-03-22 20:03:52 +01:00
Zebediah Figura a18bc5f9d7 wined3d: Pass parent ops to wined3d_resource_set_parent().
So that we can "detach" a wined3d surface from ddraw after creating it, in turn
so that we can recreate the backing wined3d texture for a surface, namely for
SetSurfaceDesc().
2023-03-22 20:03:51 +01:00
Zebediah Figura 4f8635bd78 wined3d: Pass parent ops to wined3d_texture_set_sub_resource_parent().
So that we can allow setting the sub resource and parent ops not from the
texture_sub_resource_created() callback, and also that we can "detach" a wined3d
surface from ddraw after creating it, so that we can recreate the backing
wined3d texture, viz. in SetSurfaceDesc().
2023-03-22 20:03:51 +01:00
Alexandre Julliard 687068e7d6 include: Declare some missing ntdll functions, and fix the sorting. 2023-03-22 20:03:51 +01:00
Alex Henrie 1512112841 include: Annotate ldap_(*_attribute|get_dn)* with __WINE_(DEALLOC|MALLOC). 2023-03-22 20:03:51 +01:00
Biswapriyo Nath 26eb50e494 include: Add IDirectManipulationInteractionEventHandler declaration in directmanipulation.idl.
Signed-off-by: Biswapriyo Nath <nathbappai@gmail.com>
2023-03-21 15:33:45 +01:00
Alex Henrie fd99bd4e24 include: Annotate LDAP allocation functions with __WINE_(DEALLOC|MALLOC). 2023-03-20 21:27:44 +01:00
Rémi Bernon 7ecb144656 win32u: Stub NtUserBuildHimcList syscall. 2023-03-20 17:10:45 +01:00
Mohamad Al-Jaf 0f01852333 include: Add IHolographicSpaceStatics3 interface definition. 2023-03-17 11:55:46 +01:00
Mohamad Al-Jaf 83e8ff0b15 include: Add IHolographicSpaceStatics2 interface definition. 2023-03-17 11:55:38 +01:00
Mohamad Al-Jaf e98c7a0fcd include: Add windows.graphics.holographic.idl file. 2023-03-17 11:55:38 +01:00
Mohamad Al-Jaf 923a1b4e5c include: Add Windows.Foundation.Deferral definition.
Needed by windows.graphics.holographic.idl.
2023-03-17 11:55:36 +01:00
Mohamad Al-Jaf 3d3076b2ab include: Add windows.graphics.directx.direct3d11.idl file.
Needed by windows.graphics.holographic.idl.
2023-03-17 11:55:34 +01:00
Rémi Bernon cefe42dfeb include: Add some dinput.h action semantics definitions. 2023-03-16 17:36:58 +01:00
Alexandros Frantzis 50c1b1974f winewayland.drv: Perform basic per-process Wayland initialization.
Try to connect to the Wayland compositor, and fail driver initialization
if we are unable to do so.

Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
2023-03-16 12:52:37 +01:00
Alexandre Julliard 5a1d431b4b ntdll: Implement NtWow64IsProcessorFeaturePresent(). 2023-03-15 11:48:57 +01:00
Alexandre Julliard c44e58c88b ntdll: Implement the SystemProcessorFeaturesInformation query. 2023-03-14 17:38:51 +01:00
Alexandre Julliard 37628a7732 wow64: Implement Wow64RaiseException(). 2023-03-09 17:31:26 +01:00
Alexandre Julliard 3e3af62be9 wow64: Create the WOW64INFO structure. 2023-03-09 17:31:26 +01:00
Zebediah Figura c2018ff466 win32u: Allow separately storing the internal pixel format set by WGL_WINE_pixel_format_passthrough. 2023-03-09 15:02:45 +01:00
Zebediah Figura 463a11379b win32u: Introduce a win32u_get_window_pixel_format() helper. 2023-03-09 15:02:42 +01:00
Zebediah Figura b545ca0f9b win32u: Make NtUserSetWindowPixelFormat() into a proper export.
This is simpler in general, given that this function is no longer used
from user-space. In this particular case, the secondary purpose is to
allow easily adding arguments to the function.
2023-03-09 15:02:38 +01:00
Brendan Shanks d7d94ed0df kernelbase: Implement DiscardVirtualMemory(). 2023-03-08 17:49:00 +01:00
Alexandre Julliard fa47ea7400 server: Determine the native thread context flags on the client side. 2023-03-08 12:43:20 +01:00
Mohamad Al-Jaf 79a7c7ca40 include: Add windows.perception.spatial.surfaces.idl file. 2023-03-07 18:36:26 +01:00
Mohamad Al-Jaf 16b3b79105 include: Add windows.graphics.directx.idl file.
Needed by windows.perception.spatial.surfaces.idl.
2023-03-07 18:36:25 +01:00
Mohamad Al-Jaf 9065c6637e include: Add windows.perception.spatial.idl file.
Needed by windows.perception.spatial.surfaces.idl.
2023-03-07 18:36:23 +01:00
Alexandre Julliard 63a781de1d wow64: Declare exported functions in winternl.h. 2023-03-07 17:25:08 +01:00
Alexandre Julliard c244fe3d27 wow64: Keep track of APC stack frames, similarly to user callback frames.
And use the appropriate frame to restore the context in NtContinue.
2023-03-07 17:25:08 +01:00
Georg Lehmann 1eed39fffe winevulkan: Update to VK spec version 1.3.242. 2023-03-06 11:10:34 +01:00
Brendan Shanks ac031bff9e kernel32: Implement GetFirmwareType(). 2023-03-06 11:09:03 +01:00
Mohamad Al-Jaf c78cd3f554 include: Add more Windows.Foundation.Numerics structs. 2023-03-03 11:16:22 +01:00
Henry Goffin 0e85ac17a4 win32u: Invalidate all cached keys after input.
This patch addresses an issue in Second Life and potentially other
multi-threaded applications which process WM_KEYDOWN in one thread
and then verify that the key is "still down" with GetAsyncKeyState
from another thread. Wine uses a per-thread key cache, resulting
in inconsistent views of key status. Caches are now invalidated
when an input event is injected by the driver or via SendInput.
2023-03-02 10:20:01 +01:00
Alex Henrie b9627b996f ntoskrnl: Add ExGetPreviousMode and test.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54378
2023-03-01 21:39:30 +01:00
Alexandre Julliard d5468b9cac ntdll: Implement RtlAddProcessTrustLabelAce(). 2023-03-01 21:39:30 +01:00
Rémi Bernon ad5cb8305f winex11: Assume that Xkb extension is available. 2023-02-28 20:55:45 +01:00
Alexandre Julliard aa3e772abf ntdll: Mark the Wow64 TLS slots as reserved. 2023-02-24 22:23:12 +01:00
Alistair Leslie-Hughes 7582ebcd1a include: Add DBCOLUMNFLAGS_ enums values. 2023-02-24 22:23:12 +01:00
Rémi Bernon 653321a2b4 include: Allow overriding LANGID in module VERSIONINFO. 2023-02-24 10:28:37 +01:00
Mohamad Al-Jaf 80dc6df8fd include: Add windows.security.credentials.idl file. 2023-02-23 17:30:17 +01:00
Hans Leidekker 210596600c include: Add missing smart card defines. 2023-02-22 21:14:20 +01:00
Paul Gofman a97fd9f29e win32u: Expose and use ProcessEvents from drivers instead of MsgWaitForMultipleObjectsEx. 2023-02-22 18:25:29 +01:00
Alex Henrie 8f2df17e84 include: Annotate CommandLineToArgvW with __WINE_DEALLOC. 2023-02-22 18:06:08 +01:00
Mohamad Al-Jaf 079ff28fce include: Fix BluetoothRegisterForAuthentication prototype.
The first parameter is defined as const BLUETOOTH_DEVICE_INFO in MSDN and bluetoothapis.h.
2023-02-22 18:05:55 +01:00
Connor McAdams 21e6fd5076 uiautomationcore: Implement UiaLookupId for AutomationIdentifierType_ControlType GUIDs.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-02-22 18:05:40 +01:00
Alexandros Frantzis aa72d7d42d gdi32: Track ticks since draw start per window_surface.
Track ticks since draw start per window_surface, instead of per DC as is
currently the case. This change helps reduce visual glitches caused by
badly timed flushes when drawing to the same window_surface from
multiple DCs (e.g., for child windows).

This approach is a better fit for the current heuristic for forcing
flushing, which consults the shared window_surface bounds to decide
whether this is the start of a draw in order to reset the (currently per
DC) draw start time.

The problem in the current implementation occurs when a drawing to a DC
begins with an already damaged window_surface, e.g., due to draws from
other DCs targeting that window_surface. In such a case, the DC draw
start time is not reset and refers to the start of some previous draw
sequence using this DC, thus increasing the chances that the 50ms time
flush limit will be eventually exceeded in the middle of the current
draw sequence. In other words, the state of the (shared) window_surface
damage is not a reliable indicator of the beginning (or not) of a draw
to a DC.

An example, assuming DC1 and DC2 target the same window_surface:

DC1.start_ticks = 0
DC2.start_ticks = 0
FLUSH_PERIOD = 50

0 flush
1 draw to DC1 -> DC1.start_ticks = 1
... [no flush] ...
2 draw to DC2 -> DC2.start_ticks remains 0 since surface is damaged
...
50 flush
51 draw to DC1 -> DC1.start_ticks = 51
... [no flush] ...
52 draw to DC2 -> DC2.start_ticks remains 0 since surface is damaged,
                  current - DC2.start_ticks > FLUSH_PERIOD so we are
                  forced to flush in the middle of the drawing
                  sequence => potential glitch

Tracking the draw start per window_surface ameliorates the problem
because the beginning of a draw on a DC targeting an undamaged
window_surface resets the start time for all DCs targeting that
window_surface:

...
50 flush
51 draw to DC1 -> surface.draw_ticks = 51
... [no flush] ...
52 draw to DC2 -> surface.draw_ticks remains 51 since surface is damaged,
                  but current - surface.draw_ticks < FLUSH_PERIOD, so we
                  do not flush

Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
2023-02-21 11:22:45 +01:00
Mohamad Al-Jaf 5d2051eb64 include: Add BluetoothRegisterForAuthenticationEx prototype. 2023-02-21 11:22:34 +01:00