Skip to content

Commit

Permalink
wine: update to bleeding edge, rebase staging patches
Browse files Browse the repository at this point in the history
  • Loading branch information
GloriousEggroll committed Mar 6, 2023
1 parent ae2caef commit 0704734
Show file tree
Hide file tree
Showing 4 changed files with 64 additions and 5 deletions.
10 changes: 6 additions & 4 deletions patches/protonprep-lutris-staging.sh
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,8 @@
-W wintrust-WTHelperGetProvCertFromChain \
-W user32-FlashWindowEx \
-W user32-MessageBox_WS_EX_TOPMOST \
-W wined3d-zero-inf-shaders
-W wined3d-zero-inf-shaders \
-W winex11-XEMBED

# NOTE: Some patches are applied manually because they -do- apply, just not cleanly, ie with patch fuzz.
# A detailed list of why the above patches are disabled is listed below:
Expand Down Expand Up @@ -161,6 +162,7 @@
# ** user32-FlashWindowEx - applied manually
# user32-MessageBox_WS_EX_TOPMOST - already applied
# wined3d-zero-inf-shaders - already applied
# ** winex11-XEMBED - applied manually

echo "WINE: -STAGING- applying staging Compiler_Warnings revert for steamclient compatibility"
# revert this, it breaks lsteamclient compilation
Expand Down Expand Up @@ -289,6 +291,9 @@
# user32-FlashWindowEx
patch -Np1 < ../patches/wine-hotfixes/staging/user32-FlashWindowEx/0001-user32-Improve-FlashWindowEx-message-and-return-valu.patch

# winex11-XEMBED
patch -Np1 < ../patches/wine-hotfixes/staging/winex11-XEMBED/0001-winex11-Enable-disable-windows-when-they-are-un-mapped.patch

# nvapi/nvcuda
# this was added in 7.1, so it's not in the 7.0 tree
patch -Np1 < ../patches/wine-hotfixes/staging/nvcuda/0016-nvcuda-Make-nvcuda-attempt-to-load-libcuda.so.1.patch
Expand All @@ -303,9 +308,6 @@
echo "WINE: -GAME FIXES- killer instinct vulkan fix"
patch -Np1 < ../patches/game-patches/killer-instinct-winevulkan_fix.patch

echo "WINE: -GAME FIXES- add cities XXL patches"
patch -Np1 < ../patches/game-patches/v5-0001-windowscodecs-Correctly-handle-8bpp-custom-conver.patch

echo "WINE: -GAME FIXES- add powerprof patches for FFVII Remake and SpecialK"
patch -Np1 < ../patches/game-patches/FFVII-and-SpecialK-powerprof.patch

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
From b628604e599f96eda85be0f8677419f8f591a7c6 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Fri, 22 Nov 2013 18:54:18 +0100
Subject: winex11: Enable/disable windows when they are (un)mapped by foreign
applications

---
dlls/winex11.drv/event.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)

diff --git a/dlls/winex11.drv/event.c b/dlls/winex11.drv/event.c
index f79f40c23..04a4c3c94 100644
--- a/dlls/winex11.drv/event.c
+++ b/dlls/winex11.drv/event.c
@@ -1137,6 +1138,7 @@ static BOOL X11DRV_Expose( HWND hwnd, XEvent *xev )
static BOOL X11DRV_MapNotify( HWND hwnd, XEvent *event )
{
struct x11drv_win_data *data;
+ BOOL is_embedded;

x11drv_input_add_window( hwnd, event->xany.window );

@@ -994,7 +995,12 @@ static BOOL X11DRV_MapNotify( HWND hwnd, XEvent *event )
if (hwndFocus && IsChild( hwnd, hwndFocus ))
set_input_focus( data );
}
+
+ is_embedded = data->embedded;
release_win_data( data );
+
+ if (is_embedded)
+ EnableWindow( hwnd, TRUE );
return TRUE;
}

@@ -1004,6 +1010,17 @@ static BOOL X11DRV_MapNotify( HWND hwnd, XEvent *event )
*/
static BOOL X11DRV_UnmapNotify( HWND hwnd, XEvent *event )
{
+ struct x11drv_win_data *data;
+ BOOL is_embedded;
+
+ if (!(data = get_win_data( hwnd ))) return FALSE;
+
+ is_embedded = data->embedded;
+ release_win_data( data );
+
+ if (is_embedded)
+ EnableWindow( hwnd, FALSE );
+
x11drv_input_remove_window( event->xany.window );
return TRUE;
}
--
2.22.0

1 change: 1 addition & 0 deletions patches/wine-hotfixes/staging/winex11-XEMBED/definition
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fixes: XEMBED support for embedding Wine windows inside Linux applications

0 comments on commit 0704734

Please sign in to comment.