From d3bbbfee65ee8b71165023fed7b2c988b4725981 Mon Sep 17 00:00:00 2001 From: mattias Date: Sat, 17 Apr 2010 20:08:46 +0000 Subject: [PATCH] LCL: SetBidiMode: call AdjustSize, bug #14951 git-svn-id: trunk@24687 - --- lcl/include/control.inc | 7 ++++++- lcl/include/wincontrol.inc | 3 ++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/lcl/include/control.inc b/lcl/include/control.inc index 53dab7a06a..526ad5eaf1 100644 --- a/lcl/include/control.inc +++ b/lcl/include/control.inc @@ -5084,7 +5084,12 @@ begin if FBiDiMode=AValue then exit; FBiDiMode:=AValue; FParentBiDiMode := False; - Perform(CM_BIDIMODECHANGED, 0, 0); + DisableAutoSizing; + try + Perform(CM_BIDIMODECHANGED, 0, 0); // see TWinControl.CMBiDiModeChanged + finally + EnableAutoSizing; + end; end; {------------------------------------------------------------------------------ diff --git a/lcl/include/wincontrol.inc b/lcl/include/wincontrol.inc index 00fae3c27a..131b2b19d9 100644 --- a/lcl/include/wincontrol.inc +++ b/lcl/include/wincontrol.inc @@ -6478,11 +6478,12 @@ end; procedure TWinControl.CMBiDiModeChanged(var Message: TLMessage); begin - inherited; + inherited CMBiDiModeChanged(Message); NotifyControls(CM_PARENTBIDIMODECHANGED); if HandleAllocated and (Message.wParam = 0) then TWSWinControlClass(WidgetSetClass).SetBiDiMode(Self, UseRightToLeftAlignment, UseRightToLeftReading, UseRightToLeftScrollBar); + AdjustSize; end; procedure TWinControl.CMBorderChanged(var Message: TLMessage);