diff --git a/debian/changelog b/debian/changelog index f712edf8..1f75e124 100644 --- a/debian/changelog +++ b/debian/changelog @@ -17,6 +17,7 @@ wine-staging (1.7.38) UNRELEASED; urgency=low * Added patch for basic implementation of job objects. * Added patch to display animations for SHFileOperation progress dialog. * Added patch to enforce that surfaces are flushed after ReleaseDC. + * Added patch to implement IProgressDialog::SetAnimation. * Removed patch to properly call DriverUnload when unloading device drivers (accepted upstream). * Removed patch to allow Accept-Encoding for HTTP/1.0 in wininet (accepted upstream). * Removed patch to declare pDirectInputCreateEx in a MSVC compatible way (accepted upstream). diff --git a/patches/browseui-Progress_Dialog/0001-browseui-Implement-IProgressDialog-SetAnimation.patch b/patches/browseui-Progress_Dialog/0001-browseui-Implement-IProgressDialog-SetAnimation.patch new file mode 100644 index 00000000..4a166205 --- /dev/null +++ b/patches/browseui-Progress_Dialog/0001-browseui-Implement-IProgressDialog-SetAnimation.patch @@ -0,0 +1,50 @@ +From c56b09b0d41bead3b82c1473cace54ff6e175286 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Michael=20M=C3=BCller?= +Date: Fri, 27 Feb 2015 17:46:11 +0100 +Subject: browseui: Implement IProgressDialog::SetAnimation. + +--- + dlls/browseui/progressdlg.c | 13 ++++++++++++- + 1 file changed, 12 insertions(+), 1 deletion(-) + +diff --git a/dlls/browseui/progressdlg.c b/dlls/browseui/progressdlg.c +index 598197b..6691ba5 100644 +--- a/dlls/browseui/progressdlg.c ++++ b/dlls/browseui/progressdlg.c +@@ -175,6 +175,7 @@ static INT_PTR CALLBACK dialog_proc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM l + case WM_INITDIALOG: + { + struct create_params *params = (struct create_params *)lParam; ++ LONG_PTR style; + + /* Note: until we set the hEvent, the object is protected by + * the critical section held by StartProgress */ +@@ -191,6 +192,10 @@ static INT_PTR CALLBACK dialog_proc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM l + if (This->dwFlags & PROGDLG_NOMINIMIZE) + SetWindowLongW(hwnd, GWL_STYLE, GetWindowLongW(hwnd, GWL_STYLE) & (~WS_MINIMIZEBOX)); + ++ style = GetWindowLongPtrW(GetDlgItem(hwnd, IDC_ANIMATION), GWL_STYLE); ++ style |= ACS_AUTOPLAY | ACS_TRANSPARENT; ++ SetWindowLongPtrW(GetDlgItem(hwnd, IDC_ANIMATION), GWL_STYLE, style); ++ + update_dialog(This, 0xffffffff); + This->dwUpdate = 0; + This->isCancelled = FALSE; +@@ -396,7 +401,13 @@ static HRESULT WINAPI ProgressDialog_SetTitle(IProgressDialog *iface, LPCWSTR pw + + static HRESULT WINAPI ProgressDialog_SetAnimation(IProgressDialog *iface, HINSTANCE hInstance, UINT uiResourceId) + { +- FIXME("(%p, %p, %d) - stub\n", iface, hInstance, uiResourceId); ++ ProgressDialog *This = impl_from_IProgressDialog(iface); ++ ++ TRACE("(%p, %p, %d)\n", iface, hInstance, uiResourceId); ++ ++ if (!SendDlgItemMessageW(This->hwnd, IDC_ANIMATION, ACM_OPENW, (WPARAM)hInstance, uiResourceId)) ++ WARN("Failed to load animation\n"); ++ + return S_OK; + } + +-- +2.3.0 + diff --git a/patches/patchinstall.sh b/patches/patchinstall.sh index a85f6010..2f1b1e04 100755 --- a/patches/patchinstall.sh +++ b/patches/patchinstall.sh @@ -66,6 +66,7 @@ patch_enable_all () enable_Miscellaneous="$1" enable_Pipelight="$1" enable_Staging="$1" + enable_browseui_Progress_Dialog="$1" enable_comctl32_LoadIconMetric="$1" enable_configure_Absolute_RPATH="$1" enable_d3d9_Surface_Refcount="$1" @@ -231,6 +232,9 @@ patch_enable () Staging) enable_Staging="$2" ;; + browseui-Progress_Dialog) + enable_browseui_Progress_Dialog="$2" + ;; comctl32-LoadIconMetric) enable_comctl32_LoadIconMetric="$2" ;; @@ -1199,6 +1203,18 @@ if test "$enable_Staging" -eq 1; then ) >> "$patchlist" fi +# Patchset browseui-Progress_Dialog +# | +# | Modified files: +# | * dlls/browseui/progressdlg.c +# | +if test "$enable_browseui_Progress_Dialog" -eq 1; then + patch_apply browseui-Progress_Dialog/0001-browseui-Implement-IProgressDialog-SetAnimation.patch + ( + echo '+ { "Michael Müller", "browseui: Implement IProgressDialog::SetAnimation.", 1 },'; + ) >> "$patchlist" +fi + # Patchset comctl32-LoadIconMetric # | # | This patchset fixes the following Wine bugs: @@ -1550,6 +1566,18 @@ if test "$enable_dxgi_GetDesc" -eq 1; then ) >> "$patchlist" fi +# Patchset makedep-PARENTSPEC +# | +# | Modified files: +# | * tools/makedep.c +# | +if test "$enable_makedep_PARENTSPEC" -eq 1; then + patch_apply makedep-PARENTSPEC/0001-makedep-Add-support-for-PARENTSPEC-Makefile-variable.patch + ( + echo '+ { "Sebastian Lackner", "makedep: Add support for PARENTSPEC Makefile variable.", 1 },'; + ) >> "$patchlist" +fi + # Patchset ntdll-DllRedirects # | # | Modified files: @@ -1570,18 +1598,6 @@ if test "$enable_ntdll_DllRedirects" -eq 1; then ) >> "$patchlist" fi -# Patchset makedep-PARENTSPEC -# | -# | Modified files: -# | * tools/makedep.c -# | -if test "$enable_makedep_PARENTSPEC" -eq 1; then - patch_apply makedep-PARENTSPEC/0001-makedep-Add-support-for-PARENTSPEC-Makefile-variable.patch - ( - echo '+ { "Sebastian Lackner", "makedep: Add support for PARENTSPEC Makefile variable.", 1 },'; - ) >> "$patchlist" -fi - # Patchset wined3d-CSMT_Helper # | # | Modified files: @@ -3269,21 +3285,6 @@ if test "$enable_server_CreateProcess_ACLs" -eq 1; then ) >> "$patchlist" fi -# Patchset server-OpenProcess -# | -# | This patchset fixes the following Wine bugs: -# | * [#37087] Return an error when trying to open a terminated process -# | -# | Modified files: -# | * server/process.c, server/process.h -# | -if test "$enable_server_OpenProcess" -eq 1; then - patch_apply server-OpenProcess/0001-server-Return-error-when-opening-a-terminating-proce.patch - ( - echo '+ { "Michael Müller", "server: Return error when opening a terminating process.", 3 },'; - ) >> "$patchlist" -fi - # Patchset server-Misc_ACL # | # | This patchset fixes the following Wine bugs: @@ -3301,6 +3302,21 @@ if test "$enable_server_Misc_ACL" -eq 1; then ) >> "$patchlist" fi +# Patchset server-OpenProcess +# | +# | This patchset fixes the following Wine bugs: +# | * [#37087] Return an error when trying to open a terminated process +# | +# | Modified files: +# | * server/process.c, server/process.h +# | +if test "$enable_server_OpenProcess" -eq 1; then + patch_apply server-OpenProcess/0001-server-Return-error-when-opening-a-terminating-proce.patch + ( + echo '+ { "Michael Müller", "server: Return error when opening a terminating process.", 3 },'; + ) >> "$patchlist" +fi + # Patchset server-JobObjects # | # | Modified files: