[Libreoffice-commits] core.git: 2 commits - canvas/source scp2/source
Stephan Bergmann (via logerrit)
logerrit at kemper.freedesktop.org
Wed Aug 19 14:56:22 UTC 2020
canvas/source/vcl/canvashelper.cxx | 44 ++++++++++++++++++++++---------------
scp2/source/ooo/common_brand.scp | 9 -------
2 files changed, 27 insertions(+), 26 deletions(-)
New commits:
commit 6ee46adb446f5350df2b1efc7fc3ffe2506dfaa0
Author: Stephan Bergmann <sbergman at redhat.com>
AuthorDate: Wed Aug 19 15:10:55 2020 +0200
Commit: Stephan Bergmann <sbergman at redhat.com>
CommitDate: Wed Aug 19 16:55:46 2020 +0200
Remove BuildVersion from installation set version ini files
...after 5fdf2009d21fa220dfee70ea755bd698c16257a7 "tdf#134522 remove
--with-build-version ./configure flag" had already removed it from the
instdir/ version ini file (but apparently forgot to also remove it from
installation set version ini files) and 00fa759dc9f13eb4618a7762be9ca6eaf3fd37f7
"tdf#135133: Don't try to read BuildVersion" removed its last consumer now
Change-Id: I98fd71e218fc0ede74ebc1b2e649011616d559ad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100997
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
diff --git a/scp2/source/ooo/common_brand.scp b/scp2/source/ooo/common_brand.scp
index 5f989c65cdf2..5eba313cdbc6 100644
--- a/scp2/source/ooo/common_brand.scp
+++ b/scp2/source/ooo/common_brand.scp
@@ -599,15 +599,6 @@ ProfileItem gid_Brand_Profileitem_Version_Vendor
Value = "<vendor>";
End
-ProfileItem gid_Brand_Profileitem_Version_BuildVersion
- ProfileID = gid_Brand_Profile_Version_Ini;
- ModuleID = gid_Module_Root_Brand;
- Section = "Version";
- Order = 17;
- Key = "BuildVersion";
- Value = "<buildversion>";
-End
-
ProfileItem gid_Brand_Profileitem_Version_Extensionupdateurl
ProfileID = gid_Brand_Profile_Version_Ini;
ModuleID = gid_Module_Root_Brand;
commit b0788ff11481568b413ff6e4c3ea4871984af974
Author: Luboš Luňák <l.lunak at collabora.com>
AuthorDate: Wed Aug 19 11:10:12 2020 +0200
Commit: Luboš Luňák <l.lunak at collabora.com>
CommitDate: Wed Aug 19 16:55:37 2020 +0200
don't split polypolygon in canvas if not needed (tdf#135395)
Those polygons will be merged back in Skia because of
12147e0322e0fdd1b561c94e7ebd3fdd69ceaac0, which is costly with
tdf#135395. And if the only reason for the splitting is that
the polygon requires a winding rule but DrawPolyPolygon() uses
evenodd rule, then simply convert the polygon to the evenodd rule.
Change-Id: Iba5ec31d6d6407f734b20badc80c846071068d40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100976
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak at collabora.com>
diff --git a/canvas/source/vcl/canvashelper.cxx b/canvas/source/vcl/canvashelper.cxx
index 78a0ae336b96..fcfabb8e033d 100644
--- a/canvas/source/vcl/canvashelper.cxx
+++ b/canvas/source/vcl/canvashelper.cxx
@@ -25,6 +25,7 @@
#include <basegfx/polygon/b2dlinegeometry.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
#include <basegfx/polygon/b2dpolygontools.hxx>
+#include <basegfx/polygon/b2dpolypolygoncutter.hxx>
#include <basegfx/polygon/b2dpolypolygontools.hxx>
#include <basegfx/range/b2drectangle.hxx>
#include <basegfx/utils/canvastools.hxx>
@@ -394,24 +395,33 @@ namespace vclcanvas
// user coordinates.
aStrokedPolyPoly.transform( aMatrix );
- // TODO(F2): When using alpha here, must handle that via
- // temporary surface or somesuch.
-
- // Note: the generated stroke poly-polygon is NOT free of
- // self-intersections. Therefore, if we would render it
- // via OutDev::DrawPolyPolygon(), on/off fill would
- // generate off areas on those self-intersections.
- for( sal_uInt32 i=0; i<aStrokedPolyPoly.count(); ++i )
+ if(aStrokedPolyPoly.isClosed())
{
- const basegfx::B2DPolygon& polygon = aStrokedPolyPoly.getB2DPolygon( i );
- if( polygon.isClosed()) {
- mpOutDevProvider->getOutDev().DrawPolygon( polygon );
- if( mp2ndOutDevProvider )
- mp2ndOutDevProvider->getOutDev().DrawPolygon( polygon );
- } else {
- mpOutDevProvider->getOutDev().DrawPolyLine( polygon );
- if( mp2ndOutDevProvider )
- mp2ndOutDevProvider->getOutDev().DrawPolyLine( polygon );
+ // Note: the generated stroke poly-polygon is NOT free of
+ // self-intersections. Therefore, if we would render it
+ // directly via OutDev::DrawPolyPolygon(), on/off fill would
+ // generate off areas on those self-intersections.
+ aStrokedPolyPoly = basegfx::utils::createNonzeroConform( aStrokedPolyPoly );
+ mpOutDevProvider->getOutDev().DrawPolyPolygon( aStrokedPolyPoly );
+ if( mp2ndOutDevProvider )
+ mp2ndOutDevProvider->getOutDev().DrawPolyPolygon( aStrokedPolyPoly );
+ }
+ else
+ {
+ // TODO(F2): When using alpha here, must handle that via
+ // temporary surface or somesuch.
+ for( sal_uInt32 i=0; i<aStrokedPolyPoly.count(); ++i )
+ {
+ const basegfx::B2DPolygon& polygon = aStrokedPolyPoly.getB2DPolygon( i );
+ if( polygon.isClosed()) {
+ mpOutDevProvider->getOutDev().DrawPolygon( polygon );
+ if( mp2ndOutDevProvider )
+ mp2ndOutDevProvider->getOutDev().DrawPolygon( polygon );
+ } else {
+ mpOutDevProvider->getOutDev().DrawPolyLine( polygon );
+ if( mp2ndOutDevProvider )
+ mp2ndOutDevProvider->getOutDev().DrawPolyLine( polygon );
+ }
}
}
}
More information about the Libreoffice-commits
mailing list