winex11: Check layered client surfaces against the extended style. - #337
Open
nanomatters wants to merge 377 commits into
Open
winex11: Check layered client surfaces against the extended style.#337nanomatters wants to merge 377 commits into
nanomatters wants to merge 377 commits into
Conversation
CW-Bug-Id: #27010
We assume a span is never empty and therefore can never begin at the right bound. An empty span there can break the requirement in combine_regions_to_spans() that current span Y coordinates are never less than the loop Y coordinate. Empty spans also break the in_left and in_right calculation. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=59678 (cherry picked from commit 762e452)
(cherry picked from commit 6ae2442)
(cherry picked from commit 88e75ff)
(cherry picked from commit d287781)
(cherry picked from commit ce2e069)
(cherry picked from commit 1fda3a6)
(cherry picked from commit 5d255e8) CW-Bug-Id: #26633
…ackend.
HACK: winebus: Disable SDL2.30 new behavior for the SDL unix backend.
Starting with 517a3d20e8cf ("Support calling SteamAPI_InitEx() before
SDL_Init(SDL_INIT_GAMEPAD)") SDL no longer respects overriding
SteamVirtualGamepadInfo using hint system. It queries env varaible using
`SDL_getenv_unsafe()` so we have to completely unset it for
`winedevice.exe`.
SDL also has a hack that disables overriding if SDL_GetExeName() ==
"wine64-preloader" but that doesn't work on ARM64.
CW-Bug-Id: #23185
CW-Bug-Id: #27027
…void a Mutter Wayland bug. CW-Bug-Id: #26914
This reverts commit c6398fa. This is no longer needed because the game replaced EAC with BattlEye.
CW-Bug-Id: #27033
(cherry picked from commit fdcb466)
(cherry picked from commit 82284af)
Enumerating source nodes while at it. (cherry picked from commit addbf54)
Leaving the original branch untouched, so we can still use its nodes to further iterate over desired and optional connections. (cherry picked from commit d94e691)
…ce node. (cherry picked from commit b2047ce)
(cherry picked from commit c883ea1)
…surrounding branch. (cherry picked from commit 6e30b14) CW-Bug-Id: #26148
…s set. (cherry picked from commit 66db696)
(cherry picked from commit ec59500)
(cherry picked from commit 622651f) CW-Bug-Id: #26148
…r(). msctf: Return stub interface from ThreadMgr_GetFunctionProvider(). CW-Bug-Id: #26995
msctf: HACK: Stub ITfFnReconversion function. CW-Bug-Id: #26995
CW-Bug-Id: #23842
…d FOZ. CW-Bug-Id: #23842
CW-Bug-Id: #23842
…me(). (cherry picked from commit f27a9b6) (preemptive cherry-pick)
…f others present. Fixes a regression introduced by d48e8d0. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=59690 (cherry picked from commit 866547f) (preemptive cherry-pick)
Needed by Xalia to properly scroll some winforms controls.
(cherry picked from commit 1b79d86) CW-Bug-Id: #27003
(cherry picked from commit 7c61070) CW-Bug-Id: #27003
(cherry picked from commit 2b11697) CW-Bug-Id: #27003
If a requested controller slot is not currently open, rescan the controllers before reporting the slot as not connected. This matches native Windows behaviour, which can be inferred from [1]. The game RiME (and possibly others), upon receiving a device addition WM_DEVICECHANGE message, immediately queries all four slots with XInputGetState(), and gives up if none are unavailable. Without the rescan, the game's query can race with the xinput update thread and cause hotplugging failure. [1] https://learn.microsoft.com/en-us/windows/win32/xinput/getting-started-with-xinput#getting-controller-state (cherry picked from commit 2963e78) CW-Bug-Id: #27003
This reverts commit 6d993a3. CW-Bug-Id: #27003
CW-Bug-Id: #27140
CW-Bug-Id: #27140
CW-Bug-Id: #27140
CW-Bug-Id: #27140
Support WINE_CPU_TOPOLOGY=p[n], similar to Windows ProcessorCountLieForHybridCPU compatibility shim. Based on findings by Paulo Zanoni <paulo.r.zanoni@intel.com> in ValveSoftware/Proton#9880. CW-Bug-Id: #27255
CW-Bug-Id: #27218
…r_state. This allows dwPacketNumber to be incremented properly, and also allows others fields to retain their previous values in case of read failure. (cherry picked from commit c7720f8) CW-Bug-Id: #27003
…init. (cherry picked from commit b88cbc4) CW-Bug-Id: #27003
CW-Bug-Id: #25600 CW-Bug-Id: #27218
…ters(). CW-Bug-Id: #27259
…Directory_U(). CW-Bug-Id: #27263
…ath. CW-Bug-Id: #27263
(cherry picked from commit 51f87a1)
This reverts commit e1b3211. No longer needed with FEX's unixlib.
…ndling." This reverts commit 28c7d11. No longer needed with FEX's unixlib.
This reverts commit c1b93e2. No longer needed with FEX's unixlib.
CM_Get_Device_ID_ExW() reserved no room for the terminating null in its size check, which might overwrite outside the buffer bounds. (cherry picked from commit b39db98) CW-Bug-Id: #27303
CW-Bug-Id: #27301
…EG splitter is chosen instead for MPEGs." This reverts commit e870f31. The commit itself is not wrong but WMVideo Decoder DMO currently doesn't work with Proton transcoding. CW-Bug-Id: #27265
Fixes games that toggle DEP at runtime. Like Bioshock. (cherry picked from commit c57ec80)
WS_EX_LAYERED is stored in GWL_EXSTYLE but needs_offscreen_rendering() was testing it against GWL_STYLE. This causes layered client surface windows to miss the offscreen compositing path.
Plagman
force-pushed
the
bleeding-edge
branch
from
September 1, 2026 08:32
2544d9e to
d09a10f
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
WS_EX_LAYERED is stored in GWL_EXSTYLE but needs_offscreen_rendering() was testing it against GWL_STYLE. This causes layered client surface windows to miss the offscreen compositing path.
The implementation is different on upstream wine, so it is specific to proton wine.