diff --git a/components/gtk/gtkglarea/gtkglarea.pp b/components/gtk/gtkglarea/gtkglarea.pp index f26ea67b40..2c8bf7ed41 100644 --- a/components/gtk/gtkglarea/gtkglarea.pp +++ b/components/gtk/gtkglarea/gtkglarea.pp @@ -34,7 +34,6 @@ type FCurrentFrameTime: integer; // in msec FLastFrameTime: integer; // in msec FFrameDiffTime: integer; // in msec - FPaintOnIdle: boolean; protected procedure WMPaint(var Message: TLMPaint); message LM_PAINT; function GetWidget: PGtkGLArea; @@ -138,7 +137,9 @@ end; procedure TCustomGTKGLAreaControl.DoOnResize; begin - if HandleAllocated and (gint(True) = gtk_gl_area_make_current(Widget)) then + if (not (csDesigning in ComponentState)) + and Enabled and Visible and HandleAllocated + and (gint(True) = gtk_gl_area_make_current(Widget)) then glViewport (0, 0, Width, Height); inherited DoOnResize; end; diff --git a/ide/buildlazdialog.pas b/ide/buildlazdialog.pas index 904ef1bd9d..d777ac3fda 100644 --- a/ide/buildlazdialog.pas +++ b/ide/buildlazdialog.pas @@ -281,6 +281,7 @@ begin Result:=mrCancel; Tool:=TExternalToolOptions.Create; try + // setup external tool Tool.Filename:=Options.MakeFilename; Tool.EnvironmentOverrides.Values['LCL_PLATFORM']:= LCLPlatformNames[Options.LCLPlatform]; @@ -290,6 +291,8 @@ begin end; Tool.ScanOutputForFPCMessages:=true; Tool.ScanOutputForMakeMessages:=true; + + // clean up if Options.CleanAll and ([blfQuick,blfOnlyIDE]*Flags=[]) then begin // clean lazarus source directories @@ -299,6 +302,8 @@ begin Result:=ExternalTools.Run(Tool,Macros); if Result<>mrOk then exit; end; + + // build every item for i:=0 to Options.Count-1 do begin // build item CurItem:=Options.Items[i]; @@ -1052,7 +1057,7 @@ begin // IDE FItemIDE:=TBuildLazarusItem.Create('IDE',lisBuildIDE,'',mmBuild); FItemIDE.Commands[mmBuild]:='ide'; - FItemIDE.Commands[mmCleanBuild]:='cleanide'; + FItemIDE.Commands[mmCleanBuild]:='cleanide ide'; fItems.Add(FItemIDE); // Examples