tdf#104658: Fix jumping bitmap-filled chart bars

Coincidentally this also resolves almost identical issues in chart wall
(tdf#114132)

Change-Id: Ib566110639d00aa46463ee592861ce3e15c64f50
Reviewed-on: https://gerrit.libreoffice.org/52624
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
This commit is contained in:
Katarina Behrens
2018-04-09 22:05:40 +02:00
parent 8c72e78069
commit 2eaa978d13
@@ -430,9 +430,14 @@ bool GraphicPropertyItemConverter::ApplySpecialItem(
bool bStretched = rItemSet.Get( XATTR_FILLBMP_STRETCH ).GetValue();
drawing::BitmapMode aMode =
(bStretched ? drawing::BitmapMode_STRETCH : drawing::BitmapMode_NO_REPEAT);
drawing::BitmapMode aOtherMode = drawing::BitmapMode_NO_REPEAT;
aValue <<= aMode;
if( aValue != GetPropertySet()->getPropertyValue( aModePropName ))
GetPropertySet()->getPropertyValue( aModePropName ) >>= aOtherMode;
// don't overwrite if it has been set to BitmapMode_REPEAT (= tiled) already
// XATTR_FILLBMP_STRETCH and XATTR_FILLBMP_TILE often come in pairs, tdf#104658
if( aMode != aOtherMode && aOtherMode != drawing::BitmapMode_REPEAT )
{
GetPropertySet()->setPropertyValue( aModePropName, aValue );
bChanged = true;