LCL: Win32: Test IsEnableWindow before EnableWindow to prevent looping calls after Win 10 update 1803. Issue #33923. Patch by BrunoK

git-svn-id: trunk@58511 -
This commit is contained in:
michl 2018-07-13 22:07:12 +00:00
parent 5763246b85
commit e10300985b

View File

@ -1221,8 +1221,14 @@ end;
control.
------------------------------------------------------------------------------}
function TWin32WidgetSet.EnableWindow(HWnd: HWND; BEnable: Boolean): Boolean;
var
OldEnable: Boolean;
begin
Result := Boolean(Windows.EnableWindow(HWnd, BEnable));
OldEnable := IsWindowEnabled(HWnd);
if OldEnable <> BEnable then
Result := Boolean(Windows.EnableWindow(HWnd, BEnable))
else
Result := not OldEnable;
end;
{------------------------------------------------------------------------------