summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vcl/inc/skia/gdiimpl.hxx5
-rw-r--r--vcl/skia/gdiimpl.cxx4
2 files changed, 6 insertions, 3 deletions
diff --git a/vcl/inc/skia/gdiimpl.hxx b/vcl/inc/skia/gdiimpl.hxx
index aeaef186ca44..cc4cda4b2ebd 100644
--- a/vcl/inc/skia/gdiimpl.hxx
+++ b/vcl/inc/skia/gdiimpl.hxx
@@ -327,7 +327,10 @@ protected:
paint.setColor(transparency == 0
? SkiaHelper::toSkColor(mFillColor)
: SkiaHelper::toSkColorWithTransparency(mFillColor, transparency));
- paint.setStyle(SkPaint::kFill_Style);
+ if (mLineColor == mFillColor)
+ paint.setStyle(SkPaint::kStrokeAndFill_Style);
+ else
+ paint.setStyle(SkPaint::kFill_Style);
return paint;
}
diff --git a/vcl/skia/gdiimpl.cxx b/vcl/skia/gdiimpl.cxx
index 6f326d6c5aa8..3d7697c4dcfa 100644
--- a/vcl/skia/gdiimpl.cxx
+++ b/vcl/skia/gdiimpl.cxx
@@ -853,7 +853,7 @@ void SkiaSalGraphicsImpl::privateDrawAlphaRect(tools::Long nX, tools::Long nY, t
paint.setStyle(SkPaint::kStroke_Style);
canvas->drawIRect(SkIRect::MakeXYWH(nX, nY, nWidth, nHeight), paint);
}
- if (mLineColor != SALCOLOR_NONE)
+ if (mLineColor != SALCOLOR_NONE && mLineColor != mFillColor) // otherwise handled by fill
{
SkPaint paint = makeLinePaint(fTransparency);
paint.setAntiAlias(!blockAA && mParent.getAntiAlias());
@@ -992,7 +992,7 @@ void SkiaSalGraphicsImpl::performDrawPolyPolygon(const basegfx::B2DPolyPolygon&
aPaint.setStyle(SkPaint::kStroke_Style);
getDrawCanvas()->drawPath(polygonPath, aPaint);
}
- if (mLineColor != SALCOLOR_NONE)
+ if (mLineColor != SALCOLOR_NONE && mLineColor != mFillColor) // otherwise handled by fill
{
SkPaint aPaint = makeLinePaint(fTransparency);
aPaint.setAntiAlias(useAA);