diff --git a/lcl/interfaces/gtk2/gtk2winapi.inc b/lcl/interfaces/gtk2/gtk2winapi.inc index 2f706b634a..11efa0c419 100644 --- a/lcl/interfaces/gtk2/gtk2winapi.inc +++ b/lcl/interfaces/gtk2/gtk2winapi.inc @@ -6676,7 +6676,7 @@ var i: integer; PointArray: PGDKPoint; Tmp, RGN : hRGN; - ClipRect : TRect; + R, ClipRect : TRect; DCOrigin: TPoint; OldNumPts: integer; begin @@ -6733,13 +6733,15 @@ begin DevCtx.TransfNormalize(ClipRect.Left, ClipRect.Right); DevCtx.TransfNormalize(ClipRect.Top, ClipRect.Bottom); end; + // draw polygon area - DevCtx.FillRect(ClipRect, HBrush({%H-}PtrUInt(DevCtx.GetBrush)), False); + R := ClipRect; + LPtoDP(DC, R, 2); + DevCtx.FillRect(R, HBrush({%H-}PtrUInt(DevCtx.GetBrush)), False); // restore old clipping SelectClipRGN(DC, Tmp); DeleteObject(Tmp); - end - else + end else begin DevCtx.SelectBrushProps; gdk_draw_polygon(DevCtx.Drawable, DevCtx.GC, 1, PointArray, NumPts);