[0.4.10][COMCTL32] Fix regression CORE-16280
authorJoachim Henze <Joachim.Henze@reactos.org>
Tue, 17 Nov 2020 14:30:34 +0000 (15:30 +0100)
committerJoachim Henze <Joachim.Henze@reactos.org>
Tue, 17 Nov 2020 14:30:34 +0000 (15:30 +0100)
The visible symptom for us was, that the Apply button in our
desk.cpl was always visible, even in case no user input was done in the dlg yet.

A very old regression. It regressed somewhere around
SVN r42990 – Good (2009-09-03)
SVN r44397 – Fail (2009-12-04)

The fix is a backport of 0.4.13-dev-908-g
344d5599351c5abae618dae9693a655cdc34dab0

Unchange the property sheet page after WM_INITDIALOG (#1842)
In my testing on Win2k3, EN_CHANGE is generated in OnInitDialog, that is correct.
The target is property sheet.
The property sheet does unchange the page after WM_INITDIALOG generation.

dll/win32/comctl32/propsheet.c

index f994f83..4dd355a 100644 (file)
@@ -1333,6 +1333,9 @@ static UINT GetTemplateSize(const DLGTEMPLATE* pTemplate)
   return ret;
 }
 
+#ifdef __REACTOS__
+static void PROPSHEET_UnChanged(HWND hwndDlg, HWND hwndCleanPage);
+#endif
 /******************************************************************************
  *            PROPSHEET_CreatePage
  *
@@ -1476,6 +1479,9 @@ static BOOL PROPSHEET_CreatePage(HWND hwndParent,
   if (!(psInfo->ppshheader.dwFlags & INTRNL_ANY_WIZARD))
       EnableThemeDialogTexture (hwndPage, ETDT_ENABLETAB);
 
+#ifdef __REACTOS__
+  PROPSHEET_UnChanged(hwndParent, hwndPage);
+#endif
   return TRUE;
 }