https://git.reactos.org/?p=reactos.git;a=commitdiff;h=026c575577beb59e20ae8…
commit 026c575577beb59e20ae8377ef01090b5e87a464
Author: Joachim Henze <Joachim.Henze(a)reactos.org>
AuthorDate: Sun Mar 3 01:26:59 2019 +0100
Commit: Joachim Henze <Joachim.Henze(a)reactos.org>
CommitDate: Sun Mar 3 01:26:59 2019 +0100
[MSI] In dialogs show titlebar buttons CORE-15301
Import the Wine fix
https://source.winehq.org/git/wine.git/?a=commit;h=84e6b331918d57f39e20a306…
Many thanks to the fixes author Fabian Maurer.
---
dll/win32/msi/dialog.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/dll/win32/msi/dialog.c b/dll/win32/msi/dialog.c
index 97fc89cbce..376fa491fd 100644
--- a/dll/win32/msi/dialog.c
+++ b/dll/win32/msi/dialog.c
@@ -3791,6 +3791,10 @@ static LRESULT WINAPI MSIDialog_WndProc( HWND hwnd, UINT msg,
case WM_COMMAND:
return msi_dialog_oncommand( dialog, wParam, (HWND)lParam );
+ case WM_CLOSE:
+ /* Simulate escape press */
+ return msi_dialog_oncommand(dialog, 2, NULL);
+
case WM_ACTIVATE:
if( LOWORD(wParam) == WA_INACTIVE )
dialog->hWndFocus = GetFocus();
@@ -3836,10 +3840,13 @@ static UINT dialog_run_message_loop( msi_dialog *dialog )
return SendMessageW( hMsiHiddenWindow, WM_MSI_DIALOG_CREATE, 0, (LPARAM) dialog
);
/* create the dialog window, don't show it yet */
- style = WS_OVERLAPPED;
+ style = WS_OVERLAPPED | WS_SYSMENU;
if( dialog->attributes & msidbDialogAttributesVisible )
style |= WS_VISIBLE;
+ if (dialog->parent == NULL && (dialog->attributes &
msidbDialogAttributesMinimize))
+ style |= WS_MINIMIZEBOX;
+
hwnd = CreateWindowW( szMsiDialogClass, dialog->name, style,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
NULL, NULL, NULL, dialog );