basctl/inc/pch/precompiled_basctl.hxx                        |    4 
 chart2/inc/pch/precompiled_chartcontroller.hxx               |    4 
 comphelper/inc/pch/precompiled_comphelper.hxx                |   28 +++-
 cui/inc/pch/precompiled_cui.hxx                              |    4 
 drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx |   32 ++---
 editeng/inc/pch/precompiled_editeng.hxx                      |   52 +++-----
 include/vcl/animate/Animation.hxx                            |   12 -
 include/vcl/animate/AnimationFrame.hxx                       |   29 ++--
 reportdesign/inc/pch/precompiled_rpt.hxx                     |   25 ++-
 reportdesign/inc/pch/precompiled_rptui.hxx                   |    4 
 sc/inc/pch/precompiled_sc.hxx                                |    6 
 sd/inc/pch/precompiled_sdui.hxx                              |    4 
 sd/source/ui/dlg/animobjs.cxx                                |   22 +--
 slideshow/inc/pch/precompiled_slideshow.hxx                  |   49 +++----
 slideshow/source/engine/shapes/gdimtftools.cxx               |   32 ++---
 svtools/inc/pch/precompiled_svt.hxx                          |   62 ++++++---
 svx/inc/pch/precompiled_svxcore.hxx                          |    5 
 svx/source/dialog/_bmpmask.cxx                               |   12 -
 svx/source/dialog/_contdlg.cxx                               |    2 
 svx/source/xoutdev/_xoutbmp.cxx                              |   14 +-
 sw/inc/pch/precompiled_msword.hxx                            |   54 +++++---
 sw/inc/pch/precompiled_swui.hxx                              |    7 -
 vcl/Library_vcl.mk                                           |    2 
 vcl/inc/animate/AnimationRenderer.hxx                        |    6 
 vcl/qa/cppunit/animation.cxx                                 |   12 -
 vcl/qa/cppunit/animationrenderer.cxx                         |   12 -
 vcl/source/animate/Animation.cxx                             |   70 +++++------
 vcl/source/animate/AnimationFrame.cxx                        |    4 
 vcl/source/animate/AnimationRenderer.cxx                     |   20 +--
 vcl/source/bitmap/bitmapfilter.cxx                           |    2 
 vcl/source/filter/egif/egif.cxx                              |    6 
 vcl/source/filter/etiff/etiff.cxx                            |    6 
 vcl/source/filter/igif/gifread.cxx                           |   28 ++--
 vcl/source/filter/itiff/itiff.cxx                            |    4 
 vcl/source/graphic/GraphicObject.cxx                         |   18 +-
 35 files changed, 347 insertions(+), 306 deletions(-)

New commits:
commit a2aaa6b77457041e08610eb4bced2d050ea7fa4f
Author:     Chris Sherlock <chris.sherloc...@gmail.com>
AuthorDate: Tue Jul 19 21:22:23 2022 +1000
Commit:     Tomaž Vajngerl <qui...@gmail.com>
CommitDate: Fri Sep 16 10:08:43 2022 +0200

    vcl: AnimationBitmap -> AnimationFrame
    
    The emphasis is not quite right. An animation is made up a sequence of
    *frames*, not bitmaps. A frame includes such things as position, size,
    timeout till the next frame *as well as* a bitmap.
    
    Note: had to regenerate a bunch of precompiled headers
    
    Change-Id: Ib1959452653857555f41e01ac0151d08c41a3b1c
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/76460
    Tested-by: Jenkins
    Reviewed-by: Tomaž Vajngerl <qui...@gmail.com>

diff --git a/basctl/inc/pch/precompiled_basctl.hxx 
b/basctl/inc/pch/precompiled_basctl.hxx
index 248e8b7cbcaa..a92d3a0870f5 100644
--- a/basctl/inc/pch/precompiled_basctl.hxx
+++ b/basctl/inc/pch/precompiled_basctl.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2022-08-08 12:07:41 using:
+ Generated on 2022-08-13 18:00:51 using:
  ./bin/update_pch basctl basctl --cutoff=3 --exclude:system --include:module 
--exclude:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -110,7 +110,7 @@
 #include <vcl/WindowPosSize.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
diff --git a/chart2/inc/pch/precompiled_chartcontroller.hxx 
b/chart2/inc/pch/precompiled_chartcontroller.hxx
index 5a1c5bb77f2f..b87950ae5bf1 100644
--- a/chart2/inc/pch/precompiled_chartcontroller.hxx
+++ b/chart2/inc/pch/precompiled_chartcontroller.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2022-06-27 18:58:36 using:
+ Generated on 2022-08-13 18:00:53 using:
  ./bin/update_pch chart2 chartcontroller --cutoff=6 --exclude:system 
--include:module --include:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -102,7 +102,7 @@
 #include <vcl/WindowPosSize.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
diff --git a/comphelper/inc/pch/precompiled_comphelper.hxx 
b/comphelper/inc/pch/precompiled_comphelper.hxx
index fdceecb34853..caa5b43017f6 100644
--- a/comphelper/inc/pch/precompiled_comphelper.hxx
+++ b/comphelper/inc/pch/precompiled_comphelper.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2021-04-08 13:55:35 using:
+ Generated on 2022-08-13 18:00:53 using:
  ./bin/update_pch comphelper comphelper --cutoff=4 --exclude:system 
--include:module --include:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -23,6 +23,7 @@
 #include <sal/config.h>
 #if PCH_LEVEL >= 1
 #include <algorithm>
+#include <array>
 #include <cassert>
 #include <chrono>
 #include <cmath>
@@ -39,7 +40,9 @@
 #include <map>
 #include <math.h>
 #include <memory>
+#include <mutex>
 #include <new>
+#include <numeric>
 #include <optional>
 #include <ostream>
 #include <stddef.h>
@@ -50,14 +53,21 @@
 #include <unordered_map>
 #include <utility>
 #include <vector>
+#include <boost/core/noinit_adaptor.hpp>
+#include <boost/property_tree/json_parser.hpp>
 #endif // PCH_LEVEL >= 1
 #if PCH_LEVEL >= 2
-#include <osl/conditn.hxx>
 #include <osl/diagnose.h>
+#include <osl/doublecheckedlocking.h>
 #include <osl/endian.h>
+#include <osl/file.h>
 #include <osl/file.hxx>
+#include <osl/getglobalmutex.hxx>
 #include <osl/interlck.h>
+#include <osl/mutex.h>
 #include <osl/mutex.hxx>
+#include <osl/process.h>
+#include <osl/security.h>
 #include <osl/thread.h>
 #include <osl/time.h>
 #include <rtl/alloc.h>
@@ -78,6 +88,7 @@
 #include <rtl/stringutils.hxx>
 #include <rtl/textcvt.h>
 #include <rtl/textenc.h>
+#include <rtl/uri.hxx>
 #include <rtl/ustrbuf.hxx>
 #include <rtl/ustring.h>
 #include <rtl/ustring.hxx>
@@ -92,7 +103,7 @@
 #include <vcl/Scanline.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
@@ -114,8 +125,11 @@
 #include <basegfx/point/b2ipoint.hxx>
 #include <basegfx/polygon/b2dpolygon.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
+#include <basegfx/range/Range2D.hxx>
 #include <basegfx/range/b2drange.hxx>
 #include <basegfx/range/basicrange.hxx>
+#include <basegfx/tuple/Tuple2D.hxx>
+#include <basegfx/tuple/Tuple3D.hxx>
 #include <basegfx/tuple/b2dtuple.hxx>
 #include <basegfx/tuple/b2ituple.hxx>
 #include <basegfx/tuple/b3dtuple.hxx>
@@ -189,9 +203,12 @@
 #include <cppuhelper/weakagg.hxx>
 #include <cppuhelper/weakref.hxx>
 #include <o3tl/cow_wrapper.hxx>
+#include <o3tl/safeint.hxx>
+#include <o3tl/string_view.hxx>
 #include <o3tl/strong_int.hxx>
 #include <o3tl/typed_flags_set.hxx>
 #include <o3tl/underlyingenumvalue.hxx>
+#include <o3tl/unit_conversion.hxx>
 #include <salhelper/salhelperdllapi.h>
 #include <salhelper/simplereferenceobject.hxx>
 #include <salhelper/thread.hxx>
@@ -201,10 +218,12 @@
 #include <tools/link.hxx>
 #include <tools/long.hxx>
 #include <tools/mapunit.hxx>
+#include <tools/poly.hxx>
 #include <tools/solar.h>
 #include <tools/toolsdllapi.h>
 #include <typelib/typeclass.h>
 #include <typelib/typedescription.h>
+#include <typelib/typedescription.hxx>
 #include <typelib/uik.h>
 #include <ucbhelper/ucbhelperdllapi.h>
 #include <uno/any2.h>
@@ -213,10 +232,11 @@
 #endif // PCH_LEVEL >= 3
 #if PCH_LEVEL >= 4
 #include <comphelper/accessiblecontexthelper.hxx>
+#include <comphelper/accessibleeventnotifier.hxx>
 #include <comphelper/comphelperdllapi.h>
-#include <comphelper/interfacecontainer2.hxx>
 #include <comphelper/processfactory.hxx>
 #include <comphelper/propertycontainerhelper.hxx>
+#include <comphelper/propertyvalue.hxx>
 #include <comphelper/seqstream.hxx>
 #include <comphelper/sequence.hxx>
 #include <comphelper/solarmutex.hxx>
diff --git a/cui/inc/pch/precompiled_cui.hxx b/cui/inc/pch/precompiled_cui.hxx
index 66dc920b620e..7de8ace33474 100644
--- a/cui/inc/pch/precompiled_cui.hxx
+++ b/cui/inc/pch/precompiled_cui.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2022-06-27 18:58:21 using:
+ Generated on 2022-08-13 18:00:55 using:
  ./bin/update_pch cui cui --cutoff=8 --exclude:system --include:module 
--exclude:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -104,7 +104,7 @@
 #include <vcl/Scanline.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
diff --git a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx 
b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
index e3a4ac764e32..223390c81e3e 100644
--- a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
+++ b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
@@ -116,13 +116,13 @@ namespace drawinglayer::primitive2d
 
             sal_uInt32 generateStepTime(sal_uInt32 nIndex) const
             {
-                const AnimationBitmap& rAnimationBitmap = 
maAnimation.Get(sal_uInt16(nIndex));
-                sal_uInt32 nWaitTime(rAnimationBitmap.mnWait * 10);
+                const AnimationFrame& rAnimationFrame = 
maAnimation.Get(sal_uInt16(nIndex));
+                sal_uInt32 nWaitTime(rAnimationFrame.mnWait * 10);
 
                 // Take care of special value for MultiPage TIFFs. ATM these 
shall just
                 // show their first page. Later we will offer some switching 
when object
                 // is selected.
-                if (ANIMATION_TIMEOUT_ON_CLICK == rAnimationBitmap.mnWait)
+                if (ANIMATION_TIMEOUT_ON_CLICK == rAnimationFrame.mnWait)
                 {
                     // ATM the huge value would block the timer, so
                     // use a long time to show first page (whole day)
@@ -250,14 +250,14 @@ namespace drawinglayer::primitive2d
                 while (mnNextFrameToPrepare <= nTarget)
                 {
                     // prepare step
-                    const AnimationBitmap& rAnimationBitmap = 
maAnimation.Get(sal_uInt16(mnNextFrameToPrepare));
+                    const AnimationFrame& rAnimationFrame = 
maAnimation.Get(sal_uInt16(mnNextFrameToPrepare));
 
-                    switch (rAnimationBitmap.meDisposal)
+                    switch (rAnimationFrame.meDisposal)
                     {
                         case Disposal::Not:
                         {
-                            
maVirtualDevice->DrawBitmapEx(rAnimationBitmap.maPositionPixel, 
rAnimationBitmap.maBitmapEx);
-                            Bitmap aAlphaMask = 
rAnimationBitmap.maBitmapEx.GetAlpha();
+                            
maVirtualDevice->DrawBitmapEx(rAnimationFrame.maPositionPixel, 
rAnimationFrame.maBitmapEx);
+                            Bitmap aAlphaMask = 
rAnimationFrame.maBitmapEx.GetAlpha();
 
                             if (aAlphaMask.IsEmpty())
                             {
@@ -269,7 +269,7 @@ namespace drawinglayer::primitive2d
                             else
                             {
                                 BitmapEx aExpandVisibilityMask(aAlphaMask, 
aAlphaMask);
-                                
maVirtualDeviceMask->DrawBitmapEx(rAnimationBitmap.maPositionPixel, 
aExpandVisibilityMask);
+                                
maVirtualDeviceMask->DrawBitmapEx(rAnimationFrame.maPositionPixel, 
aExpandVisibilityMask);
                             }
 
                             break;
@@ -277,15 +277,15 @@ namespace drawinglayer::primitive2d
                         case Disposal::Back:
                         {
                             // #i70772# react on no mask, for primitives, too.
-                            const Bitmap & 
rMask(rAnimationBitmap.maBitmapEx.GetAlpha());
-                            const Bitmap & 
rContent(rAnimationBitmap.maBitmapEx.GetBitmap());
+                            const Bitmap & 
rMask(rAnimationFrame.maBitmapEx.GetAlpha());
+                            const Bitmap & 
rContent(rAnimationFrame.maBitmapEx.GetBitmap());
 
                             maVirtualDeviceMask->Erase();
-                            
maVirtualDevice->DrawBitmap(rAnimationBitmap.maPositionPixel, rContent);
+                            
maVirtualDevice->DrawBitmap(rAnimationFrame.maPositionPixel, rContent);
 
                             if (rMask.IsEmpty())
                             {
-                                const ::tools::Rectangle 
aRect(rAnimationBitmap.maPositionPixel, rContent.GetSizePixel());
+                                const ::tools::Rectangle 
aRect(rAnimationFrame.maPositionPixel, rContent.GetSizePixel());
                                 maVirtualDeviceMask->SetFillColor(COL_BLACK);
                                 maVirtualDeviceMask->SetLineColor();
                                 maVirtualDeviceMask->DrawRect(aRect);
@@ -293,16 +293,16 @@ namespace drawinglayer::primitive2d
                             else
                             {
                                 BitmapEx aExpandVisibilityMask(rMask, rMask);
-                                
maVirtualDeviceMask->DrawBitmapEx(rAnimationBitmap.maPositionPixel, 
aExpandVisibilityMask);
+                                
maVirtualDeviceMask->DrawBitmapEx(rAnimationFrame.maPositionPixel, 
aExpandVisibilityMask);
                             }
 
                             break;
                         }
                         case Disposal::Previous:
                         {
-                            
maVirtualDevice->DrawBitmapEx(rAnimationBitmap.maPositionPixel, 
rAnimationBitmap.maBitmapEx);
-                            BitmapEx 
aExpandVisibilityMask(rAnimationBitmap.maBitmapEx.GetAlpha(), 
rAnimationBitmap.maBitmapEx.GetAlpha());
-                            
maVirtualDeviceMask->DrawBitmapEx(rAnimationBitmap.maPositionPixel, 
aExpandVisibilityMask);
+                            
maVirtualDevice->DrawBitmapEx(rAnimationFrame.maPositionPixel, 
rAnimationFrame.maBitmapEx);
+                            BitmapEx 
aExpandVisibilityMask(rAnimationFrame.maBitmapEx.GetAlpha(), 
rAnimationFrame.maBitmapEx.GetAlpha());
+                            
maVirtualDeviceMask->DrawBitmapEx(rAnimationFrame.maPositionPixel, 
aExpandVisibilityMask);
                             break;
                         }
                     }
diff --git a/editeng/inc/pch/precompiled_editeng.hxx 
b/editeng/inc/pch/precompiled_editeng.hxx
index 91117ecff7f6..8472a893b5a1 100644
--- a/editeng/inc/pch/precompiled_editeng.hxx
+++ b/editeng/inc/pch/precompiled_editeng.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2021-07-28 20:17:03 using:
+ Generated on 2022-09-03 23:10:43 using:
  ./bin/update_pch editeng editeng --cutoff=5 --exclude:system --include:module 
--exclude:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -24,8 +24,6 @@
 #if PCH_LEVEL >= 1
 #include <algorithm>
 #include <array>
-#include <assert.h>
-#include <atomic>
 #include <cassert>
 #include <chrono>
 #include <cmath>
@@ -37,11 +35,13 @@
 #include <functional>
 #include <initializer_list>
 #include <iomanip>
+#include <iterator>
 #include <limits.h>
 #include <limits>
 #include <map>
 #include <math.h>
 #include <memory>
+#include <mutex>
 #include <new>
 #include <numeric>
 #include <optional>
@@ -53,6 +53,7 @@
 #include <string_view>
 #include <type_traits>
 #include <unordered_map>
+#include <unordered_set>
 #include <utility>
 #include <vector>
 #include <boost/property_tree/json_parser.hpp>
@@ -69,7 +70,6 @@
 #include <osl/mutex.h>
 #include <osl/mutex.hxx>
 #include <osl/thread.h>
-#include <osl/time.h>
 #include <rtl/alloc.h>
 #include <rtl/character.hxx>
 #include <rtl/instance.hxx>
@@ -77,6 +77,7 @@
 #include <rtl/math.hxx>
 #include <rtl/ref.hxx>
 #include <rtl/strbuf.h>
+#include <rtl/strbuf.hxx>
 #include <rtl/string.h>
 #include <rtl/string.hxx>
 #include <rtl/stringconcat.hxx>
@@ -84,6 +85,7 @@
 #include <rtl/tencinfo.h>
 #include <rtl/textcvt.h>
 #include <rtl/textenc.h>
+#include <rtl/ustrbuf.h>
 #include <rtl/ustrbuf.hxx>
 #include <rtl/ustring.h>
 #include <rtl/ustring.hxx>
@@ -99,7 +101,7 @@
 #include <vcl/Scanline.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
@@ -110,7 +112,6 @@
 #include <vcl/gfxlink.hxx>
 #include <vcl/graph.hxx>
 #include <vcl/mapmod.hxx>
-#include <vcl/metric.hxx>
 #include <vcl/outdev.hxx>
 #include <vcl/region.hxx>
 #include <vcl/scopedbitmapaccess.hxx>
@@ -132,6 +133,7 @@
 #include <basegfx/point/b2ipoint.hxx>
 #include <basegfx/polygon/b2dpolygon.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
+#include <basegfx/range/Range2D.hxx>
 #include <basegfx/range/b2drange.hxx>
 #include <basegfx/range/basicrange.hxx>
 #include <basegfx/tuple/Tuple2D.hxx>
@@ -144,19 +146,20 @@
 #include <basegfx/vector/b2dvector.hxx>
 #include <basegfx/vector/b2enums.hxx>
 #include <basegfx/vector/b2ivector.hxx>
-#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
-#include <com/sun/star/accessibility/XAccessibleContext2.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
-#include <com/sun/star/accessibility/XAccessibleExtendedComponent.hpp>
 #include <com/sun/star/awt/Key.hpp>
 #include <com/sun/star/awt/KeyGroup.hpp>
+#include <com/sun/star/i18n/ForbiddenCharacters.hpp>
+#include <com/sun/star/i18n/LanguageCountryInfo.hpp>
+#include <com/sun/star/i18n/LocaleDataItem2.hpp>
+#include <com/sun/star/i18n/LocaleItem.hpp>
 #include <com/sun/star/i18n/ScriptType.hpp>
 #include <com/sun/star/i18n/TransliterationModules.hpp>
 #include <com/sun/star/i18n/TransliterationModulesExtra.hpp>
+#include <com/sun/star/i18n/UnicodeScript.hpp>
 #include <com/sun/star/i18n/WordType.hpp>
+#include <com/sun/star/i18n/reservedWords.hpp>
 #include <com/sun/star/lang/DisposedException.hpp>
 #include <com/sun/star/lang/EventObject.hpp>
-#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
 #include <com/sun/star/lang/Locale.hpp>
 #include <com/sun/star/lang/XComponent.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
@@ -165,12 +168,13 @@
 #include <com/sun/star/style/NumberingType.hpp>
 #include <com/sun/star/uno/Any.h>
 #include <com/sun/star/uno/Any.hxx>
-#include <com/sun/star/uno/Exception.hpp>
 #include <com/sun/star/uno/Reference.h>
 #include <com/sun/star/uno/Reference.hxx>
+#include <com/sun/star/uno/RuntimeException.hpp>
 #include <com/sun/star/uno/Sequence.h>
 #include <com/sun/star/uno/Sequence.hxx>
 #include <com/sun/star/uno/Type.h>
+#include <com/sun/star/uno/Type.hxx>
 #include <com/sun/star/uno/TypeClass.hdl>
 #include <com/sun/star/uno/XAggregation.hpp>
 #include <com/sun/star/uno/XInterface.hpp>
@@ -184,27 +188,17 @@
 #include <com/sun/star/xml/sax/XFastAttributeList.hpp>
 #include <com/sun/star/xml/sax/XFastContextHandler.hpp>
 #include <com/sun/star/xml/sax/XFastTokenHandler.hpp>
-#include <comphelper/accessiblecomponenthelper.hxx>
-#include <comphelper/accessiblecontexthelper.hxx>
 #include <comphelper/comphelperdllapi.h>
+#include <comphelper/diagnose_ex.hxx>
 #include <comphelper/processfactory.hxx>
-#include <comphelper/sequence.hxx>
-#include <comphelper/solarmutex.hxx>
 #include <comphelper/string.hxx>
-#include <comphelper/uno3.hxx>
 #include <cppu/cppudllapi.h>
 #include <cppu/unotype.hxx>
-#include <cppuhelper/basemutex.hxx>
-#include <cppuhelper/compbase2.hxx>
-#include <cppuhelper/compbase_ex.hxx>
 #include <cppuhelper/cppuhelperdllapi.h>
 #include <cppuhelper/implbase.hxx>
-#include <cppuhelper/implbase1.hxx>
-#include <cppuhelper/implbase2.hxx>
 #include <cppuhelper/implbase_ex.hxx>
 #include <cppuhelper/implbase_ex_post.hxx>
 #include <cppuhelper/implbase_ex_pre.hxx>
-#include <cppuhelper/interfacecontainer.h>
 #include <cppuhelper/supportsservice.hxx>
 #include <cppuhelper/weak.hxx>
 #include <cppuhelper/weakagg.hxx>
@@ -216,6 +210,7 @@
 #include <libxml/xmlwriter.h>
 #include <o3tl/cow_wrapper.hxx>
 #include <o3tl/safeint.hxx>
+#include <o3tl/sorted_vector.hxx>
 #include <o3tl/span.hxx>
 #include <o3tl/strong_int.hxx>
 #include <o3tl/typed_flags_set.hxx>
@@ -226,10 +221,10 @@
 #include <sax/fastattribs.hxx>
 #include <sax/saxdllapi.h>
 #include <sfx2/dllapi.h>
-#include <sfx2/shell.hxx>
 #include <sot/formats.hxx>
 #include <sot/sotdllapi.h>
 #include <svl/SfxBroadcaster.hxx>
+#include <svl/cenumitm.hxx>
 #include <svl/cintitem.hxx>
 #include <svl/eitem.hxx>
 #include <svl/hint.hxx>
@@ -241,18 +236,18 @@
 #include <svl/svldllapi.h>
 #include <svl/typedwhich.hxx>
 #include <svtools/svtdllapi.h>
-#include <tools/UnitConversion.hxx>
 #include <tools/color.hxx>
 #include <tools/date.hxx>
 #include <tools/datetime.hxx>
 #include <tools/debug.hxx>
 #include <tools/degree.hxx>
-#include <comphelper/diagnose_ex.hxx>
+#include <tools/fldunit.hxx>
 #include <tools/fontenum.hxx>
 #include <tools/gen.hxx>
 #include <tools/link.hxx>
 #include <tools/long.hxx>
 #include <tools/mapunit.hxx>
+#include <tools/poly.hxx>
 #include <tools/ref.hxx>
 #include <tools/solar.h>
 #include <tools/stream.hxx>
@@ -265,7 +260,9 @@
 #include <uno/any2.h>
 #include <uno/data.h>
 #include <uno/sequence2.h>
+#include <unotools/configmgr.hxx>
 #include <unotools/options.hxx>
+#include <unotools/syslocale.hxx>
 #include <unotools/unotoolsdllapi.h>
 #include <xmloff/dllapi.h>
 #include <xmloff/families.hxx>
@@ -309,14 +306,11 @@
 #include <editeng/scriptspaceitem.hxx>
 #include <editeng/shdditem.hxx>
 #include <editeng/svxenum.hxx>
-#include <editeng/svxfont.hxx>
 #include <editeng/tstpitem.hxx>
 #include <editeng/udlnitem.hxx>
 #include <editeng/ulspitem.hxx>
 #include <editeng/unoedsrc.hxx>
-#include <editeng/unoipset.hxx>
 #include <editeng/unolingu.hxx>
-#include <editeng/unoprnms.hxx>
 #include <editeng/unotext.hxx>
 #include <editeng/wghtitem.hxx>
 #include <editeng/wrlmitem.hxx>
diff --git a/include/vcl/animate/Animation.hxx 
b/include/vcl/animate/Animation.hxx
index 2df9f51d0221..6c592ba753c1 100644
--- a/include/vcl/animate/Animation.hxx
+++ b/include/vcl/animate/Animation.hxx
@@ -23,7 +23,7 @@
 #include <tools/solar.h>
 #include <vcl/dllapi.h>
 #include <vcl/timer.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 
 #define ANIMATION_TIMEOUT_ON_CLICK 2147483647L
 
@@ -66,11 +66,11 @@ public:
     void SetNotifyHdl(const Link<Animation*, void>& rLink) { maNotifyLink = 
rLink; }
     const Link<Animation*, void>& GetNotifyHdl() const { return maNotifyLink; }
 
-    std::vector<std::unique_ptr<AnimationBitmap>>& GetAnimationFrames() { 
return maFrames; }
+    std::vector<std::unique_ptr<AnimationFrame>>& GetAnimationFrames() { 
return maFrames; }
     size_t Count() const { return maFrames.size(); }
-    bool Insert(const AnimationBitmap& rAnimationBitmap);
-    const AnimationBitmap& Get(sal_uInt16 nAnimation) const;
-    void Replace(const AnimationBitmap& rNewAnimationBmp, sal_uInt16 
nAnimation);
+    bool Insert(const AnimationFrame& rAnimationFrame);
+    const AnimationFrame& Get(sal_uInt16 nAnimation) const;
+    void Replace(const AnimationFrame& rNewAnimationBmp, sal_uInt16 
nAnimation);
 
     sal_uLong GetSizeBytes() const;
     BitmapChecksum GetChecksum() const;
@@ -96,7 +96,7 @@ public:
 private:
     SAL_DLLPRIVATE static sal_uLong mnAnimCount;
 
-    std::vector<std::unique_ptr<AnimationBitmap>> maFrames;
+    std::vector<std::unique_ptr<AnimationFrame>> maFrames;
     std::vector<std::unique_ptr<AnimationRenderer>> maRenderers;
 
     Link<Animation*, void> maNotifyLink;
diff --git a/include/vcl/animate/AnimationBitmap.hxx 
b/include/vcl/animate/AnimationFrame.hxx
similarity index 63%
rename from include/vcl/animate/AnimationBitmap.hxx
rename to include/vcl/animate/AnimationFrame.hxx
index d06f820f8f97..7aa6f0d54a2b 100644
--- a/include/vcl/animate/AnimationBitmap.hxx
+++ b/include/vcl/animate/AnimationFrame.hxx
@@ -17,8 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#ifndef INCLUDED_VCL_ANIMATE_ANIMATIONBITMAP_HXX
-#define INCLUDED_VCL_ANIMATE_ANIMATIONBITMAP_HXX
+#pragma once
 
 #include <vcl/bitmapex.hxx>
 
@@ -29,7 +28,7 @@ enum class Disposal
     Previous
 };
 
-struct AnimationBitmap
+struct AnimationFrame
 {
     BitmapEx maBitmapEx;
     Point maPositionPixel;
@@ -38,15 +37,15 @@ struct AnimationBitmap
     Disposal meDisposal;
     bool mbUserInput;
 
-    AnimationBitmap()
+    AnimationFrame()
         : mnWait(0)
         , meDisposal(Disposal::Not)
         , mbUserInput(false)
     {
     }
 
-    AnimationBitmap(const BitmapEx& rBitmapEx, const Point& rPositionPixel, 
const Size& rSizePixel,
-                    tools::Long nWait = 0, Disposal eDisposal = Disposal::Not)
+    AnimationFrame(const BitmapEx& rBitmapEx, const Point& rPositionPixel, 
const Size& rSizePixel,
+                   tools::Long nWait = 0, Disposal eDisposal = Disposal::Not)
         : maBitmapEx(rBitmapEx)
         , maPositionPixel(rPositionPixel)
         , maSizePixel(rSizePixel)
@@ -56,23 +55,21 @@ struct AnimationBitmap
     {
     }
 
-    bool operator==(const AnimationBitmap& rAnimationBitmap) const
+    bool operator==(const AnimationFrame& rAnimationFrame) const
     {
-        return (rAnimationBitmap.maBitmapEx == maBitmapEx
-                && rAnimationBitmap.maPositionPixel == maPositionPixel
-                && rAnimationBitmap.maSizePixel == maSizePixel && 
rAnimationBitmap.mnWait == mnWait
-                && rAnimationBitmap.meDisposal == meDisposal
-                && rAnimationBitmap.mbUserInput == mbUserInput);
+        return (rAnimationFrame.maBitmapEx == maBitmapEx
+                && rAnimationFrame.maPositionPixel == maPositionPixel
+                && rAnimationFrame.maSizePixel == maSizePixel && 
rAnimationFrame.mnWait == mnWait
+                && rAnimationFrame.meDisposal == meDisposal
+                && rAnimationFrame.mbUserInput == mbUserInput);
     }
 
-    bool operator!=(const AnimationBitmap& rAnimationBitmap) const
+    bool operator!=(const AnimationFrame& rAnimationFrame) const
     {
-        return !(*this == rAnimationBitmap);
+        return !(*this == rAnimationFrame);
     }
 
     BitmapChecksum GetChecksum() const;
 };
 
-#endif // INCLUDED_VCL_ANIMATE_ANIMATIONBITMAP_HXX
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/reportdesign/inc/pch/precompiled_rpt.hxx 
b/reportdesign/inc/pch/precompiled_rpt.hxx
index 7c12dd4dbfe8..52d9e2c3f225 100644
--- a/reportdesign/inc/pch/precompiled_rpt.hxx
+++ b/reportdesign/inc/pch/precompiled_rpt.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2021-09-12 11:51:50 using:
+ Generated on 2022-08-13 18:00:55 using:
  ./bin/update_pch reportdesign rpt --cutoff=9 --exclude:system 
--include:module --include:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -25,7 +25,6 @@
 #include <algorithm>
 #include <array>
 #include <cassert>
-#include <chrono>
 #include <cmath>
 #include <cstddef>
 #include <cstdlib>
@@ -40,10 +39,12 @@
 #include <map>
 #include <math.h>
 #include <memory>
+#include <mutex>
 #include <new>
 #include <numeric>
 #include <optional>
 #include <ostream>
+#include <sstream>
 #include <stddef.h>
 #include <stdexcept>
 #include <string.h>
@@ -66,7 +67,6 @@
 #include <osl/mutex.h>
 #include <osl/mutex.hxx>
 #include <osl/thread.h>
-#include <osl/time.h>
 #include <rtl/alloc.h>
 #include <rtl/instance.hxx>
 #include <rtl/locale.h>
@@ -86,6 +86,7 @@
 #include <rtl/uuid.h>
 #include <sal/backtrace.hxx>
 #include <sal/detail/log.h>
+#include <sal/log.hxx>
 #include <sal/macros.h>
 #include <sal/saldllapi.h>
 #include <sal/types.h>
@@ -95,7 +96,7 @@
 #include <vcl/Scanline.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
@@ -144,6 +145,7 @@
 #include <basegfx/point/b2ipoint.hxx>
 #include <basegfx/polygon/b2dpolygon.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
+#include <basegfx/range/Range2D.hxx>
 #include <basegfx/range/b2drange.hxx>
 #include <basegfx/range/basicrange.hxx>
 #include <basegfx/tuple/Tuple2D.hxx>
@@ -157,15 +159,11 @@
 #include <basegfx/vector/b2enums.hxx>
 #include <basegfx/vector/b2ivector.hxx>
 #include <com/sun/star/awt/DeviceInfo.hpp>
-#include <com/sun/star/awt/FontDescriptor.hpp>
 #include <com/sun/star/beans/XFastPropertySet.hpp>
 #include <com/sun/star/beans/XMultiPropertySet.hpp>
-#include <com/sun/star/beans/XPropertyAccess.hpp>
 #include <com/sun/star/beans/XPropertySet.hpp>
-#include <com/sun/star/container/XChild.hpp>
 #include <com/sun/star/drawing/LineCap.hpp>
 #include <com/sun/star/drawing/TextFitToSizeType.hpp>
-#include <com/sun/star/drawing/XShape.hpp>
 #include <com/sun/star/form/FormComponentType.hpp>
 #include <com/sun/star/graphic/XPrimitive2D.hpp>
 #include <com/sun/star/lang/DisposedException.hpp>
@@ -197,8 +195,10 @@
 #include <com/sun/star/util/Date.hpp>
 #include <com/sun/star/util/DateTime.hpp>
 #include <com/sun/star/util/Time.hpp>
+#include <com/sun/star/util/XAccounting.hpp>
+#include <comphelper/compbase.hxx>
 #include <comphelper/comphelperdllapi.h>
-#include <comphelper/interfacecontainer2.hxx>
+#include <comphelper/interfacecontainer4.hxx>
 #include <comphelper/sequence.hxx>
 #include <comphelper/uno3.hxx>
 #include <comphelper/weak.hxx>
@@ -213,25 +213,29 @@
 #include <cppuhelper/implbase_ex_post.hxx>
 #include <cppuhelper/implbase_ex_pre.hxx>
 #include <cppuhelper/interfacecontainer.h>
-#include <cppuhelper/propertysetmixin.hxx>
+#include <cppuhelper/queryinterface.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <cppuhelper/weak.hxx>
 #include <cppuhelper/weakagg.hxx>
 #include <cppuhelper/weakref.hxx>
 #include <drawinglayer/drawinglayerdllapi.h>
+#include <drawinglayer/geometry/viewinformation2d.hxx>
 #include <drawinglayer/primitive2d/CommonTypes.hxx>
 #include <drawinglayer/primitive2d/Primitive2DContainer.hxx>
 #include <drawinglayer/primitive2d/Primitive2DVisitor.hxx>
+#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
 #include <editeng/editengdllapi.h>
 #include <editeng/outlobj.hxx>
 #include <editeng/paragraphdata.hxx>
 #include <i18nlangtag/lang.h>
 #include <o3tl/cow_wrapper.hxx>
 #include <o3tl/safeint.hxx>
+#include <o3tl/span.hxx>
 #include <o3tl/strong_int.hxx>
 #include <o3tl/typed_flags_set.hxx>
 #include <o3tl/underlyingenumvalue.hxx>
 #include <o3tl/unit_conversion.hxx>
+#include <salhelper/salhelperdllapi.h>
 #include <salhelper/simplereferenceobject.hxx>
 #include <svl/SfxBroadcaster.hxx>
 #include <svl/cenumitm.hxx>
@@ -288,7 +292,6 @@
 #include <uno/data.h>
 #include <uno/sequence2.h>
 #include <unotools/fontdefs.hxx>
-#include <unotools/options.hxx>
 #include <unotools/resmgr.hxx>
 #include <unotools/syslocale.hxx>
 #include <unotools/unotoolsdllapi.h>
diff --git a/reportdesign/inc/pch/precompiled_rptui.hxx 
b/reportdesign/inc/pch/precompiled_rptui.hxx
index e30c1c332c9b..ac4d60fb4cec 100644
--- a/reportdesign/inc/pch/precompiled_rptui.hxx
+++ b/reportdesign/inc/pch/precompiled_rptui.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2022-06-27 18:33:32 using:
+ Generated on 2022-08-13 18:00:56 using:
  ./bin/update_pch reportdesign rptui --cutoff=4 --exclude:system 
--include:module --include:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -104,7 +104,7 @@
 #include <vcl/abstdlg.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
diff --git a/sc/inc/pch/precompiled_sc.hxx b/sc/inc/pch/precompiled_sc.hxx
index b1ad6286c859..bddde686d5e4 100644
--- a/sc/inc/pch/precompiled_sc.hxx
+++ b/sc/inc/pch/precompiled_sc.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2022-06-27 18:59:25 using:
+ Generated on 2022-08-13 18:01:14 using:
  ./bin/update_pch sc sc --cutoff=12 --exclude:system --include:module 
--include:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -79,7 +79,6 @@
 #include <osl/process.h>
 #include <osl/security.hxx>
 #include <osl/thread.h>
-#include <osl/time.h>
 #include <rtl/alloc.h>
 #include <rtl/bootstrap.hxx>
 #include <rtl/character.hxx>
@@ -116,11 +115,12 @@
 #include <vcl/GraphicExternalLink.hxx>
 #include <vcl/GraphicObject.hxx>
 #include <vcl/IDialogRenderable.hxx>
+#include <vcl/InterimItemWindow.hxx>
 #include <vcl/Scanline.hxx>
 #include <vcl/WindowPosSize.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
diff --git a/sd/inc/pch/precompiled_sdui.hxx b/sd/inc/pch/precompiled_sdui.hxx
index 67f322dca750..562100449806 100644
--- a/sd/inc/pch/precompiled_sdui.hxx
+++ b/sd/inc/pch/precompiled_sdui.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2022-06-27 18:58:50 using:
+ Generated on 2022-08-13 18:01:16 using:
  ./bin/update_pch sd sdui --cutoff=4 --exclude:system --include:module 
--include:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -110,7 +110,7 @@
 #include <vcl/WindowPosSize.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
diff --git a/sd/source/ui/dlg/animobjs.cxx b/sd/source/ui/dlg/animobjs.cxx
index f9bb96dff6af..2a48b1c0e3d6 100644
--- a/sd/source/ui/dlg/animobjs.cxx
+++ b/sd/source/ui/dlg/animobjs.cxx
@@ -725,7 +725,7 @@ void AnimationWindow::AddObj (::sd::View& rView )
 
                 for( sal_uInt16 i = 0; i < nCount; i++ )
                 {
-                    const AnimationBitmap& rAnimationBitmap = aAnimation.Get( 
i );
+                    const AnimationFrame& rAnimationFrame = aAnimation.Get( i 
);
 
                     // LoopCount
                     if( i == 0 )
@@ -738,12 +738,12 @@ void AnimationWindow::AddObj (::sd::View& rView )
                             m_xLbLoopCount->set_active_text(OUString::number( 
nLoopCount ) );
                     }
 
-                    ::tools::Long nTime = rAnimationBitmap.mnWait;
+                    ::tools::Long nTime = rAnimationFrame.mnWait;
                     ::tools::Time aTime( 0, 0, nTime / 100, nTime % 100 );
                     size_t nIndex = m_nCurrentFrame + 1;
                     m_FrameList.insert(
                             m_FrameList.begin() + nIndex,
-                            ::std::make_pair(rAnimationBitmap.maBitmapEx, 
aTime));
+                            ::std::make_pair(rAnimationFrame.maBitmapEx, 
aTime));
 
                     // increment => next one inserted after this one
                     ++m_nCurrentFrame;
@@ -960,21 +960,21 @@ void AnimationWindow::CreateAnimObj (::sd::View& rView )
             }
 
             // find LoopCount (number of passes)
-            AnimationBitmap aAnimationBitmap;
+            AnimationFrame aAnimationFrame;
             sal_uInt32 nLoopCount = 0;
             sal_Int32 nPos = m_xLbLoopCount->get_active();
 
             if( nPos != -1 && nPos != m_xLbLoopCount->get_count() - 1 ) // 
endless
                 nLoopCount = m_xLbLoopCount->get_active_text().toUInt32();
 
-            aAnimationBitmap.maBitmapEx = rBitmapEx;
-            aAnimationBitmap.maPositionPixel = aPt;
-            aAnimationBitmap.maSizePixel = aBitmapSize;
-            aAnimationBitmap.mnWait = nTime;
-            aAnimationBitmap.meDisposal = Disposal::Back;
-            aAnimationBitmap.mbUserInput = false;
+            aAnimationFrame.maBitmapEx = rBitmapEx;
+            aAnimationFrame.maPositionPixel = aPt;
+            aAnimationFrame.maSizePixel = aBitmapSize;
+            aAnimationFrame.mnWait = nTime;
+            aAnimationFrame.meDisposal = Disposal::Back;
+            aAnimationFrame.mbUserInput = false;
 
-            aAnimation.Insert( aAnimationBitmap );
+            aAnimation.Insert( aAnimationFrame );
             aAnimation.SetDisplaySizePixel( aMaxSizePix );
             aAnimation.SetLoopCount( nLoopCount );
         }
diff --git a/slideshow/inc/pch/precompiled_slideshow.hxx 
b/slideshow/inc/pch/precompiled_slideshow.hxx
index 0f2a0aa493a1..f5e790b52558 100644
--- a/slideshow/inc/pch/precompiled_slideshow.hxx
+++ b/slideshow/inc/pch/precompiled_slideshow.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2021-09-12 11:52:12 using:
+ Generated on 2022-08-13 18:01:17 using:
  ./bin/update_pch slideshow slideshow --cutoff=4 --exclude:system 
--include:module --exclude:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -39,6 +39,7 @@
 #include <map>
 #include <math.h>
 #include <memory>
+#include <mutex>
 #include <new>
 #include <numeric>
 #include <optional>
@@ -49,8 +50,6 @@
 #include <string>
 #include <string_view>
 #include <type_traits>
-#include <typeinfo>
-#include <unordered_map>
 #include <unordered_set>
 #include <utility>
 #include <vector>
@@ -65,7 +64,6 @@
 #include <osl/interlck.h>
 #include <osl/mutex.h>
 #include <osl/mutex.hxx>
-#include <osl/thread.h>
 #include <osl/thread.hxx>
 #include <osl/time.h>
 #include <rtl/alloc.h>
@@ -83,7 +81,6 @@
 #include <rtl/ustrbuf.h>
 #include <rtl/ustring.h>
 #include <rtl/ustring.hxx>
-#include <rtl/uuid.h>
 #include <sal/backtrace.hxx>
 #include <sal/detail/log.h>
 #include <sal/log.hxx>
@@ -97,7 +94,7 @@
 #include <vcl/Scanline.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
@@ -152,7 +149,9 @@
 #include <basegfx/polygon/b2dpolygontools.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
 #include <basegfx/polygon/b2dpolypolygontools.hxx>
+#include <basegfx/range/Range2D.hxx>
 #include <basegfx/range/b2drange.hxx>
+#include <basegfx/range/b2drectangle.hxx>
 #include <basegfx/range/basicrange.hxx>
 #include <basegfx/tuple/Tuple2D.hxx>
 #include <basegfx/tuple/Tuple3D.hxx>
@@ -169,16 +168,13 @@
 #include <canvas/canvastools.hxx>
 #include <com/sun/star/animations/TransitionSubType.hpp>
 #include <com/sun/star/animations/TransitionType.hpp>
-#include <com/sun/star/animations/XAnimationNode.hpp>
 #include <com/sun/star/awt/DeviceInfo.hpp>
 #include <com/sun/star/awt/FontSlant.hpp>
 #include <com/sun/star/awt/Key.hpp>
 #include <com/sun/star/awt/KeyGroup.hpp>
 #include <com/sun/star/awt/MouseButton.hpp>
 #include <com/sun/star/awt/SystemPointer.hpp>
-#include <com/sun/star/beans/PropertyState.hpp>
 #include <com/sun/star/beans/XPropertySet.hpp>
-#include <com/sun/star/beans/XPropertySetInfo.hpp>
 #include <com/sun/star/drawing/FillStyle.hpp>
 #include <com/sun/star/drawing/LineCap.hpp>
 #include <com/sun/star/drawing/LineStyle.hpp>
@@ -186,19 +182,18 @@
 #include <com/sun/star/drawing/XDrawPage.hpp>
 #include <com/sun/star/drawing/XShape.hpp>
 #include <com/sun/star/form/FormComponentType.hpp>
+#include <com/sun/star/geometry/IntegerSize2D.hpp>
 #include <com/sun/star/graphic/XPrimitive2D.hpp>
-#include <com/sun/star/i18n/CharacterIteratorMode.hpp>
-#include <com/sun/star/i18n/WordType.hpp>
 #include <com/sun/star/lang/DisposedException.hpp>
 #include <com/sun/star/lang/EventObject.hpp>
 #include <com/sun/star/lang/NoSupportException.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
 #include <com/sun/star/lang/XTypeProvider.hpp>
 #include <com/sun/star/lang/XUnoTunnel.hpp>
 #include <com/sun/star/presentation/ParagraphTarget.hpp>
 #include <com/sun/star/presentation/XSlideShowView.hpp>
 #include <com/sun/star/rendering/XCanvas.hpp>
 #include <com/sun/star/style/XStyle.hpp>
-#include <com/sun/star/text/textfield/Type.hpp>
 #include <com/sun/star/uno/Any.h>
 #include <com/sun/star/uno/Any.hxx>
 #include <com/sun/star/uno/Reference.h>
@@ -209,7 +204,6 @@
 #include <com/sun/star/uno/Type.h>
 #include <com/sun/star/uno/Type.hxx>
 #include <com/sun/star/uno/TypeClass.hdl>
-#include <com/sun/star/uno/XAggregation.hpp>
 #include <com/sun/star/uno/XInterface.hpp>
 #include <com/sun/star/uno/XWeak.hpp>
 #include <com/sun/star/uno/genfunc.h>
@@ -217,16 +211,19 @@
 #include <com/sun/star/util/Date.hpp>
 #include <com/sun/star/util/DateTime.hpp>
 #include <com/sun/star/util/Time.hpp>
+#include <com/sun/star/util/XAccounting.hpp>
+#include <comphelper/compbase.hxx>
 #include <comphelper/comphelperdllapi.h>
-#include <comphelper/interfacecontainer2.hxx>
-#include <comphelper/propertysetinfo.hxx>
+#include <comphelper/interfacecontainer4.hxx>
 #include <comphelper/weak.hxx>
 #include <cppcanvas/basegfxfactory.hxx>
+#include <cppcanvas/bitmap.hxx>
 #include <cppcanvas/bitmapcanvas.hxx>
 #include <cppcanvas/canvas.hxx>
 #include <cppcanvas/canvasgraphic.hxx>
 #include <cppcanvas/color.hxx>
 #include <cppcanvas/customsprite.hxx>
+#include <cppcanvas/renderer.hxx>
 #include <cppcanvas/vclfactory.hxx>
 #include <cppu/cppudllapi.h>
 #include <cppu/unotype.hxx>
@@ -237,37 +234,33 @@
 #include <cppuhelper/implbase_ex.hxx>
 #include <cppuhelper/implbase_ex_post.hxx>
 #include <cppuhelper/implbase_ex_pre.hxx>
+#include <cppuhelper/queryinterface.hxx>
 #include <cppuhelper/weak.hxx>
-#include <cppuhelper/weakagg.hxx>
 #include <cppuhelper/weakref.hxx>
 #include <drawinglayer/drawinglayerdllapi.h>
+#include <drawinglayer/geometry/viewinformation2d.hxx>
 #include <drawinglayer/primitive2d/CommonTypes.hxx>
 #include <drawinglayer/primitive2d/Primitive2DContainer.hxx>
 #include <drawinglayer/primitive2d/Primitive2DVisitor.hxx>
-#include <editeng/editdata.hxx>
-#include <editeng/editeng.hxx>
+#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
 #include <editeng/editengdllapi.h>
-#include <editeng/editobj.hxx>
-#include <editeng/editstat.hxx>
-#include <editeng/eedata.hxx>
-#include <editeng/macros.hxx>
 #include <editeng/outlobj.hxx>
 #include <editeng/paragraphdata.hxx>
 #include <i18nlangtag/lang.h>
 #include <o3tl/cow_wrapper.hxx>
 #include <o3tl/safeint.hxx>
-#include <o3tl/sorted_vector.hxx>
+#include <o3tl/span.hxx>
 #include <o3tl/strong_int.hxx>
 #include <o3tl/typed_flags_set.hxx>
 #include <o3tl/underlyingenumvalue.hxx>
 #include <o3tl/unit_conversion.hxx>
+#include <salhelper/salhelperdllapi.h>
 #include <salhelper/simplereferenceobject.hxx>
 #include <svl/SfxBroadcaster.hxx>
 #include <svl/cenumitm.hxx>
 #include <svl/eitem.hxx>
 #include <svl/hint.hxx>
 #include <svl/itemset.hxx>
-#include <svl/languageoptions.hxx>
 #include <svl/lstner.hxx>
 #include <svl/macitem.hxx>
 #include <svl/poolitem.hxx>
@@ -324,7 +317,6 @@
 #include <uno/data.h>
 #include <uno/sequence2.h>
 #include <unotools/fontdefs.hxx>
-#include <unotools/options.hxx>
 #include <unotools/resmgr.hxx>
 #include <unotools/syslocale.hxx>
 #include <unotools/unotoolsdllapi.h>
@@ -332,13 +324,15 @@
 #if PCH_LEVEL >= 4
 #include <activitiesfactory.hxx>
 #include <activitiesqueue.hxx>
+#include <animatableshape.hxx>
+#include <animatedsprite.hxx>
 #include <animationfactory.hxx>
-#include <animationnode.hxx>
+#include <attributableshape.hxx>
 #include <cursormanager.hxx>
 #include <delayevent.hxx>
 #include <disposable.hxx>
 #include <doctreenode.hxx>
-#include <event.hxx>
+#include <doctreenodesupplier.hxx>
 #include <eventmultiplexer.hxx>
 #include <eventqueue.hxx>
 #include <rgbcolor.hxx>
@@ -353,6 +347,7 @@
 #include <unoview.hxx>
 #include <unoviewcontainer.hxx>
 #include <usereventqueue.hxx>
+#include <viewlayer.hxx>
 #endif // PCH_LEVEL >= 4
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/slideshow/source/engine/shapes/gdimtftools.cxx 
b/slideshow/source/engine/shapes/gdimtftools.cxx
index 6a803f757711..27de050da778 100644
--- a/slideshow/source/engine/shapes/gdimtftools.cxx
+++ b/slideshow/source/engine/shapes/gdimtftools.cxx
@@ -276,14 +276,14 @@ bool getAnimationFromGraphic( VectorOfMtfAnimationFrames& 
  o_rFrames,
 
     for( sal_uInt16 i=0, nCount=aAnimation.Count(); i<nCount; ++i )
     {
-        const AnimationBitmap& rAnimationBitmap( aAnimation.Get(i) );
-        switch(rAnimationBitmap.meDisposal)
+        const AnimationFrame& rAnimationFrame( aAnimation.Get(i) );
+        switch(rAnimationFrame.meDisposal)
         {
             case Disposal::Not:
             {
-                pVDev->DrawBitmapEx(rAnimationBitmap.maPositionPixel,
-                                    rAnimationBitmap.maBitmapEx);
-                Bitmap aMask = rAnimationBitmap.maBitmapEx.GetAlpha();
+                pVDev->DrawBitmapEx(rAnimationFrame.maPositionPixel,
+                                    rAnimationFrame.maBitmapEx);
+                Bitmap aMask = rAnimationFrame.maBitmapEx.GetAlpha();
 
                 if( aMask.IsEmpty() )
                 {
@@ -296,7 +296,7 @@ bool getAnimationFromGraphic( VectorOfMtfAnimationFrames&   
o_rFrames,
                 else
                 {
                     BitmapEx aTmpMask(aMask, aMask);
-                    pVDevMask->DrawBitmapEx(rAnimationBitmap.maPositionPixel,
+                    pVDevMask->DrawBitmapEx(rAnimationFrame.maPositionPixel,
                                             aTmpMask );
                 }
                 break;
@@ -305,32 +305,32 @@ bool getAnimationFromGraphic( VectorOfMtfAnimationFrames& 
  o_rFrames,
             case Disposal::Back:
             {
                 // #i70772# react on no mask
-                const Bitmap aMask(rAnimationBitmap.maBitmapEx.GetAlpha());
-                const Bitmap & 
rContent(rAnimationBitmap.maBitmapEx.GetBitmap());
+                const Bitmap aMask(rAnimationFrame.maBitmapEx.GetAlpha());
+                const Bitmap & 
rContent(rAnimationFrame.maBitmapEx.GetBitmap());
 
                 pVDevMask->Erase();
-                pVDev->DrawBitmap(rAnimationBitmap.maPositionPixel, rContent);
+                pVDev->DrawBitmap(rAnimationFrame.maPositionPixel, rContent);
 
                 if(aMask.IsEmpty())
                 {
-                    const tools::Rectangle 
aRect(rAnimationBitmap.maPositionPixel, rContent.GetSizePixel());
+                    const tools::Rectangle 
aRect(rAnimationFrame.maPositionPixel, rContent.GetSizePixel());
                     pVDevMask->SetFillColor( COL_BLACK);
                     pVDevMask->SetLineColor();
                     pVDevMask->DrawRect(aRect);
                 }
                 else
                 {
-                    pVDevMask->DrawBitmap(rAnimationBitmap.maPositionPixel, 
aMask);
+                    pVDevMask->DrawBitmap(rAnimationFrame.maPositionPixel, 
aMask);
                 }
                 break;
             }
 
             case Disposal::Previous :
             {
-                pVDev->DrawBitmapEx(rAnimationBitmap.maPositionPixel,
-                                    rAnimationBitmap.maBitmapEx);
-                pVDevMask->DrawBitmap(rAnimationBitmap.maPositionPixel,
-                                      rAnimationBitmap.maBitmapEx.GetAlpha());
+                pVDev->DrawBitmapEx(rAnimationFrame.maPositionPixel,
+                                    rAnimationFrame.maBitmapEx);
+                pVDevMask->DrawBitmap(rAnimationFrame.maPositionPixel,
+                                      rAnimationFrame.maBitmapEx.GetAlpha());
                 break;
             }
         }
@@ -356,7 +356,7 @@ bool getAnimationFromGraphic( VectorOfMtfAnimationFrames&   
o_rFrames,
 
         // Take care of special value for MultiPage TIFFs. ATM these shall just
         // show their first page for _quite_ some time.
-        sal_Int32 nWaitTime100thSeconds(rAnimationBitmap.mnWait);
+        sal_Int32 nWaitTime100thSeconds(rAnimationFrame.mnWait);
         if( ANIMATION_TIMEOUT_ON_CLICK == nWaitTime100thSeconds )
         {
             // ATM the huge value would block the timer, so use a long
diff --git a/svtools/inc/pch/precompiled_svt.hxx 
b/svtools/inc/pch/precompiled_svt.hxx
index 04ca2552bddb..cbd81b59fa4c 100644
--- a/svtools/inc/pch/precompiled_svt.hxx
+++ b/svtools/inc/pch/precompiled_svt.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2021-04-08 13:56:44 using:
+ Generated on 2022-09-15 18:58:50 using:
  ./bin/update_pch svtools svt --cutoff=4 --exclude:system --include:module 
--exclude:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -23,6 +23,7 @@
 #include <sal/config.h>
 #if PCH_LEVEL >= 1
 #include <algorithm>
+#include <array>
 #include <cassert>
 #include <chrono>
 #include <cmath>
@@ -39,10 +40,11 @@
 #include <map>
 #include <math.h>
 #include <memory>
+#include <mutex>
 #include <new>
+#include <numeric>
 #include <optional>
 #include <ostream>
-#include <set>
 #include <stddef.h>
 #include <string.h>
 #include <string>
@@ -55,8 +57,10 @@
 #endif // PCH_LEVEL >= 1
 #if PCH_LEVEL >= 2
 #include <osl/diagnose.h>
+#include <osl/doublecheckedlocking.h>
 #include <osl/endian.h>
 #include <osl/file.hxx>
+#include <osl/getglobalmutex.hxx>
 #include <osl/interlck.h>
 #include <osl/mutex.hxx>
 #include <osl/thread.h>
@@ -64,7 +68,7 @@
 #include <rtl/alloc.h>
 #include <rtl/bootstrap.hxx>
 #include <rtl/character.hxx>
-#include <rtl/instance.hxx>
+#include <rtl/locale.h>
 #include <rtl/math.h>
 #include <rtl/math.hxx>
 #include <rtl/ref.hxx>
@@ -93,10 +97,10 @@
 #include <vcl/BinaryDataContainer.hxx>
 #include <vcl/GraphicExternalLink.hxx>
 #include <vcl/Scanline.hxx>
-#include <vcl/accessiblefactory.hxx>
+#include <vcl/WindowPosSize.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
@@ -104,17 +108,13 @@
 #include <vcl/commandevent.hxx>
 #include <vcl/ctrl.hxx>
 #include <vcl/dllapi.h>
-#include <vcl/dockwin.hxx>
-#include <comphelper/errcode.hxx>
 #include <vcl/event.hxx>
 #include <vcl/fntstyle.hxx>
 #include <vcl/font.hxx>
 #include <vcl/gfxlink.hxx>
+#include <vcl/gradient.hxx>
 #include <vcl/graph.hxx>
-#include <vcl/graphicfilter.hxx>
-#include <vcl/help.hxx>
 #include <vcl/idle.hxx>
-#include <vcl/image.hxx>
 #include <vcl/imapobj.hxx>
 #include <vcl/keycod.hxx>
 #include <vcl/keycodes.hxx>
@@ -123,12 +123,14 @@
 #include <vcl/prntypes.hxx>
 #include <vcl/ptrstyle.hxx>
 #include <vcl/region.hxx>
+#include <vcl/rendercontext/RasterOp.hxx>
 #include <vcl/scopedbitmapaccess.hxx>
 #include <vcl/settings.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/syswin.hxx>
 #include <vcl/task.hxx>
 #include <vcl/timer.hxx>
+#include <vcl/toolboxid.hxx>
 #include <vcl/transfer.hxx>
 #include <vcl/vclenum.hxx>
 #include <vcl/vclptr.hxx>
@@ -141,23 +143,29 @@
 #if PCH_LEVEL >= 3
 #include <basegfx/basegfxdllapi.h>
 #include <basegfx/color/bcolor.hxx>
+#include <basegfx/matrix/b2dhommatrix.hxx>
 #include <basegfx/numeric/ftools.hxx>
 #include <basegfx/point/b2dpoint.hxx>
 #include <basegfx/point/b2ipoint.hxx>
 #include <basegfx/polygon/b2dpolygon.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
+#include <basegfx/range/Range2D.hxx>
 #include <basegfx/range/b2drange.hxx>
 #include <basegfx/range/basicrange.hxx>
+#include <basegfx/tuple/Size2D.hxx>
+#include <basegfx/tuple/Tuple2D.hxx>
+#include <basegfx/tuple/Tuple3D.hxx>
 #include <basegfx/tuple/b2dtuple.hxx>
+#include <basegfx/tuple/b2i64tuple.hxx>
 #include <basegfx/tuple/b2ituple.hxx>
 #include <basegfx/tuple/b3dtuple.hxx>
 #include <basegfx/utils/common.hxx>
 #include <basegfx/vector/b2dsize.hxx>
 #include <basegfx/vector/b2dvector.hxx>
 #include <basegfx/vector/b2enums.hxx>
+#include <basegfx/vector/b2isize.hxx>
 #include <basegfx/vector/b2ivector.hxx>
 #include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #include <com/sun/star/awt/Key.hpp>
 #include <com/sun/star/awt/KeyGroup.hpp>
 #include <com/sun/star/awt/XWindow.hpp>
@@ -184,6 +192,7 @@
 #include <com/sun/star/datatransfer/dnd/XDragGestureListener.hpp>
 #include <com/sun/star/datatransfer/dnd/XDragSourceListener.hpp>
 #include <com/sun/star/datatransfer/dnd/XDropTargetListener.hpp>
+#include <com/sun/star/drawing/LineCap.hpp>
 #include <com/sun/star/embed/Aspects.hpp>
 #include <com/sun/star/frame/XDispatch.hpp>
 #include <com/sun/star/frame/XDispatchProvider.hpp>
@@ -191,13 +200,17 @@
 #include <com/sun/star/frame/XStatusListener.hpp>
 #include <com/sun/star/frame/XTerminateListener.hpp>
 #include <com/sun/star/i18n/Calendar2.hpp>
+#include <com/sun/star/i18n/DirectionProperty.hpp>
 #include <com/sun/star/i18n/ForbiddenCharacters.hpp>
+#include <com/sun/star/i18n/KCharacterType.hpp>
 #include <com/sun/star/i18n/LanguageCountryInfo.hpp>
 #include <com/sun/star/i18n/LocaleDataItem2.hpp>
 #include <com/sun/star/i18n/LocaleItem.hpp>
 #include <com/sun/star/i18n/NativeNumberXmlAttributes.hpp>
+#include <com/sun/star/i18n/ParseResult.hpp>
 #include <com/sun/star/i18n/TransliterationModules.hpp>
 #include <com/sun/star/i18n/TransliterationModulesExtra.hpp>
+#include <com/sun/star/i18n/UnicodeScript.hpp>
 #include <com/sun/star/i18n/reservedWords.hpp>
 #include <com/sun/star/lang/DisposedException.hpp>
 #include <com/sun/star/lang/EventObject.hpp>
@@ -208,9 +221,7 @@
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <com/sun/star/lang/XTypeProvider.hpp>
 #include <com/sun/star/lang/XUnoTunnel.hpp>
-#include <com/sun/star/uno/Any.h>
 #include <com/sun/star/uno/Any.hxx>
-#include <com/sun/star/uno/Exception.hpp>
 #include <com/sun/star/uno/Reference.h>
 #include <com/sun/star/uno/Reference.hxx>
 #include <com/sun/star/uno/RuntimeException.hpp>
@@ -225,45 +236,54 @@
 #include <com/sun/star/uno/XWeak.hpp>
 #include <com/sun/star/util/Date.hpp>
 #include <com/sun/star/util/DateTime.hpp>
+#include <com/sun/star/util/NumberFormat.hpp>
 #include <com/sun/star/util/Time.hpp>
 #include <com/sun/star/util/URLTransformer.hpp>
 #include <com/sun/star/view/PrintableState.hpp>
 #include <comphelper/broadcasthelper.hxx>
 #include <comphelper/comphelperdllapi.h>
+#include <comphelper/diagnose_ex.hxx>
+#include <comphelper/errcode.hxx>
+#include <comphelper/interfacecontainer2.hxx>
+#include <comphelper/interfacecontainer4.hxx>
 #include <comphelper/lok.hxx>
+#include <comphelper/multicontainer2.hxx>
 #include <comphelper/processfactory.hxx>
 #include <comphelper/propagg.hxx>
 #include <comphelper/propertycontainer.hxx>
 #include <comphelper/propertycontainerhelper.hxx>
+#include <comphelper/propertyvalue.hxx>
 #include <comphelper/propstate.hxx>
 #include <comphelper/sequence.hxx>
 #include <comphelper/string.hxx>
 #include <comphelper/uno3.hxx>
 #include <cppu/cppudllapi.h>
 #include <cppu/unotype.hxx>
-#include <cppuhelper/basemutex.hxx>
-#include <cppuhelper/compbase.hxx>
-#include <cppuhelper/compbase_ex.hxx>
 #include <cppuhelper/cppuhelperdllapi.h>
 #include <cppuhelper/implbase.hxx>
 #include <cppuhelper/interfacecontainer.h>
-#include <cppuhelper/interfacecontainer.hxx>
 #include <cppuhelper/propshlp.hxx>
+#include <cppuhelper/queryinterface.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <cppuhelper/weak.hxx>
 #include <cppuhelper/weakagg.hxx>
 #include <cppuhelper/weakref.hxx>
+#include <i18nlangtag/i18nlangtagdllapi.h>
 #include <i18nlangtag/lang.h>
 #include <i18nlangtag/languagetag.hxx>
 #include <i18nutil/i18nutildllapi.h>
-#include <i18nutil/transliteration.hxx>
 #include <o3tl/cow_wrapper.hxx>
 #include <o3tl/deleter.hxx>
 #include <o3tl/safeint.hxx>
+#include <o3tl/span.hxx>
+#include <o3tl/string_view.hxx>
 #include <o3tl/strong_int.hxx>
 #include <o3tl/typed_flags_set.hxx>
 #include <o3tl/underlyingenumvalue.hxx>
+#include <o3tl/unit_conversion.hxx>
 #include <officecfg/Office/Common.hxx>
+#include <salhelper/salhelperdllapi.h>
+#include <salhelper/simplereferenceobject.hxx>
 #include <salhelper/thread.hxx>
 #include <sot/exchange.hxx>
 #include <sot/formats.hxx>
@@ -279,7 +299,6 @@
 #include <tools/datetime.hxx>
 #include <tools/debug.hxx>
 #include <tools/degree.hxx>
-#include <comphelper/diagnose_ex.hxx>
 #include <tools/fldunit.hxx>
 #include <tools/fontenum.hxx>
 #include <tools/fract.hxx>
@@ -288,6 +307,7 @@
 #include <tools/link.hxx>
 #include <tools/long.hxx>
 #include <tools/mapunit.hxx>
+#include <tools/poly.hxx>
 #include <tools/ref.hxx>
 #include <tools/solar.h>
 #include <tools/stream.hxx>
@@ -301,15 +321,12 @@
 #include <uno/any2.h>
 #include <uno/data.h>
 #include <uno/sequence2.h>
-#include <unotools/calendarwrapper.hxx>
 #include <unotools/configitem.hxx>
 #include <unotools/configmgr.hxx>
 #include <unotools/localedatawrapper.hxx>
-#include <unotools/nativenumberwrapper.hxx>
 #include <unotools/options.hxx>
 #include <unotools/streamwrap.hxx>
 #include <unotools/syslocale.hxx>
-#include <unotools/transliterationwrapper.hxx>
 #include <unotools/unotoolsdllapi.h>
 #endif // PCH_LEVEL >= 3
 #if PCH_LEVEL >= 4
@@ -318,6 +335,7 @@
 #include <svtools/colorcfg.hxx>
 #include <svtools/htmlkywd.hxx>
 #include <svtools/htmltokn.h>
+#include <svtools/scrolladaptor.hxx>
 #include <svtools/svtdllapi.h>
 #include <svtools/svtresid.hxx>
 #include <svtools/valueset.hxx>
diff --git a/svx/inc/pch/precompiled_svxcore.hxx 
b/svx/inc/pch/precompiled_svxcore.hxx
index 979ee4ce7b00..afa38f9c8175 100644
--- a/svx/inc/pch/precompiled_svxcore.hxx
+++ b/svx/inc/pch/precompiled_svxcore.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2022-06-27 18:59:31 using:
+ Generated on 2022-08-13 18:01:20 using:
  ./bin/update_pch svx svxcore --cutoff=7 --exclude:system --include:module 
--exclude:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -71,7 +71,6 @@
 #include <osl/mutex.h>
 #include <osl/mutex.hxx>
 #include <osl/process.h>
-#include <osl/thread.h>
 #include <osl/time.h>
 #include <rtl/alloc.h>
 #include <rtl/character.hxx>
@@ -109,7 +108,7 @@
 #include <vcl/WindowPosSize.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
diff --git a/svx/source/dialog/_bmpmask.cxx b/svx/source/dialog/_bmpmask.cxx
index 8a727909fb81..847ddaf4efbd 100644
--- a/svx/source/dialog/_bmpmask.cxx
+++ b/svx/source/dialog/_bmpmask.cxx
@@ -635,9 +635,9 @@ Animation SvxBmpMask::ImpMask( const Animation& rAnimation )
 
     for( sal_uInt16 i = 0; i < nAnimationCount; i++ )
     {
-        AnimationBitmap aAnimationBitmap( aAnimation.Get( i ) );
-        aAnimationBitmap.maBitmapEx = 
Mask(aAnimationBitmap.maBitmapEx).GetBitmapEx();
-        aAnimation.Replace(aAnimationBitmap, i);
+        AnimationFrame aAnimationFrame( aAnimation.Get( i ) );
+        aAnimationFrame.maBitmapEx = 
Mask(aAnimationFrame.maBitmapEx).GetBitmapEx();
+        aAnimation.Replace(aAnimationFrame, i);
     }
 
     return aAnimation;
@@ -892,9 +892,9 @@ Animation SvxBmpMask::ImpReplaceTransparency( const 
Animation& rAnim, const Colo
 
     for( sal_uInt16 i = 0; i < nAnimationCount; i++ )
     {
-        AnimationBitmap aAnimationBitmap(aAnimation.Get(i));
-        aAnimationBitmap.maBitmapEx.ReplaceTransparency(rColor);
-        aAnimation.Replace(aAnimationBitmap, i);
+        AnimationFrame aAnimationFrame(aAnimation.Get(i));
+        aAnimationFrame.maBitmapEx.ReplaceTransparency(rColor);
+        aAnimation.Replace(aAnimationFrame, i);
     }
 
     return aAnimation;
diff --git a/svx/source/dialog/_contdlg.cxx b/svx/source/dialog/_contdlg.cxx
index fbd6f40bc547..3ae8cba852e0 100644
--- a/svx/source/dialog/_contdlg.cxx
+++ b/svx/source/dialog/_contdlg.cxx
@@ -99,7 +99,7 @@ tools::PolyPolygon SvxContourDlg::CreateAutoContour( const 
Graphic& rGraphic,
 
                 for( sal_uInt16 i = 0; i < nCount; i++ )
                 {
-                    const AnimationBitmap& rStepBmp = aAnim.Get( i );
+                    const AnimationFrame& rStepBmp = aAnim.Get( i );
 
                     // Push Polygon output to the right place; this is the
                     // offset of the sub-image within the total animation
diff --git a/svx/source/xoutdev/_xoutbmp.cxx b/svx/source/xoutdev/_xoutbmp.cxx
index cb690df32623..7241fedfe043 100644
--- a/svx/source/xoutdev/_xoutbmp.cxx
+++ b/svx/source/xoutdev/_xoutbmp.cxx
@@ -55,21 +55,21 @@ Animation XOutBitmap::MirrorAnimation( const Animation& 
rAnimation, bool bHMirr,
 
         for( sal_uInt16 i = 0, nCount = aNewAnim.Count(); i < nCount; i++ )
         {
-            AnimationBitmap aAnimationBitmap( aNewAnim.Get( i ) );
+            AnimationFrame aAnimationFrame( aNewAnim.Get( i ) );
 
             // mirror the BitmapEx
-            aAnimationBitmap.maBitmapEx.Mirror( nMirrorFlags );
+            aAnimationFrame.maBitmapEx.Mirror( nMirrorFlags );
 
             // Adjust the positions inside the whole bitmap
             if( bHMirr )
-                aAnimationBitmap.maPositionPixel.setX(rGlobalSize.Width() - 
aAnimationBitmap.maPositionPixel.X() -
-                                       aAnimationBitmap.maSizePixel.Width());
+                aAnimationFrame.maPositionPixel.setX(rGlobalSize.Width() - 
aAnimationFrame.maPositionPixel.X() -
+                                       aAnimationFrame.maSizePixel.Width());
 
             if( bVMirr )
-                aAnimationBitmap.maPositionPixel.setY(rGlobalSize.Height() - 
aAnimationBitmap.maPositionPixel.Y() -
-                                       aAnimationBitmap.maSizePixel.Height());
+                aAnimationFrame.maPositionPixel.setY(rGlobalSize.Height() - 
aAnimationFrame.maPositionPixel.Y() -
+                                       aAnimationFrame.maSizePixel.Height());
 
-            aNewAnim.Replace(aAnimationBitmap, i);
+            aNewAnim.Replace(aAnimationFrame, i);
         }
     }
 
diff --git a/sw/inc/pch/precompiled_msword.hxx 
b/sw/inc/pch/precompiled_msword.hxx
index 1eeb5d6dcdf0..1fd81643c451 100644
--- a/sw/inc/pch/precompiled_msword.hxx
+++ b/sw/inc/pch/precompiled_msword.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2021-12-11 12:58:53 using:
+ Generated on 2022-08-13 18:01:38 using:
  ./bin/update_pch sw msword --cutoff=4 --exclude:system --include:module 
--include:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -51,6 +51,7 @@
 #include <optional>
 #include <ostream>
 #include <set>
+#include <stack>
 #include <stddef.h>
 #include <string.h>
 #include <string>
@@ -77,8 +78,6 @@
 #include <osl/interlck.h>
 #include <osl/mutex.h>
 #include <osl/mutex.hxx>
-#include <osl/thread.h>
-#include <osl/time.h>
 #include <rtl/alloc.h>
 #include <rtl/character.hxx>
 #include <rtl/cipher.h>
@@ -102,7 +101,6 @@
 #include <rtl/ustrbuf.hxx>
 #include <rtl/ustring.h>
 #include <rtl/ustring.hxx>
-#include <rtl/uuid.h>
 #include <sal/backtrace.hxx>
 #include <sal/detail/log.h>
 #include <sal/log.hxx>
@@ -116,9 +114,10 @@
 #include <vcl/GraphicExternalLink.hxx>
 #include <vcl/GraphicObject.hxx>
 #include <vcl/Scanline.hxx>
+#include <vcl/WindowPosSize.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
@@ -168,6 +167,7 @@
 #include <vcl/vectorgraphicdata.hxx>
 #include <vcl/wall.hxx>
 #include <vcl/weld.hxx>
+#include <vcl/windowstate.hxx>
 #endif // PCH_LEVEL >= 2
 #if PCH_LEVEL >= 3
 #include <basegfx/basegfxdllapi.h>
@@ -178,6 +178,7 @@
 #include <basegfx/point/b2ipoint.hxx>
 #include <basegfx/polygon/b2dpolygon.hxx>
 #include <basegfx/polygon/b2dpolypolygon.hxx>
+#include <basegfx/range/Range2D.hxx>
 #include <basegfx/range/b2drange.hxx>
 #include <basegfx/range/b2drectangle.hxx>
 #include <basegfx/range/b2irange.hxx>
@@ -213,6 +214,7 @@
 #include <com/sun/star/awt/XBitmap.hpp>
 #include <com/sun/star/beans/PropertyState.hpp>
 #include <com/sun/star/beans/PropertyValue.hpp>
+#include <com/sun/star/beans/PropertyValues.hpp>
 #include <com/sun/star/beans/XPropertySet.hpp>
 #include <com/sun/star/beans/XPropertyState.hpp>
 #include <com/sun/star/container/XEnumeration.hpp>
@@ -226,6 +228,11 @@
 #include <com/sun/star/document/XEventsSupplier.hpp>
 #include <com/sun/star/drawing/BitmapMode.hpp>
 #include <com/sun/star/drawing/DashStyle.hpp>
+#include <com/sun/star/drawing/EnhancedCustomShapeAdjustmentValue.hpp>
+#include <com/sun/star/drawing/EnhancedCustomShapeParameter.hpp>
+#include <com/sun/star/drawing/EnhancedCustomShapeParameterPair.hpp>
+#include <com/sun/star/drawing/EnhancedCustomShapeSegment.hpp>
+#include <com/sun/star/drawing/EnhancedCustomShapeTextFrame.hpp>
 #include <com/sun/star/drawing/Hatch.hpp>
 #include <com/sun/star/drawing/HatchStyle.hpp>
 #include <com/sun/star/drawing/LineCap.hpp>
@@ -261,18 +268,19 @@
 #include <com/sun/star/lang/EventObject.hpp>
 #include <com/sun/star/lang/IllegalArgumentException.hpp>
 #include <com/sun/star/lang/Locale.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <com/sun/star/lang/XTypeProvider.hpp>
 #include <com/sun/star/lang/XUnoTunnel.hpp>
 #include <com/sun/star/rdf/XDocumentMetadataAccess.hpp>
-#include <com/sun/star/style/LineSpacing.hpp>
 #include <com/sun/star/style/NumberingType.hpp>
 #include <com/sun/star/style/ParagraphAdjust.hpp>
 #include <com/sun/star/style/TabAlign.hpp>
 #include <com/sun/star/style/XStyle.hpp>
 #include <com/sun/star/text/RubyAdjust.hpp>
 #include <com/sun/star/text/TextContentAnchorType.hpp>
+#include <com/sun/star/text/XTextContent.hpp>
 #include <com/sun/star/text/textfield/Type.hpp>
 #include <com/sun/star/uno/Any.h>
 #include <com/sun/star/uno/Any.hxx>
@@ -284,7 +292,6 @@
 #include <com/sun/star/uno/Type.h>
 #include <com/sun/star/uno/Type.hxx>
 #include <com/sun/star/uno/TypeClass.hdl>
-#include <com/sun/star/uno/XAggregation.hpp>
 #include <com/sun/star/uno/XComponentContext.hpp>
 #include <com/sun/star/uno/XInterface.hpp>
 #include <com/sun/star/uno/XWeak.hpp>
@@ -294,13 +301,15 @@
 #include <com/sun/star/util/DateTime.hpp>
 #include <com/sun/star/util/NumberFormat.hpp>
 #include <com/sun/star/util/Time.hpp>
+#include <com/sun/star/util/XAccounting.hpp>
 #include <com/sun/star/xml/sax/XFastAttributeList.hpp>
+#include <comphelper/compbase.hxx>
 #include <comphelper/comphelperdllapi.h>
+#include <comphelper/interfacecontainer4.hxx>
 #include <comphelper/processfactory.hxx>
 #include <comphelper/propertysequence.hxx>
 #include <comphelper/sequence.hxx>
 #include <comphelper/sequenceashashmap.hxx>
-#include <comphelper/servicehelper.hxx>
 #include <comphelper/string.hxx>
 #include <comphelper/weak.hxx>
 #include <cppu/cppudllapi.h>
@@ -311,12 +320,15 @@
 #include <cppuhelper/implbase_ex.hxx>
 #include <cppuhelper/implbase_ex_post.hxx>
 #include <cppuhelper/implbase_ex_pre.hxx>
+#include <cppuhelper/queryinterface.hxx>
 #include <cppuhelper/weak.hxx>
 #include <cppuhelper/weakref.hxx>
 #include <drawinglayer/drawinglayerdllapi.h>
+#include <drawinglayer/geometry/viewinformation2d.hxx>
 #include <drawinglayer/primitive2d/CommonTypes.hxx>
 #include <drawinglayer/primitive2d/Primitive2DContainer.hxx>
 #include <drawinglayer/primitive2d/Primitive2DVisitor.hxx>
+#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
 #include <editeng/autokernitem.hxx>
 #include <editeng/blinkitem.hxx>
 #include <editeng/boxitem.hxx>
@@ -371,27 +383,27 @@
 #include <i18nlangtag/i18nlangtagdllapi.h>
 #include <i18nlangtag/lang.h>
 #include <i18nlangtag/languagetag.hxx>
-#include <i18nutil/transliteration.hxx>
 #include <o3tl/cow_wrapper.hxx>
 #include <o3tl/deleter.hxx>
 #include <o3tl/enumarray.hxx>
 #include <o3tl/safeint.hxx>
 #include <o3tl/sorted_vector.hxx>
 #include <o3tl/span.hxx>
+#include <o3tl/string_view.hxx>
 #include <o3tl/strong_int.hxx>
 #include <o3tl/typed_flags_set.hxx>
 #include <o3tl/underlyingenumvalue.hxx>
 #include <o3tl/unit_conversion.hxx>
 #include <ooo/vba/XHelperInterface.hpp>
-#include <ooo/vba/word/XParagraphFormat.hpp>
+#include <ooo/vba/word/XWrapFormat.hpp>
 #include <oox/dllapi.h>
 #include <oox/drawingml/drawingmltypes.hxx>
 #include <oox/export/utils.hxx>
 #include <oox/helper/binarystreambase.hxx>
-#include <oox/helper/helper.hxx>
 #include <oox/helper/refmap.hxx>
 #include <oox/helper/storagebase.hxx>
 #include <oox/token/tokens.hxx>
+#include <salhelper/salhelperdllapi.h>
 #include <salhelper/simplereferenceobject.hxx>
 #include <sax/fshelper.hxx>
 #include <sax/saxdllapi.h>
@@ -412,10 +424,9 @@
 #include <svl/itemiter.hxx>
 #include <svl/itemset.hxx>
 #include <svl/languageoptions.hxx>
+#include <svl/listener.hxx>
 #include <svl/lstner.hxx>
 #include <svl/metitem.hxx>
-#include <svl/nfkeytab.hxx>
-#include <svl/ondemand.hxx>
 #include <svl/poolitem.hxx>
 #include <svl/stritem.hxx>
 #include <svl/style.hxx>
@@ -429,11 +440,13 @@
 #include <svl/zforlist.hxx>
 #include <svtools/colorcfg.hxx>
 #include <svtools/svtdllapi.h>
+#include <svx/EnhancedCustomShape2d.hxx>
+#include <svx/EnhancedCustomShapeFunctionParser.hxx>
 #include <svx/XPropertyEntry.hxx>
-#include <svx/flagsdef.hxx>
 #include <svx/ipolypolygoneditorcontroller.hxx>
 #include <svx/itextprovider.hxx>
 #include <svx/msdffdef.hxx>
+#include <svx/sdasitm.hxx>
 #include <svx/sdmetitm.hxx>
 #include <svx/sdooitm.hxx>
 #include <svx/sdr/animation/scheduler.hxx>
@@ -478,7 +491,6 @@
 #include <svx/svdxcgv.hxx>
 #include <svx/svxdllapi.h>
 #include <svx/swframetypes.hxx>
-#include <svx/unoapi.hxx>
 #include <svx/xdash.hxx>
 #include <svx/xdef.hxx>
 #include <svx/xfillit0.hxx>
@@ -488,7 +500,6 @@
 #include <svx/xit.hxx>
 #include <svx/xpoly.hxx>
 #include <svx/xtable.hxx>
-#include <tools/UnitConversion.hxx>
 #include <tools/color.hxx>
 #include <tools/date.hxx>
 #include <tools/datetime.hxx>
@@ -519,22 +530,20 @@
 #include <uno/any2.h>
 #include <uno/data.h>
 #include <uno/sequence2.h>
-#include <unotools/calendarwrapper.hxx>
-#include <unotools/charclass.hxx>
 #include <unotools/fltrcfg.hxx>
 #include <unotools/fontdefs.hxx>
 #include <unotools/localedatawrapper.hxx>
-#include <unotools/nativenumberwrapper.hxx>
 #include <unotools/options.hxx>
 #include <unotools/resmgr.hxx>
 #include <unotools/streamwrap.hxx>
 #include <unotools/syslocale.hxx>
-#include <unotools/transliterationwrapper.hxx>
 #include <unotools/ucbstreamhelper.hxx>
 #include <unotools/unotoolsdllapi.h>
+#include <unotools/weakref.hxx>
 #include <vbahelper/vbadllapi.h>
 #include <vbahelper/vbahelper.hxx>
 #include <vbahelper/vbahelperinterface.hxx>
+#include <xmloff/odffields.hxx>
 #endif // PCH_LEVEL >= 3
 #if PCH_LEVEL >= 4
 #include <BorderCacheOwner.hxx>
@@ -550,6 +559,7 @@
 #include <breakit.hxx>
 #include <calbck.hxx>
 #include <charfmt.hxx>
+#include <contentindex.hxx>
 #include <doc.hxx>
 #include <docary.hxx>
 #include <docsh.hxx>
@@ -577,18 +587,20 @@
 #include <fmtruby.hxx>
 #include <fmturl.hxx>
 #include <format.hxx>
+#include <formatcontentcontrol.hxx>
+#include <formatlinebreak.hxx>
 #include <frmatr.hxx>
 #include <frmfmt.hxx>
 #include <ftninfo.hxx>
 #include <grfatr.hxx>
 #include <hintids.hxx>
-#include <contentindex.hxx>
 #include <lineinfo.hxx>
 #include <mdiexp.hxx>
 #include <msfilter.hxx>
 #include <ndarr.hxx>
 #include <ndgrf.hxx>
 #include <ndhints.hxx>
+#include <ndindex.hxx>
 #include <ndole.hxx>
 #include <ndtxt.hxx>
 #include <ndtyp.hxx>
diff --git a/sw/inc/pch/precompiled_swui.hxx b/sw/inc/pch/precompiled_swui.hxx
index 1a8d377d985f..6b7eed00a85b 100644
--- a/sw/inc/pch/precompiled_swui.hxx
+++ b/sw/inc/pch/precompiled_swui.hxx
@@ -13,7 +13,7 @@
  manual changes will be rewritten by the next run of update_pch.sh (which 
presumably
  also fixes all possible problems, so it's usually better to use it).
 
- Generated on 2022-06-27 18:58:17 using:
+ Generated on 2022-08-13 18:01:29 using:
  ./bin/update_pch sw swui --cutoff=3 --exclude:system --include:module 
--include:local
 
  If after updating build fails, use the following command to locate 
conflicting headers:
@@ -106,7 +106,7 @@
 #include <vcl/accessibletableprovider.hxx>
 #include <vcl/alpha.hxx>
 #include <vcl/animate/Animation.hxx>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 #include <vcl/bitmap.hxx>
 #include <vcl/bitmap/BitmapTypes.hxx>
 #include <vcl/bitmapex.hxx>
@@ -511,6 +511,7 @@
 #include <unotools/syslocale.hxx>
 #include <unotools/unotoolsdllapi.h>
 #include <unotools/viewoptions.hxx>
+#include <unotools/weakref.hxx>
 #include <vbahelper/vbadllapi.h>
 #include <vbahelper/vbahelper.hxx>
 #include <vbahelper/vbahelperinterface.hxx>
@@ -531,6 +532,7 @@
 #include <cnttab.hxx>
 #include <column.hxx>
 #include <condedit.hxx>
+#include <contentindex.hxx>
 #include <dbmgr.hxx>
 #include <doc.hxx>
 #include <docary.hxx>
@@ -565,7 +567,6 @@
 #include <frmpage.hxx>
 #include <glossary.hxx>
 #include <hintids.hxx>
-#include <contentindex.hxx>
 #include <label.hxx>
 #include <labimg.hxx>
 #include <macassgn.hxx>
diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk
index caaacdddca39..2b12fabe987b 100644
--- a/vcl/Library_vcl.mk
+++ b/vcl/Library_vcl.mk
@@ -101,7 +101,7 @@ $(eval $(call gb_Library_add_exception_objects,vcl,\
     vcl/source/rendercontext/drawmode \
     vcl/skia/SkiaHelper \
     vcl/source/animate/Animation \
-    vcl/source/animate/AnimationBitmap \
+    vcl/source/animate/AnimationFrame \
     vcl/source/animate/AnimationRenderer \
     vcl/source/cnttype/mcnttfactory \
     vcl/source/cnttype/mcnttype \
diff --git a/vcl/inc/animate/AnimationRenderer.hxx 
b/vcl/inc/animate/AnimationRenderer.hxx
index bd4bdc61019e..0466518dfb1d 100644
--- a/vcl/inc/animate/AnimationRenderer.hxx
+++ b/vcl/inc/animate/AnimationRenderer.hxx
@@ -26,7 +26,7 @@
 class Animation;
 class OutputDevice;
 class VirtualDevice;
-struct AnimationBitmap;
+struct AnimationFrame;
 
 struct AnimationData
 {
@@ -78,9 +78,9 @@ public:
     void            drawToIndex( sal_uLong nIndex );
     void            draw( sal_uLong nIndex, VirtualDevice* pVDev=nullptr );
     void            repaint();
-    AnimationData*          createAnimationData() const;
+    AnimationData*  createAnimationData() const;
 
-    void            getPosSize( const AnimationBitmap& rAnm, Point& rPosPix, 
Size& rSizePix );
+    void            getPosSize( const AnimationFrame& rAnm, Point& rPosPix, 
Size& rSizePix );
 
     const Point&    getOriginPosition() const { return maOriginPt; }
 
diff --git a/vcl/qa/cppunit/animation.cxx b/vcl/qa/cppunit/animation.cxx
index e9e308ff7190..bbedacbdf303 100644
--- a/vcl/qa/cppunit/animation.cxx
+++ b/vcl/qa/cppunit/animation.cxx
@@ -36,11 +36,11 @@ void VclAnimationTest::testFrameCount()
     CPPUNIT_ASSERT_EQUAL(size_t(0), aAnimation.Count());
 
     aAnimation.Insert(
-        AnimationBitmap(BitmapEx(Size(3, 4), vcl::PixelFormat::N24_BPP), 
Point(0, 0), Size(3, 4)));
+        AnimationFrame(BitmapEx(Size(3, 4), vcl::PixelFormat::N24_BPP), 
Point(0, 0), Size(3, 4)));
     CPPUNIT_ASSERT_EQUAL(size_t(1), aAnimation.Count());
 
-    aAnimation.Insert(AnimationBitmap(BitmapEx(Size(3, 3), 
vcl::PixelFormat::N24_BPP), Point(0, 0),
-                                      Size(10, 10)));
+    aAnimation.Insert(
+        AnimationFrame(BitmapEx(Size(3, 3), vcl::PixelFormat::N24_BPP), 
Point(0, 0), Size(10, 10)));
     CPPUNIT_ASSERT_EQUAL(size_t(2), aAnimation.Count());
 
     aAnimation.Clear();
@@ -53,11 +53,11 @@ void VclAnimationTest::testDisplaySize()
     CPPUNIT_ASSERT_EQUAL(Size(0, 0), aAnimation.GetDisplaySizePixel());
 
     aAnimation.Insert(
-        AnimationBitmap(BitmapEx(Size(3, 4), vcl::PixelFormat::N24_BPP), 
Point(0, 0), Size(3, 4)));
+        AnimationFrame(BitmapEx(Size(3, 4), vcl::PixelFormat::N24_BPP), 
Point(0, 0), Size(3, 4)));
     CPPUNIT_ASSERT_EQUAL(Size(3, 4), aAnimation.GetDisplaySizePixel());
 
-    aAnimation.Insert(AnimationBitmap(BitmapEx(Size(10, 10), 
vcl::PixelFormat::N24_BPP),
-                                      Point(0, 0), Size(10, 10)));
+    aAnimation.Insert(AnimationFrame(BitmapEx(Size(10, 10), 
vcl::PixelFormat::N24_BPP), Point(0, 0),
+                                     Size(10, 10)));
     CPPUNIT_ASSERT_EQUAL(Size(10, 10), aAnimation.GetDisplaySizePixel());
 
     aAnimation.Clear();
diff --git a/vcl/qa/cppunit/animationrenderer.cxx 
b/vcl/qa/cppunit/animationrenderer.cxx
index b4e7f235e883..86ad06c47941 100644
--- a/vcl/qa/cppunit/animationrenderer.cxx
+++ b/vcl/qa/cppunit/animationrenderer.cxx
@@ -91,8 +91,8 @@ void VclAnimationRendererTest::testGetPosSizeWindow()
 
     AnimationRenderer* pAnimationRenderer
         = new AnimationRenderer(&aTestAnim, pTestRC, Point(0, 0), Size(10, 
10), 5);
-    AnimationBitmap aAnimBmp(BitmapEx(Size(3, 4), vcl::PixelFormat::N24_BPP), 
Point(0, 0),
-                             Size(10, 10));
+    AnimationFrame aAnimBmp(BitmapEx(Size(3, 4), vcl::PixelFormat::N24_BPP), 
Point(0, 0),
+                            Size(10, 10));
     Point aPos;
     Size aSize;
 
@@ -106,10 +106,10 @@ Animation VclAnimationRendererTest::createAnimation()
 {
     Animation aAnimation;
 
-    aAnimation.Insert(AnimationBitmap(BitmapEx(Size(3, 4), 
vcl::PixelFormat::N24_BPP), Point(0, 0),
-                                      Size(10, 10)));
-    aAnimation.Insert(AnimationBitmap(BitmapEx(Size(3, 3), 
vcl::PixelFormat::N24_BPP), Point(0, 0),
-                                      Size(10, 10)));
+    aAnimation.Insert(
+        AnimationFrame(BitmapEx(Size(3, 4), vcl::PixelFormat::N24_BPP), 
Point(0, 0), Size(10, 10)));
+    aAnimation.Insert(
+        AnimationFrame(BitmapEx(Size(3, 3), vcl::PixelFormat::N24_BPP), 
Point(0, 0), Size(10, 10)));
 
     return aAnimation;
 }
diff --git a/vcl/source/animate/Animation.cxx b/vcl/source/animate/Animation.cxx
index baa9c186023d..9b1165655186 100644
--- a/vcl/source/animate/Animation.cxx
+++ b/vcl/source/animate/Animation.cxx
@@ -54,7 +54,7 @@ Animation::Animation(const Animation& rAnimation)
     , mbLoopTerminated(rAnimation.mbLoopTerminated)
 {
     for (auto const& rFrame : rAnimation.maFrames)
-        maFrames.emplace_back(new AnimationBitmap(*rFrame));
+        maFrames.emplace_back(new AnimationFrame(*rFrame));
 
     maTimer.SetInvokeHandler(LINK(this, Animation, ImplTimeoutHdl));
     mnLoops = mbLoopTerminated ? 0 : mnLoopCount;
@@ -73,7 +73,7 @@ Animation& Animation::operator=(const Animation& rAnimation)
         Clear();
 
         for (auto const& i : rAnimation.maFrames)
-            maFrames.emplace_back(new AnimationBitmap(*i));
+            maFrames.emplace_back(new AnimationFrame(*i));
 
         maGlobalSize = rAnimation.maGlobalSize;
         maBitmapEx = rAnimation.maBitmapEx;
@@ -90,8 +90,8 @@ bool Animation::operator==(const Animation& rAnimation) const
     return maFrames.size() == rAnimation.maFrames.size() && maBitmapEx == 
rAnimation.maBitmapEx
            && maGlobalSize == rAnimation.maGlobalSize
            && std::equal(maFrames.begin(), maFrames.end(), 
rAnimation.maFrames.begin(),
-                         [](const std::unique_ptr<AnimationBitmap>& pAnim1,
-                            const std::unique_ptr<AnimationBitmap>& pAnim2) -> 
bool {
+                         [](const std::unique_ptr<AnimationFrame>& pAnim1,
+                            const std::unique_ptr<AnimationFrame>& pAnim2) -> 
bool {
                              return *pAnim1 == *pAnim2;
                          });
 }
@@ -117,7 +117,7 @@ bool Animation::IsTransparent() const
 
     return maBitmapEx.IsAlpha()
            || std::any_of(maFrames.begin(), maFrames.end(),
-                          [&aRect](const std::unique_ptr<AnimationBitmap>& 
pAnim) -> bool {
+                          [&aRect](const std::unique_ptr<AnimationFrame>& 
pAnim) -> bool {
                               return pAnim->meDisposal == Disposal::Back
                                      && tools::Rectangle{ 
pAnim->maPositionPixel,
                                                           pAnim->maSizePixel }
@@ -129,9 +129,9 @@ sal_uLong Animation::GetSizeBytes() const
 {
     sal_uLong nSizeBytes = GetBitmapEx().GetSizeBytes();
 
-    for (auto const& pAnimationBitmap : maFrames)
+    for (auto const& pAnimationFrame : maFrames)
     {
-        nSizeBytes += pAnimationBitmap->maBitmapEx.GetSizeBytes();
+        nSizeBytes += pAnimationFrame->maBitmapEx.GetSizeBytes();
     }
 
     return nSizeBytes;
@@ -245,7 +245,7 @@ void Animation::Draw(OutputDevice& rOut, const Point& 
rDestPt, const Size& rDest
     if (!nCount)
         return;
 
-    AnimationBitmap* pObj = maFrames[std::min(mnPos, nCount - 1)].get();
+    AnimationFrame* pObj = maFrames[std::min(mnPos, nCount - 1)].get();
 
     if (rOut.GetConnectMetaFile() || (rOut.GetOutDevType() == OUTDEV_PRINTER))
     {
@@ -343,7 +343,7 @@ IMPL_LINK_NOARG(Animation, ImplTimeoutHdl, Timer*, void)
         }
         else
         {
-            AnimationBitmap* pStepBmp
+            AnimationFrame* pStepBmp
                 = (++mnPos < maFrames.size()) ? maFrames[mnPos].get() : 
nullptr;
 
             if (!pStepBmp)
@@ -390,7 +390,7 @@ IMPL_LINK_NOARG(Animation, ImplTimeoutHdl, Timer*, void)
         Stop();
 }
 
-bool Animation::Insert(const AnimationBitmap& rStepBmp)
+bool Animation::Insert(const AnimationFrame& rStepBmp)
 {
     bool bRet = false;
 
@@ -401,7 +401,7 @@ bool Animation::Insert(const AnimationBitmap& rStepBmp)
         maGlobalSize
             = aGlobalRect.Union(tools::Rectangle(rStepBmp.maPositionPixel, 
rStepBmp.maSizePixel))
                   .GetSize();
-        maFrames.emplace_back(new AnimationBitmap(rStepBmp));
+        maFrames.emplace_back(new AnimationFrame(rStepBmp));
 
         // As a start, we make the first BitmapEx the replacement BitmapEx
         if (maFrames.size() == 1)
@@ -413,24 +413,24 @@ bool Animation::Insert(const AnimationBitmap& rStepBmp)
     return bRet;
 }
 
-const AnimationBitmap& Animation::Get(sal_uInt16 nAnimation) const
+const AnimationFrame& Animation::Get(sal_uInt16 nAnimation) const
 {
     SAL_WARN_IF((nAnimation >= maFrames.size()), "vcl", "No object at this 
position");
     return *maFrames[nAnimation];
 }
 
-void Animation::Replace(const AnimationBitmap& rNewAnimationBitmap, sal_uInt16 
nAnimation)
+void Animation::Replace(const AnimationFrame& rNewAnimationFrame, sal_uInt16 
nAnimation)
 {
     SAL_WARN_IF((nAnimation >= maFrames.size()), "vcl", "No object at this 
position");
 
-    maFrames[nAnimation].reset(new AnimationBitmap(rNewAnimationBitmap));
+    maFrames[nAnimation].reset(new AnimationFrame(rNewAnimationFrame));
 
     // If we insert at first position we also need to
     // update the replacement BitmapEx
     if ((!nAnimation && (!mbLoopTerminated || (maFrames.size() == 1)))
         || ((nAnimation == maFrames.size() - 1) && mbLoopTerminated))
     {
-        maBitmapEx = rNewAnimationBitmap.maBitmapEx;
+        maBitmapEx = rNewAnimationFrame.maBitmapEx;
     }
 }
 
@@ -526,7 +526,7 @@ void Animation::Mirror(BmpMirrorFlags nMirrorFlags)
 
     for (size_t i = 0, n = maFrames.size(); (i < n) && bRet; ++i)
     {
-        AnimationBitmap* pStepBmp = maFrames[i].get();
+        AnimationFrame* pStepBmp = maFrames[i].get();
         bRet = pStepBmp->maBitmapEx.Mirror(nMirrorFlags);
         if (bRet)
         {
@@ -585,20 +585,20 @@ SvStream& WriteAnimation(SvStream& rOStm, const 
Animation& rAnimation)
 
         for (sal_uInt16 i = 0; i < nCount; i++)
         {
-            const AnimationBitmap& rAnimationBitmap = rAnimation.Get(i);
+            const AnimationFrame& rAnimationFrame = rAnimation.Get(i);
             const sal_uInt16 nRest = nCount - i - 1;
 
-            // Write AnimationBitmap
-            WriteDIBBitmapEx(rAnimationBitmap.maBitmapEx, rOStm);
+            // Write AnimationFrame
+            WriteDIBBitmapEx(rAnimationFrame.maBitmapEx, rOStm);
             tools::GenericTypeSerializer aSerializer(rOStm);
-            aSerializer.writePoint(rAnimationBitmap.maPositionPixel);
-            aSerializer.writeSize(rAnimationBitmap.maSizePixel);
+            aSerializer.writePoint(rAnimationFrame.maPositionPixel);
+            aSerializer.writeSize(rAnimationFrame.maSizePixel);
             aSerializer.writeSize(rAnimation.maGlobalSize);
-            rOStm.WriteUInt16((ANIMATION_TIMEOUT_ON_CLICK == 
rAnimationBitmap.mnWait)
+            rOStm.WriteUInt16((ANIMATION_TIMEOUT_ON_CLICK == 
rAnimationFrame.mnWait)
                                   ? 65535
-                                  : rAnimationBitmap.mnWait);
-            
rOStm.WriteUInt16(static_cast<sal_uInt16>(rAnimationBitmap.meDisposal));
-            rOStm.WriteBool(rAnimationBitmap.mbUserInput);
+                                  : rAnimationFrame.mnWait);
+            
rOStm.WriteUInt16(static_cast<sal_uInt16>(rAnimationFrame.meDisposal));
+            rOStm.WriteBool(rAnimationFrame.mbUserInput);
             rOStm.WriteUInt32(rAnimation.mnLoopCount);
             rOStm.WriteUInt32(nDummy32); // Unused
             rOStm.WriteUInt32(nDummy32); // Unused
@@ -625,7 +625,7 @@ SvStream& ReadAnimation(SvStream& rIStm, Animation& 
rAnimation)
     rAnimation.Clear();
 
     // If the BitmapEx at the beginning have already been read (by Graphic)
-    // we can start reading the AnimationBitmaps right away
+    // we can start reading the AnimationFrames right away
     if ((nAnimMagic1 == 0x5344414e) && (nAnimMagic2 == 0x494d4931) && 
!rIStm.GetError())
         bReadAnimations = true;
     // Else, we try reading the Bitmap(-Ex)
@@ -642,27 +642,27 @@ SvStream& ReadAnimation(SvStream& rIStm, Animation& 
rAnimation)
             rIStm.Seek(nStmPos);
     }
 
-    // Read AnimationBitmaps
+    // Read AnimationFrames
     if (bReadAnimations)
     {
-        AnimationBitmap aAnimationBitmap;
+        AnimationFrame aAnimationFrame;
         sal_uInt32 nTmp32;
         sal_uInt16 nTmp16;
         bool cTmp;
 
         do
         {
-            ReadDIBBitmapEx(aAnimationBitmap.maBitmapEx, rIStm);
+            ReadDIBBitmapEx(aAnimationFrame.maBitmapEx, rIStm);
             tools::GenericTypeSerializer aSerializer(rIStm);
-            aSerializer.readPoint(aAnimationBitmap.maPositionPixel);
-            aSerializer.readSize(aAnimationBitmap.maSizePixel);
+            aSerializer.readPoint(aAnimationFrame.maPositionPixel);
+            aSerializer.readSize(aAnimationFrame.maSizePixel);
             aSerializer.readSize(rAnimation.maGlobalSize);
             rIStm.ReadUInt16(nTmp16);
-            aAnimationBitmap.mnWait = ((65535 == nTmp16) ? 
ANIMATION_TIMEOUT_ON_CLICK : nTmp16);
+            aAnimationFrame.mnWait = ((65535 == nTmp16) ? 
ANIMATION_TIMEOUT_ON_CLICK : nTmp16);
             rIStm.ReadUInt16(nTmp16);
-            aAnimationBitmap.meDisposal = static_cast<Disposal>(nTmp16);
+            aAnimationFrame.meDisposal = static_cast<Disposal>(nTmp16);
             rIStm.ReadCharAsBool(cTmp);
-            aAnimationBitmap.mbUserInput = cTmp;
+            aAnimationFrame.mbUserInput = cTmp;
             rIStm.ReadUInt32(rAnimation.mnLoopCount);
             rIStm.ReadUInt32(nTmp32); // Unused
             rIStm.ReadUInt32(nTmp32); // Unused
@@ -670,7 +670,7 @@ SvStream& ReadAnimation(SvStream& rIStm, Animation& 
rAnimation)
             read_uInt16_lenPrefixed_uInt8s_ToOString(rIStm); // Unused
             rIStm.ReadUInt16(nTmp16); // The rest to read
 
-            rAnimation.Insert(aAnimationBitmap);
+            rAnimation.Insert(aAnimationFrame);
         } while (nTmp16 && !rIStm.GetError());
 
         rAnimation.ResetLoopCount();
diff --git a/vcl/source/animate/AnimationBitmap.cxx 
b/vcl/source/animate/AnimationFrame.cxx
similarity index 94%
rename from vcl/source/animate/AnimationBitmap.cxx
rename to vcl/source/animate/AnimationFrame.cxx
index 8dfb466e18a1..e2f9bae931fb 100644
--- a/vcl/source/animate/AnimationBitmap.cxx
+++ b/vcl/source/animate/AnimationFrame.cxx
@@ -20,9 +20,9 @@
 #include <sal/config.h>
 #include <o3tl/underlyingenumvalue.hxx>
 #include <tools/solar.h>
-#include <vcl/animate/AnimationBitmap.hxx>
+#include <vcl/animate/AnimationFrame.hxx>
 
-BitmapChecksum AnimationBitmap::GetChecksum() const
+BitmapChecksum AnimationFrame::GetChecksum() const
 {
     BitmapChecksum nCrc = maBitmapEx.GetChecksum();
     SVBT32 aBT32;
diff --git a/vcl/source/animate/AnimationRenderer.cxx 
b/vcl/source/animate/AnimationRenderer.cxx
index 21b43c3c08d6..29f386e0d388 100644
--- a/vcl/source/animate/AnimationRenderer.cxx
+++ b/vcl/source/animate/AnimationRenderer.cxx
@@ -102,11 +102,11 @@ bool AnimationRenderer::matches(const OutputDevice* pOut, 
tools::Long nRendererI
     return (!pOut || pOut == mpRenderContext) && (nRendererId == 0 || 
nRendererId == mnRendererId);
 }
 
-void AnimationRenderer::getPosSize( const AnimationBitmap& rAnimationBitmap, 
Point& rPosPix, Size& rSizePix )
+void AnimationRenderer::getPosSize( const AnimationFrame& rAnimationFrame, 
Point& rPosPix, Size& rSizePix )
 {
     const Size& rAnmSize = mpParent->GetDisplaySizePixel();
-    Point       aPt2( rAnimationBitmap.maPositionPixel.X() + 
rAnimationBitmap.maSizePixel.Width() - 1,
-                      rAnimationBitmap.maPositionPixel.Y() + 
rAnimationBitmap.maSizePixel.Height() - 1 );
+    Point       aPt2( rAnimationFrame.maPositionPixel.X() + 
rAnimationFrame.maSizePixel.Width() - 1,
+                      rAnimationFrame.maPositionPixel.Y() + 
rAnimationFrame.maSizePixel.Height() - 1 );
     double      fFactX, fFactY;
 
     // calculate x scaling
@@ -121,8 +121,8 @@ void AnimationRenderer::getPosSize( const AnimationBitmap& 
rAnimationBitmap, Poi
     else
         fFactY = 1.0;
 
-    rPosPix.setX( FRound( rAnimationBitmap.maPositionPixel.X() * fFactX ) );
-    rPosPix.setY( FRound( rAnimationBitmap.maPositionPixel.Y() * fFactY ) );
+    rPosPix.setX( FRound( rAnimationFrame.maPositionPixel.X() * fFactX ) );
+    rPosPix.setY( FRound( rAnimationFrame.maPositionPixel.Y() * fFactY ) );
 
     aPt2.setX( FRound( aPt2.X() * fFactX ) );
     aPt2.setY( FRound( aPt2.Y() * fFactY ) );
@@ -189,7 +189,9 @@ void AnimationRenderer::draw( sal_uLong nIndex, 
VirtualDevice* pVDev )
 
     // check, if output lies out of display
     if( aOutRect.Intersection( tools::Rectangle( maDispPt, maDispSz ) 
).IsEmpty() )
+    {
         setMarked( true );
+    }
     else if( !mbIsPaused )
     {
         VclPtr<VirtualDevice>   pDev;
@@ -199,9 +201,9 @@ void AnimationRenderer::draw( sal_uLong nIndex, 
VirtualDevice* pVDev )
         Size                    aBmpSizePix;
         const sal_uLong             nLastPos = mpParent->Count() - 1;
         mnActIndex = std::min( nIndex, nLastPos );
-        const AnimationBitmap&  rAnimationBitmap = mpParent->Get( 
static_cast<sal_uInt16>( mnActIndex ) );
+        const AnimationFrame&  rAnimationFrame = mpParent->Get( 
static_cast<sal_uInt16>( mnActIndex ) );
 
-        getPosSize( rAnimationBitmap, aPosPix, aSizePix );
+        getPosSize( rAnimationFrame, aPosPix, aSizePix );
 
         // Mirrored horizontally?
         if( mbIsMirroredHorizontally )
@@ -254,7 +256,7 @@ void AnimationRenderer::draw( sal_uLong nIndex, 
VirtualDevice* pVDev )
                 pDev->DrawOutDev( maRestPt, maRestSz, Point(), maRestSz, 
*mpRestore );
         }
 
-        meLastDisposal = rAnimationBitmap.meDisposal;
+        meLastDisposal = rAnimationFrame.meDisposal;
         maRestPt = aPosPix;
         maRestSz = aSizePix;
 
@@ -269,7 +271,7 @@ void AnimationRenderer::draw( sal_uLong nIndex, 
VirtualDevice* pVDev )
             mpRestore->DrawOutDev( Point(), maRestSz, aPosPix, aSizePix, *pDev 
);
         }
 
-        pDev->DrawBitmapEx( aBmpPosPix, aBmpSizePix, 
rAnimationBitmap.maBitmapEx );
+        pDev->DrawBitmapEx( aBmpPosPix, aBmpSizePix, 
rAnimationFrame.maBitmapEx );
 
         if( !pVDev )
         {
diff --git a/vcl/source/bitmap/bitmapfilter.cxx 
b/vcl/source/bitmap/bitmapfilter.cxx
index f2020539e04d..63ccd2b13021 100644
--- a/vcl/source/bitmap/bitmapfilter.cxx
+++ b/vcl/source/bitmap/bitmapfilter.cxx
@@ -41,7 +41,7 @@ bool BitmapFilter::Filter(Animation& rAnimation, BitmapFilter 
const& rFilter)
     {
         bRet = true;
 
-        std::vector<std::unique_ptr<AnimationBitmap>>& aList = 
rAnimation.GetAnimationFrames();
+        std::vector<std::unique_ptr<AnimationFrame>>& aList = 
rAnimation.GetAnimationFrames();
         for (size_t i = 0, n = aList.size(); (i < n) && bRet; ++i)
         {
             bRet = BitmapFilter::Filter(aList[i]->maBitmapEx, rFilter);
diff --git a/vcl/source/filter/egif/egif.cxx b/vcl/source/filter/egif/egif.cxx
index 699b7f05d5a4..8533dc5835a0 100644
--- a/vcl/source/filter/egif/egif.cxx
+++ b/vcl/source/filter/egif/egif.cxx
@@ -214,10 +214,10 @@ void GIFWriter::WriteAnimation( const Animation& 
rAnimation )
 
     for( sal_uInt16 i = 0; i < nCount; i++ )
     {
-        const AnimationBitmap& rAnimationBitmap = rAnimation.Get( i );
+        const AnimationFrame& rAnimationFrame = rAnimation.Get( i );
 
-        WriteBitmapEx(rAnimationBitmap.maBitmapEx, 
rAnimationBitmap.maPositionPixel, true,
-                       rAnimationBitmap.mnWait, rAnimationBitmap.meDisposal );
+        WriteBitmapEx(rAnimationFrame.maBitmapEx, 
rAnimationFrame.maPositionPixel, true,
+                       rAnimationFrame.mnWait, rAnimationFrame.meDisposal );
         nMinPercent = nMaxPercent;
         nMaxPercent = static_cast<sal_uInt32>(nMaxPercent + fStep);
     }
diff --git a/vcl/source/filter/etiff/etiff.cxx 
b/vcl/source/filter/etiff/etiff.cxx
index b34accab889b..f0da56c472af 100644
--- a/vcl/source/filter/etiff/etiff.cxx
+++ b/vcl/source/filter/etiff/etiff.cxx
@@ -170,7 +170,7 @@ bool TIFFWriter::WriteTIFF( const Graphic& rGraphic, 
FilterConfigItem const * pF
     {
         Animation aAnimation = rGraphic.IsAnimated() ? rGraphic.GetAnimation() 
: Animation();
         if (!rGraphic.IsAnimated())
-            aAnimation.Insert(AnimationBitmap(rGraphic.GetBitmapEx(), Point(), 
Size()));
+            aAnimation.Insert(AnimationFrame(rGraphic.GetBitmapEx(), Point(), 
Size()));
 
         for (size_t i = 0; i < aAnimation.Count(); ++i)
             mnSumOfAllPictHeight += 
aAnimation.Get(i).maBitmapEx.GetSizePixel().Height();
@@ -178,8 +178,8 @@ bool TIFFWriter::WriteTIFF( const Graphic& rGraphic, 
FilterConfigItem const * pF
         for (size_t i = 0; mbStatus && i < aAnimation.Count(); ++i)
         {
             mnPalPos = 0;
-            const AnimationBitmap& rAnimationBitmap = aAnimation.Get( i );
-            Bitmap aBmp = rAnimationBitmap.maBitmapEx.GetBitmap();
+            const AnimationFrame& rAnimationFrame = aAnimation.Get( i );
+            Bitmap aBmp = rAnimationFrame.maBitmapEx.GetBitmap();
             mpAcc = aBmp.AcquireReadAccess();
             if ( mpAcc )
             {
diff --git a/vcl/source/filter/igif/gifread.cxx 
b/vcl/source/filter/igif/gifread.cxx
index fa1270e6a135..5e07db10415e 100644
--- a/vcl/source/filter/igif/gifread.cxx
+++ b/vcl/source/filter/igif/gifread.cxx
@@ -654,38 +654,38 @@ void GIFReader::FillImages( const sal_uInt8* pBytes, 
sal_uLong nCount )
 
 void GIFReader::CreateNewBitmaps()
 {
-    AnimationBitmap aAnimationBitmap;
+    AnimationFrame aAnimationFrame;
 
     pAcc8.reset();
 
     if( bGCTransparent )
     {
         pAcc1.reset();
-        aAnimationBitmap.maBitmapEx = BitmapEx( aBmp8, aBmp1 );
+        aAnimationFrame.maBitmapEx = BitmapEx( aBmp8, aBmp1 );
     }
     else
-        aAnimationBitmap.maBitmapEx = BitmapEx( aBmp8 );
+        aAnimationFrame.maBitmapEx = BitmapEx( aBmp8 );
 
-    aAnimationBitmap.maPositionPixel = Point( nImagePosX, nImagePosY );
-    aAnimationBitmap.maSizePixel = Size( nImageWidth, nImageHeight );
-    aAnimationBitmap.mnWait = ( nTimer != 65535 ) ? nTimer : 
ANIMATION_TIMEOUT_ON_CLICK;
-    aAnimationBitmap.mbUserInput = false;
+    aAnimationFrame.maPositionPixel = Point( nImagePosX, nImagePosY );
+    aAnimationFrame.maSizePixel = Size( nImageWidth, nImageHeight );
+    aAnimationFrame.mnWait = ( nTimer != 65535 ) ? nTimer : 
ANIMATION_TIMEOUT_ON_CLICK;
+    aAnimationFrame.mbUserInput = false;
 
     // tdf#104121 . Internet Explorer, Firefox, Chrome and Safari all set a 
minimum default playback speed.
     // IE10 Consumer Preview sets default of 100ms for rates less that 20ms. 
We do the same
-    if (aAnimationBitmap.mnWait < 2) // 20ms, specified in 100's of a second
-        aAnimationBitmap.mnWait = 10;
+    if (aAnimationFrame.mnWait < 2) // 20ms, specified in 100's of a second
+        aAnimationFrame.mnWait = 10;
 
     if( nGCDisposalMethod == 2 )
-        aAnimationBitmap.meDisposal = Disposal::Back;
+        aAnimationFrame.meDisposal = Disposal::Back;
     else if( nGCDisposalMethod == 3 )
-        aAnimationBitmap.meDisposal = Disposal::Previous;
+        aAnimationFrame.meDisposal = Disposal::Previous;
     else
-        aAnimationBitmap.meDisposal = Disposal::Not;
+        aAnimationFrame.meDisposal = Disposal::Not;
 
-    nAnimationByteSize += aAnimationBitmap.maBitmapEx.GetSizeBytes();
+    nAnimationByteSize += aAnimationFrame.maBitmapEx.GetSizeBytes();
     nAnimationMinFileData += static_cast<sal_uInt64>(nImageWidth) * 
nImageHeight / 2560;
-    aAnimation.Insert(aAnimationBitmap);
+    aAnimation.Insert(aAnimationFrame);
 
     if( aAnimation.Count() == 1 )
     {
diff --git a/vcl/source/filter/itiff/itiff.cxx 
b/vcl/source/filter/itiff/itiff.cxx
index 762c31fe5667..612ac4038e79 100644
--- a/vcl/source/filter/itiff/itiff.cxx
+++ b/vcl/source/filter/itiff/itiff.cxx
@@ -266,9 +266,9 @@ bool ImportTiffGraphicImport(SvStream& rTIFF, Graphic& 
rGraphic)
                 }
             }
 
-            AnimationBitmap aAnimationBitmap(aBitmapEx, Point(0, 0), 
aBitmapEx.GetSizePixel(),
+            AnimationFrame aAnimationFrame(aBitmapEx, Point(0, 0), 
aBitmapEx.GetSizePixel(),
                                              ANIMATION_TIMEOUT_ON_CLICK, 
Disposal::Back);
-            aAnimation.Insert(aAnimationBitmap);
+            aAnimation.Insert(aAnimationFrame);
         }
     } while (TIFFReadDirectory(tif));
 
diff --git a/vcl/source/graphic/GraphicObject.cxx 
b/vcl/source/graphic/GraphicObject.cxx
index 4eac9f772bd2..d03db6be891a 100644
--- a/vcl/source/graphic/GraphicObject.cxx
+++ b/vcl/source/graphic/GraphicObject.cxx
@@ -764,21 +764,21 @@ Graphic GraphicObject::GetTransformedGraphic( const Size& 
rDestSize, const MapMo
 
             for( size_t nFrame=0; nFrame<aAnim.Count(); ++nFrame )
             {
-                AnimationBitmap aAnimationBitmap( aAnim.Get( nFrame ) );
+                AnimationFrame aAnimationFrame( aAnim.Get( nFrame ) );
 
-                if( !aCropRect.Contains( 
tools::Rectangle(aAnimationBitmap.maPositionPixel, 
aAnimationBitmap.maSizePixel) ) )
+                if( !aCropRect.Contains( 
tools::Rectangle(aAnimationFrame.maPositionPixel, aAnimationFrame.maSizePixel) 
) )
                 {
                     // setup actual cropping (relative to frame position)

... etc. - the rest is truncated

Reply via email to