tdf#154957 Revert "use OutputDevice clipping if its just a set of rectangles"
it was an attempt at an optimization, but if it doesn't work just revert it.
The non-antialias case also doesn't work so the reverted commit
wasn't itself the problem but the existing path has some flaw I'm not
going to invest in figuring out.
This reverts commit ee0d5e7bb8
.
Change-Id: I8d4f126e3bfe135d39a085f28cea6708ae8f833f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150773
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
This commit is contained in:
@@ -845,17 +845,6 @@ void VclProcessor2D::RenderPolyPolygonGraphicPrimitive2D(
|
||||
}
|
||||
}
|
||||
|
||||
namespace
|
||||
{
|
||||
bool isRectangles(const basegfx::B2DPolyPolygon& rPolyPoly)
|
||||
{
|
||||
for (sal_uInt32 i = 0, nCount = rPolyPoly.count(); i < nCount; ++i)
|
||||
if (!basegfx::utils::isRectangle(rPolyPoly.getB2DPolygon(i)))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// mask group
|
||||
void VclProcessor2D::RenderMaskPrimitive2DPixel(const primitive2d::MaskPrimitive2D& rMaskCandidate)
|
||||
{
|
||||
@@ -870,7 +859,7 @@ void VclProcessor2D::RenderMaskPrimitive2DPixel(const primitive2d::MaskPrimitive
|
||||
aMask.transform(maCurrentTransformation);
|
||||
|
||||
// Unless smooth edges are needed, simply use clipping.
|
||||
if (isRectangles(aMask) || !getViewInformation2D().getUseAntiAliasing())
|
||||
if (basegfx::utils::isRectangle(aMask) || !getViewInformation2D().getUseAntiAliasing())
|
||||
{
|
||||
mpOutputDevice->Push(vcl::PushFlags::CLIPREGION);
|
||||
mpOutputDevice->IntersectClipRegion(vcl::Region(aMask));
|
||||
|
Reference in New Issue
Block a user