diff options
author | Armin Le Grand <Armin.Le.Grand@me.com> | 2021-12-10 16:36:11 +0100 |
---|---|---|
committer | Armin Le Grand <Armin.Le.Grand@me.com> | 2021-12-10 17:51:12 +0100 |
commit | 2c6e2fa596d4ecb22adb062a837f1bbf4384fed2 (patch) | |
tree | f2a588a1bbaa54faf5633dfdcce8e199322d639c /vcl/inc | |
parent | 6494fba15ea93283b625bf6bdb4666709f22439f (diff) |
Revert "Re-Enable DrawTransformBitmapExDirect for render backends"
This reverts commit 7e5af164b7d293dd410710bed411e1ca64bbecf7.
Reason for revert: Not the best/effective way to clear out the stuff remaining to be done, would need additional stuff
Change-Id: Ia6ab90384da29a5e34eff0ab8881bad2ab49c58c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126601
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
Diffstat (limited to 'vcl/inc')
-rw-r--r-- | vcl/inc/headless/svpgdi.hxx | 1 | ||||
-rw-r--r-- | vcl/inc/qt5/QtGraphics.hxx | 2 | ||||
-rw-r--r-- | vcl/inc/quartz/salgdi.h | 2 | ||||
-rw-r--r-- | vcl/inc/salgdi.hxx | 15 | ||||
-rw-r--r-- | vcl/inc/salgdiimpl.hxx | 4 | ||||
-rw-r--r-- | vcl/inc/skia/gdiimpl.hxx | 2 | ||||
-rw-r--r-- | vcl/inc/unx/GenPspGfxBackend.hxx | 2 | ||||
-rw-r--r-- | vcl/inc/unx/salgdi.h | 2 | ||||
-rw-r--r-- | vcl/inc/win/salgdi.h | 2 |
9 files changed, 27 insertions, 5 deletions
diff --git a/vcl/inc/headless/svpgdi.hxx b/vcl/inc/headless/svpgdi.hxx index c69462b89742..32168d87e727 100644 --- a/vcl/inc/headless/svpgdi.hxx +++ b/vcl/inc/headless/svpgdi.hxx @@ -147,6 +147,7 @@ protected: const SalBitmap& rSourceBitmap, const SalBitmap* pAlphaBitmap, double fAlpha) override; + virtual bool hasFastDrawTransformedBitmap() const override; virtual bool drawAlphaRect( tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, sal_uInt8 nTransparency ) override; cairo_t* createTmpCompatibleCairoContext() const; diff --git a/vcl/inc/qt5/QtGraphics.hxx b/vcl/inc/qt5/QtGraphics.hxx index b5756584f11b..fed7c2cb88f0 100644 --- a/vcl/inc/qt5/QtGraphics.hxx +++ b/vcl/inc/qt5/QtGraphics.hxx @@ -149,6 +149,8 @@ public: const basegfx::B2DPoint& rY, const SalBitmap& rSourceBitmap, const SalBitmap* pAlphaBitmap, double fAlpha) override; + bool hasFastDrawTransformedBitmap() const override; + bool drawAlphaRect(tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, sal_uInt8 nTransparency) override; diff --git a/vcl/inc/quartz/salgdi.h b/vcl/inc/quartz/salgdi.h index f996ffff378d..f0aa925c6083 100644 --- a/vcl/inc/quartz/salgdi.h +++ b/vcl/inc/quartz/salgdi.h @@ -431,6 +431,8 @@ public: const basegfx::B2DPoint& rY, const SalBitmap& rSourceBitmap, const SalBitmap* pAlphaBitmap, double fAlpha) override; + bool hasFastDrawTransformedBitmap() const override; + bool drawAlphaRect(tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, sal_uInt8 nTransparency) override; diff --git a/vcl/inc/salgdi.hxx b/vcl/inc/salgdi.hxx index 121f7044ca5c..716c9aa934a6 100644 --- a/vcl/inc/salgdi.hxx +++ b/vcl/inc/salgdi.hxx @@ -430,7 +430,7 @@ public: double fAlpha, const OutputDevice& rOutDev ); - bool ImplementsFastDrawTransformedBitmap(bool bTestAllowed) const; + bool HasFastDrawTransformedBitmap() const; bool DrawAlphaRect( tools::Long nX, tools::Long nY, @@ -600,6 +600,10 @@ protected: const SalBitmap* pAlphaBitmap, double fAlpha) = 0; + /// Used e.g. by canvas to know whether to cache the drawing. + /// See also tdf#138068. + virtual bool hasFastDrawTransformedBitmap() const = 0; + /** Render solid rectangle with given transparency * * @param nX Top left coordinate of rectangle @@ -625,10 +629,6 @@ private: bool m_bLastMirrorDeviceLTRButBiDiRtlSet; protected: - /// check/remember if FastDraw is implemented for this SalGraphics - bool m_bFastDrawTransformedBitmapChecked; - bool m_bFastDrawTransformedBitmap; - /// flags which hold the SetAntialiasing() value from OutputDevice bool m_bAntiAlias : 1; @@ -894,6 +894,11 @@ public: return GetImpl()->drawTransformedBitmap(rNull, rX, rY, rSourceBitmap, pAlphaBitmap, fAlpha); } + bool hasFastDrawTransformedBitmap() const override + { + return GetImpl()->hasFastDrawTransformedBitmap(); + } + bool drawAlphaRect(tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, sal_uInt8 nTransparency) override { diff --git a/vcl/inc/salgdiimpl.hxx b/vcl/inc/salgdiimpl.hxx index 035f896b2456..cb4bc35bd942 100644 --- a/vcl/inc/salgdiimpl.hxx +++ b/vcl/inc/salgdiimpl.hxx @@ -212,6 +212,10 @@ public: const SalBitmap* pAlphaBitmap, double fAlpha) = 0; + /// Used e.g. by canvas to know whether to cache the drawing. + /// See also tdf#138068. + virtual bool hasFastDrawTransformedBitmap() const = 0; + virtual bool drawAlphaRect( tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, diff --git a/vcl/inc/skia/gdiimpl.hxx b/vcl/inc/skia/gdiimpl.hxx index 6db0e87cdb99..b5144a249207 100644 --- a/vcl/inc/skia/gdiimpl.hxx +++ b/vcl/inc/skia/gdiimpl.hxx @@ -173,6 +173,8 @@ public: const basegfx::B2DPoint& rY, const SalBitmap& rSourceBitmap, const SalBitmap* pAlphaBitmap, double fAlpha) override; + virtual bool hasFastDrawTransformedBitmap() const override; + /** Render solid rectangle with given transparency @param nX Top left coordinate of rectangle diff --git a/vcl/inc/unx/GenPspGfxBackend.hxx b/vcl/inc/unx/GenPspGfxBackend.hxx index 181d9f7ab95d..a37ee433e6eb 100644 --- a/vcl/inc/unx/GenPspGfxBackend.hxx +++ b/vcl/inc/unx/GenPspGfxBackend.hxx @@ -111,6 +111,8 @@ public: const basegfx::B2DPoint& rY, const SalBitmap& rSourceBitmap, const SalBitmap* pAlphaBitmap, double fAlpha) override; + bool hasFastDrawTransformedBitmap() const override; + bool drawAlphaRect(tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, sal_uInt8 nTransparency) override; diff --git a/vcl/inc/unx/salgdi.h b/vcl/inc/unx/salgdi.h index 92c638ba660a..2a1a9945bd17 100644 --- a/vcl/inc/unx/salgdi.h +++ b/vcl/inc/unx/salgdi.h @@ -253,6 +253,8 @@ public: const SalBitmap* pAlphaBitmap, double fAlpha) override; + virtual bool hasFastDrawTransformedBitmap() const override; + virtual bool drawAlphaRect( tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, sal_uInt8 nTransparency ) override; diff --git a/vcl/inc/win/salgdi.h b/vcl/inc/win/salgdi.h index 065e7e25aa5a..b472ece0a256 100644 --- a/vcl/inc/win/salgdi.h +++ b/vcl/inc/win/salgdi.h @@ -309,6 +309,8 @@ public: const SalBitmap* pAlphaBitmap, double fAlpha) override; + virtual bool hasFastDrawTransformedBitmap() const override; + virtual bool drawAlphaRect( tools::Long nX, tools::Long nY, tools::Long nWidth, tools::Long nHeight, sal_uInt8 nTransparency ) override; private: |