[Libreoffice-commits] core.git: canvas/source slideshow/source

Luboš Luňák (via logerrit) logerrit at kemper.freedesktop.org
Fri May 22 17:14:41 UTC 2020


 canvas/source/vcl/canvashelper.cxx                      |    6 ------
 slideshow/source/engine/animationfactory.cxx            |    5 -----
 slideshow/source/engine/slideview.cxx                   |    5 -----
 slideshow/source/engine/transitions/clippingfunctor.cxx |    5 -----
 4 files changed, 21 deletions(-)

New commits:
commit cfaf93d2b3efdbbebc609b96447ada791276fa51
Author:     Luboš Luňák <l.lunak at collabora.com>
AuthorDate: Wed May 20 15:39:16 2020 +0200
Commit:     Luboš Luňák <l.lunak at collabora.com>
CommitDate: Fri May 22 19:14:01 2020 +0200

    remove unnecessary polypolygon subdivide
    
    As the comment already says, it's not necessary. And it is partially
    responsible for tdf#133016 by splitting an area into smaller parts,
    which then do not line up completely when AA-ed.
    
    Change-Id: If35e2118a0cd9c9b315b9666165c51659a9434e7
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94578
    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 9f1808c858e7..17930a1a758d 100644
--- a/canvas/source/vcl/canvashelper.cxx
+++ b/canvas/source/vcl/canvashelper.cxx
@@ -322,12 +322,6 @@ namespace vclcanvas
             ::basegfx::B2DPolyPolygon aPolyPoly(
                 ::basegfx::unotools::b2DPolyPolygonFromXPolyPolygon2D(xPolyPolygon) );
 
-            if( aPolyPoly.areControlPointsUsed() )
-            {
-                // AW: Not needed for ApplyLineDashing anymore; should be removed
-                aPolyPoly = ::basegfx::utils::adaptiveSubdivideByAngle(aPolyPoly);
-            }
-
             // apply dashing, if any
             if( strokeAttributes.DashArray.hasElements() )
             {
diff --git a/slideshow/source/engine/animationfactory.cxx b/slideshow/source/engine/animationfactory.cxx
index fc5417ffaf8f..4dbcbd02696d 100644
--- a/slideshow/source/engine/animationfactory.cxx
+++ b/slideshow/source/engine/animationfactory.cxx
@@ -223,11 +223,6 @@ namespace slideshow::internal
                                       "PathAnimation::PathAnimation(): failed to parse SVG:d path" );
                     ENSURE_OR_THROW( aPolyPoly.count() == 1,
                                       "PathAnimation::PathAnimation(): motion path consists of multiple/zero polygon(s)" );
-
-                    // TODO(F2): Since getPositionRelative() currently
-                    // cannot handle beziers, have to subdivide.
-                    // AW: Should be no longer necessary; getPositionRelative is now bezier-safe
-                    maPathPoly = ::basegfx::utils::adaptiveSubdivideByAngle(aPolyPoly.getB2DPolygon(0) );
                 }
 
                 virtual ~PathAnimation() override
diff --git a/slideshow/source/engine/slideview.cxx b/slideshow/source/engine/slideview.cxx
index f470b90b81ab..10398f88e13f 100644
--- a/slideshow/source/engine/slideview.cxx
+++ b/slideshow/source/engine/slideview.cxx
@@ -134,11 +134,6 @@ basegfx::B2DPolyPolygon prepareClip( const basegfx::B2DPolyPolygon& rClip )
 {
     basegfx::B2DPolyPolygon aClip( rClip );
 
-    // TODO(P2): unnecessary, once XCanvas is correctly handling this
-    // AW: Should be no longer necessary; tools are now bezier-safe
-    if( aClip.areControlPointsUsed() )
-        aClip = basegfx::utils::adaptiveSubdivideByAngle( aClip );
-
     // normalize polygon, preparation for clipping
     // in updateCanvas()
     aClip = basegfx::utils::correctOrientations(aClip);
diff --git a/slideshow/source/engine/transitions/clippingfunctor.cxx b/slideshow/source/engine/transitions/clippingfunctor.cxx
index ae64b8e6731f..be592ac49b57 100644
--- a/slideshow/source/engine/transitions/clippingfunctor.cxx
+++ b/slideshow/source/engine/transitions/clippingfunctor.cxx
@@ -154,11 +154,6 @@ namespace slideshow::internal
             if (mbFlip)
                 aClipPoly.flip();
 
-            // currently, clipper cannot cope with curves. Subdivide first
-            // AW: Should be no longer necessary; clipping tools are now bezier-safe
-            // if( aClipPoly.areControlPointsUsed() )
-            //    aClipPoly = ::basegfx::utils::adaptiveSubdivideByAngle(aClipPoly);
-
             if( mbSubtractPolygon )
             {
                 // subtract given polygon from background


More information about the Libreoffice-commits mailing list