Avoid second call to CreateAlphaMask

This is an expensive operation.

Change-Id: I4ffd17de84d324dcb091905927d9ef7423fdb1c9
Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/9505
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Noel Grandin <noel.grandin@collabora.com>
(cherry picked from commit 9e2d6727f27caa7663a18564f46bb4a90b3b87a3)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209508
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
This commit is contained in:
Mike Kaganski
2026-08-23 13:27:29 +02:00
committed by Xisco Fauli
parent 3329b7d5cf
commit d385b81da3
@@ -349,7 +349,8 @@ namespace drawinglayer::primitive2d
case Disposal::Previous:
{
maVirtualDevice->DrawBitmap(rAnimationFrame.maPositionPixel, rAnimationFrame.maBitmap);
Bitmap aExpandVisibilityMask(rAnimationFrame.maBitmap.CreateAlphaMask().GetBitmap(), rAnimationFrame.maBitmap.CreateAlphaMask());
AlphaMask aAlphaMask(rAnimationFrame.maBitmap.CreateAlphaMask());
Bitmap aExpandVisibilityMask(aAlphaMask.GetBitmap(), aAlphaMask);
maVirtualDeviceMask->DrawBitmap(rAnimationFrame.maPositionPixel, aExpandVisibilityMask);
break;
}