IDE: fix WM_SIZE loop when restoring maximized IDE and using AnchorDocking. Issue #28096

git-svn-id: trunk@51337 -
This commit is contained in:
ondrej 2016-01-19 13:22:44 +00:00
parent 02a422be28
commit c0b1fba604
2 changed files with 9 additions and 8 deletions

View File

@ -1576,6 +1576,7 @@ begin
MainIDEBar.SetupHints;
SetupIDEWindowsLayout;
RestoreIDEWindows;
MainIDEBar.InitPaletteAndCoolBar;
IDEWindowCreators.AddLayoutChangedHandler(@HandleLayoutChanged);
// make sure the main IDE bar is always shown
IDEWindowCreators.ShowForm(MainIDEBar,false);

View File

@ -58,7 +58,6 @@ type
function CalcNonClientHeight: Integer;
protected
procedure DoActive;
procedure DoShow; override;
procedure WndProc(var Message: TLMessage); override;
procedure Resizing(State: TWindowState); override;
public
@ -386,6 +385,7 @@ type
procedure DoSetMainIDEHeight(const AIDEIsMaximized: Boolean; ANewHeight: Integer = 0);
procedure DoSetViewComponentPalette(aVisible: Boolean);
procedure AllowCompilation(aAllow: Boolean);
procedure InitPaletteAndCoolBar;
end;
var
@ -447,13 +447,6 @@ begin
end;
end;
procedure TMainIDEBar.DoShow;
begin
inherited DoShow;
RefreshCoolbar;
ComponentPageControl.OnChange(Self);//refresh component palette with button reposition
end;
function TMainIDEBar.CalcNonClientHeight: Integer;
{$IF DEFINED(LCLWin32) OR DEFINED(LCLGtk2) OR DEFINED(LCLQt)}
var
@ -676,6 +669,13 @@ begin
SetupHints;
end;
procedure TMainIDEBar.InitPaletteAndCoolBar;
begin
RefreshCoolbar;
ComponentPageControl.OnChange(Self);//refresh component palette with button reposition
SetMainIDEHeight;
end;
procedure TMainIDEBar.RefreshCoolbar;
var
I: Integer;