Commit graph

16296 commits

Author SHA1 Message Date
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
Alexandre Julliard
1b9db99417 ntdll: Return the correct IOSB information when creating a named pipe. 2023-02-21 11:17:17 +01:00
Alexandre Julliard
d74b084e45 ntdll: Pass the NtCreateNamedPipeFile disposition to the server. 2023-02-21 10:48:16 +01:00
Eric Pouech
417d2c0235 include: Ensure that SymRefreshModuleList() is properly defined.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-02-20 23:00:33 +01:00
Zhiyi Zhang
9833695855 include: Add dcomp.idl.
Note that overloaded C++ methods are renamed to avoid conflicts.
2023-02-20 23:00:33 +01:00
Zhiyi Zhang
c10568fc31 include: Add dcompanimation.idl. 2023-02-20 23:00:33 +01:00
Zhiyi Zhang
74e6345712 include: Add dcomptypes.idl. 2023-02-20 23:00:33 +01:00
Zhiyi Zhang
58427faace include: Add DirectComposition error codes. 2023-02-20 23:00:33 +01:00
Alexandre Julliard
f4c3801495 include: Move __builtin_ms_va_list definitions to vadefs.h. 2023-02-20 08:41:45 +01:00
Connor McAdams
88a1e94971 uiautomationcore: Register all UI Automation typelibs.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-02-20 08:37:21 +01:00
Eric Pouech
89d42d64d7 ntdll: Implement RtlAddressInSectionTable.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54432
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2023-02-17 18:59:29 +01:00
Paul Gofman
6bc1eea718 win32u: Remove monitor name from gdi driver monitor info. 2023-02-17 11:20:00 +01:00
Brendan Shanks
1362b0c04f include: Add __ASM_LOCAL_LABEL macro. 2023-02-16 10:38:02 +01:00
Alistair Leslie-Hughes
96e18688e9 include: Add missing SQL prototype. 2023-02-16 10:31:56 +01:00
Rémi Bernon
333ab2b4d6 include: Add Imm(Get|Set)HotKey declarations. 2023-02-15 21:48:33 +01:00
Rémi Bernon
f371309f6d include: Fix ImeToAsciiEx declaration. 2023-02-15 21:48:33 +01:00
Rémi Bernon
2fdfe16c2d include: Fix ImeInquire declaration. 2023-02-15 21:48:33 +01:00
Rémi Bernon
68ff9a942e include: Move ddk/imm.h to immdev.h. 2023-02-15 21:48:33 +01:00
Connor McAdams
23c10c928b uiautomationcore: Add UiaRaiseChangesEvent stub.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-02-14 20:57:09 +01:00