From 5b45f48de665166b00c55fd93ee15dcbc929916d Mon Sep 17 00:00:00 2001 From: maxim Date: Mon, 27 Mar 2017 22:25:39 +0000 Subject: [PATCH] Merged revision(s) 54484 #7950eabf8d from trunk: win32: fix EnableChildWindows. Issue #31590 ........ git-svn-id: branches/fixes_1_6@54491 - --- lcl/interfaces/win32/win32callback.inc | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/lcl/interfaces/win32/win32callback.inc b/lcl/interfaces/win32/win32callback.inc index edad96f558..afc421cd85 100644 --- a/lcl/interfaces/win32/win32callback.inc +++ b/lcl/interfaces/win32/win32callback.inc @@ -314,15 +314,12 @@ begin if WinControl.Controls[i] is TWinControl then begin ChildControl := TWinControl(WinControl.Controls[i]); - if Enable then - begin - if ChildControl.Enabled then - EnableWindow(ChildControl.Handle, true); - end - else - EnableWindow(ChildControl.Handle, false); - EnableChildWindows(ChildControl, Enable); // Recursive call + if not Enable or ChildControl.Enabled then + begin + EnableWindow(ChildControl.Handle, Enable and ChildControl.Enabled); + EnableChildWindows(ChildControl, Enable and ChildControl.Enabled); // Recursive call + end; end; end; end;