Hi!
Two problems can be solved by removing this code.
Current code in 7.41 Beta (sSkinProvider.pas);
WM_NCPAINT : begin
if (SkinData.CtrlSkinState and ACS_LOCKED = ACS_LOCKED) or (SkinData.CtrlSkinState and ACS_MNUPDATING = ACS_MNUPDATING) or
(IsMenuVisible(Self) and (Form.Menu.WindowHandle = 0)) or (FormState and FS_ANIMCLOSING = FS_ANIMCLOSING) then Exit;
Change to this;
WM_NCPAINT : begin
// if (SkinData.CtrlSkinState and ACS_LOCKED = ACS_LOCKED) or (SkinData.CtrlSkinState and ACS_MNUPDATING = ACS_MNUPDATING) or
// (IsMenuVisible(Self) and (Form.Menu.WindowHandle = 0)) or (FormState and FS_ANIMCLOSING = FS_ANIMCLOSING) then Exit;
This will solve the problem with Windows 7 Aero boarders switching to classic when DrawNonClientArea is disabled. This happens when a MDI child window is maximized.
It will also solve the problem with the MainMenu not beeing redrawn correctly when maximizing and restoring MDI child windows. This problem occures when DrawNonClientArea is enabled.
Best regards,
/Pontus