diff --git a/lcl/interfaces/win32/win32callback.inc b/lcl/interfaces/win32/win32callback.inc index c45aa721a7..5be2f0b2b5 100644 --- a/lcl/interfaces/win32/win32callback.inc +++ b/lcl/interfaces/win32/win32callback.inc @@ -1525,18 +1525,9 @@ begin end; if not GetNeedParentPaint(WindowInfo, lWinControl) or (eraseBkgndCommand = ecDoubleBufferNoRemove) then begin - if ThemeServices.ThemesEnabled and WindowInfo^.isGroupBox and (lWinControl <> nil) then - begin - // Groupbox (which is a button) doesn't erase it's background properly; force repaint - lWinControl.EraseBackground(HDC(WParam)); - LMessage.Result := 1; - end - else - begin - LMessage.Msg := LM_ERASEBKGND; - LMessage.WParam := WParam; - LMessage.LParam := LParam; - end; + LMessage.Msg := LM_ERASEBKGND; + LMessage.WParam := WParam; + LMessage.LParam := LParam; end else begin if not ThemeServices.ThemesEnabled then diff --git a/lcl/interfaces/win32/win32wsstdctrls.pp b/lcl/interfaces/win32/win32wsstdctrls.pp index ebe6e33a53..2e7246dbfd 100644 --- a/lcl/interfaces/win32/win32wsstdctrls.pp +++ b/lcl/interfaces/win32/win32wsstdctrls.pp @@ -56,7 +56,7 @@ type TWin32WSCustomGroupBox = class(TWSCustomGroupBox) published - class function CreateHandle(const AWinControl: TWinControl; + class function CreateHandle(const AWinControl: TWinControl; const AParams: TCreateParams): HWND; override; class procedure AdaptBounds(const AWinControl: TWinControl; var Left, Top, Width, Height: integer; var SuppressMove: boolean); override;