Forráskód Böngészése

fix update for indirect paint

Johann 6 éve
szülő
commit
8e66b2cd81
1 módosított fájl, 5 hozzáadás és 2 törlés
  1. 5 2
      lazpaint/uimageview.pas

+ 5 - 2
lazpaint/uimageview.pas

@@ -565,8 +565,11 @@ begin
   if prevVSArea <> FLastPictureParameters.virtualScreenArea then
   if prevVSArea <> FLastPictureParameters.virtualScreenArea then
     PaintBlueAreaImplementation(ACanvasOfs, AWorkArea);
     PaintBlueAreaImplementation(ACanvasOfs, AWorkArea);
   {$ELSE}
   {$ELSE}
-  InvalidateRect(AWinControl.Handle, @updateArea, false);
-  AWinControl.Update;
+  if IntersectRect(updateArea, updateArea, AWorkArea) then
+  begin
+    InvalidateRect(AWinControl.Handle, @updateArea, false);
+    AWinControl.Update;
+  end;
   {$ENDIF}
   {$ENDIF}
 end;
 end;