diff options
author | David Tardon <dtardon@redhat.com> | 2016-04-26 09:17:11 +0200 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-05-03 09:13:59 +0000 |
commit | fd45334b49c09538598f82f5ffa2f61f6bdd9d24 (patch) | |
tree | 4970d93338733fe723a7ff2b7864695efd69c06e /include | |
parent | 1f8a8cc460b936f234a018cde48ef52ff25b537d (diff) |
rhbz#1326602 avoid exp. bg bitmaps from deleted slides
ODF export uses SvxUnoBitmapTable (impl. of
com.sun.star.drawing.BitmapTable) to create fill bitmap styles. That
returns all XATTR_FILLBITMAP items that are in the document's pool. So
we ensure that bitmaps that are only used on deleted (either explicitly
or by undoing their insertion) slides are not in the pool.
(cherry picked from commit b876bbe2cacce8af379b10d82da6c7e7d229b361)
Change-Id: I54c594a94989158f22b156fe660c1e716b988b3e
Reviewed-on: https://gerrit.libreoffice.org/24590
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/svx/svdundo.hxx | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/svx/svdundo.hxx b/include/svx/svdundo.hxx index 7d4973f11663..346f6c32d062 100644 --- a/include/svx/svdundo.hxx +++ b/include/svx/svdundo.hxx @@ -22,6 +22,7 @@ #include <sal/config.h> +#include <memory> #include <vector> #include <svl/solar.hrc> @@ -33,6 +34,7 @@ #include <svx/svxdllapi.h> class SfxItemSet; +class SfxPoolItem; class SfxStyleSheet; class SdrView; class SdrPageView; @@ -584,6 +586,8 @@ class SVX_DLLPUBLIC SdrUndoDelPage : public SdrUndoPageList // When deleting a MasterPage, we remember all relations of the // Character Page with the MasterPage in this UndoGroup. SdrUndoGroup* pUndoGroup; + std::unique_ptr<SfxPoolItem> mpFillBitmapItem; + bool mbHasFillBitmap; public: SdrUndoDelPage(SdrPage& rNewPg); @@ -597,6 +601,11 @@ public: virtual void SdrRepeat(SdrView& rView) override; virtual bool CanSdrRepeat(SdrView& rView) const override; + +private: + void queryFillBitmap(const SfxItemSet &rItemSet); + void clearFillBitmap(); + void restoreFillBitmap(); }; /** |