vcl/source/outdev/bitmapex.cxx |   98 ++---------------------------------------
 1 file changed, 6 insertions(+), 92 deletions(-)

New commits:
commit 3194b9b42eda967dc57c2d244fb7b800a98c09d2
Author:     Noel Grandin <[email protected]>
AuthorDate: Sun Sep 22 18:55:17 2024 +0200
Commit:     Noel Grandin <[email protected]>
CommitDate: Sun Sep 22 22:19:56 2024 +0200

    remove some dead code in DrawDeviceBitmapEx
    
    ever since we added the call to DrawDeviceAlphaBitmap
    
    Change-Id: Ia329e355839ffc27c88135513898e7ea460242fa
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173772
    Reviewed-by: Noel Grandin <[email protected]>
    Tested-by: Jenkins

diff --git a/vcl/source/outdev/bitmapex.cxx b/vcl/source/outdev/bitmapex.cxx
index 2a1b21153d0b..45408ac5cba6 100644
--- a/vcl/source/outdev/bitmapex.cxx
+++ b/vcl/source/outdev/bitmapex.cxx
@@ -190,100 +190,14 @@ void OutputDevice::DrawDeviceBitmapEx( const Point& 
rDestPt, const Size& rDestSi
                 rBitmapEx.Mirror(nMirrFlags);
 
             const SalBitmap* pSalSrcBmp = 
rBitmapEx.ImplGetBitmapSalBitmap().get();
-            std::shared_ptr<SalBitmap> xMaskBmp = 
rBitmapEx.maAlphaMask.GetBitmap().ImplGetSalBitmap();
+            assert(!rBitmapEx.maAlphaMask.GetBitmap().ImplGetSalBitmap() && "I 
removed some code here that will need to be restored");
 
-            if (xMaskBmp)
-            {
-                if (mpGraphics->DrawAlphaBitmap(aPosAry, *pSalSrcBmp, 
*xMaskBmp, *this))
-                {
-                    // tried to paint as alpha directly. If this worked, we 
are done (except
-                    // alpha, see below)
-                }
-                else
-                {
-                    // #4919452# reduce operation area to bounds of
-                    // cliprect. since masked transparency involves
-                    // creation of a large vdev and copying the screen
-                    // content into that (slooow read from framebuffer),
-                    // that should considerably increase performance for
-                    // large bitmaps and small clippings.
-
-                    // Note that this optimization is a workaround for a
-                    // Writer peculiarity, namely, to decompose background
-                    // graphics into myriads of disjunct, tiny
-                    // rectangles. That otherwise kills us here, since for
-                    // transparent output, SAL always prepares the whole
-                    // bitmap, if aPosAry contains the whole bitmap (and
-                    // it's _not_ to blame for that).
-
-                    // Note the call to ImplPixelToDevicePixel(), since
-                    // aPosAry already contains the mnOutOff-offsets, they
-                    // also have to be applied to the region
-                    tools::Rectangle aClipRegionBounds( 
ImplPixelToDevicePixel(maRegion).GetBoundRect() );
-
-                    // TODO: Also respect scaling (that's a bit tricky,
-                    // since the source points have to move fractional
-                    // amounts (which is not possible, thus has to be
-                    // emulated by increases copy area)
-                    // const double nScaleX( aPosAry.mnDestWidth / 
aPosAry.mnSrcWidth );
-                    // const double nScaleY( aPosAry.mnDestHeight / 
aPosAry.mnSrcHeight );
-
-                    // for now, only identity scales allowed
-                    if (!aClipRegionBounds.IsEmpty() &&
-                        aPosAry.mnDestWidth == aPosAry.mnSrcWidth &&
-                        aPosAry.mnDestHeight == aPosAry.mnSrcHeight)
-                    {
-                        // now intersect dest rect with clip region
-                        
aClipRegionBounds.Intersection(tools::Rectangle(aPosAry.mnDestX,
-                                                                 
aPosAry.mnDestY,
-                                                                 
aPosAry.mnDestX + aPosAry.mnDestWidth - 1,
-                                                                 
aPosAry.mnDestY + aPosAry.mnDestHeight - 1));
-
-                        // Note: I could theoretically optimize away the
-                        // DrawBitmap below, if the region is empty
-                        // here. Unfortunately, cannot rule out that
-                        // somebody relies on the side effects.
-                        if (!aClipRegionBounds.IsEmpty())
-                        {
-                            aPosAry.mnSrcX += aClipRegionBounds.Left() - 
aPosAry.mnDestX;
-                            aPosAry.mnSrcY += aClipRegionBounds.Top() - 
aPosAry.mnDestY;
-                            aPosAry.mnSrcWidth = aClipRegionBounds.GetWidth();
-                            aPosAry.mnSrcHeight = 
aClipRegionBounds.GetHeight();
-
-                            aPosAry.mnDestX = aClipRegionBounds.Left();
-                            aPosAry.mnDestY = aClipRegionBounds.Top();
-                            aPosAry.mnDestWidth = aClipRegionBounds.GetWidth();
-                            aPosAry.mnDestHeight = 
aClipRegionBounds.GetHeight();
-                        }
-                    }
-
-                    mpGraphics->DrawBitmap(aPosAry, *pSalSrcBmp, *xMaskBmp, 
*this);
-                }
-
-                // #110958# Paint mask to alpha channel. Luckily, the
-                // black and white representation of the mask maps to
-                // the alpha channel
-
-                // #i25167# Restrict mask painting to _opaque_ areas
-                // of the mask, otherwise we spoil areas where no
-                // bitmap content was ever visible. Interestingly
-                // enough, this can be achieved by taking the mask as
-                // the transparency mask of itself
-                if (mpAlphaVDev)
-                    mpAlphaVDev->DrawBitmapEx(rDestPt,
-                                              rDestSize,
-                                              
BitmapEx(rBitmapEx.GetAlphaMask().GetBitmap(),
-                                                       
rBitmapEx.GetAlphaMask()));
-            }
-            else
-            {
-                mpGraphics->DrawBitmap(aPosAry, *pSalSrcBmp, *this);
+            mpGraphics->DrawBitmap(aPosAry, *pSalSrcBmp, *this);
 
-                if (mpAlphaVDev)
-                {
-                    // #i32109#: Make bitmap area opaque
-                    mpAlphaVDev->ImplFillOpaqueRectangle( 
tools::Rectangle(rDestPt, rDestSize) );
-                }
+            if (mpAlphaVDev)
+            {
+                // #i32109#: Make bitmap area opaque
+                mpAlphaVDev->ImplFillOpaqueRectangle( 
tools::Rectangle(rDestPt, rDestSize) );
             }
         }
     }

Reply via email to