From 7c5aaa254f444d54b9ebf6574f0ccd37af548ee5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tam=C3=A1s=20Zolnai?= Date: Sun, 27 Nov 2016 15:35:53 +0100 Subject: [PATCH] tdf#104201: PPTX: Group solid fill is not imported MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: Iec273714108598d7017e73a9e7d384f8410d6ee1 Reviewed-on: https://gerrit.libreoffice.org/31263 Reviewed-by: Tamás Zolnai Tested-by: Tamás Zolnai --- oox/source/drawingml/shape.cxx | 6 ++--- sd/qa/unit/data/pptx/tdf104201.pptx | Bin 0 -> 15979 bytes sd/qa/unit/import-tests.cxx | 36 ++++++++++++++++++++++++++++ 3 files changed, 39 insertions(+), 3 deletions(-) create mode 100755 sd/qa/unit/data/pptx/tdf104201.pptx diff --git a/oox/source/drawingml/shape.cxx b/oox/source/drawingml/shape.cxx index 0ee6cef28eef..cd564964af35 100644 --- a/oox/source/drawingml/shape.cxx +++ b/oox/source/drawingml/shape.cxx @@ -1462,14 +1462,14 @@ FillProperties Shape::getActualFillProperties(const Theme* pTheme, const FillPro } } + // Properties specified directly for this shape + aFillProperties.assignUsed(getFillProperties()); + // Parent shape's properties if ( pParentShapeFillProps != nullptr) if( getFillProperties().moFillType.has() && getFillProperties().moFillType.get() == XML_grpFill ) aFillProperties.assignUsed( *pParentShapeFillProps ); - // Properties specified directly for this shape - aFillProperties.assignUsed( getFillProperties() ); - return aFillProperties; } diff --git a/sd/qa/unit/data/pptx/tdf104201.pptx b/sd/qa/unit/data/pptx/tdf104201.pptx new file mode 100755 index 0000000000000000000000000000000000000000..99a6532a6f3973876b2f456822e6ca337ce27c4d GIT binary patch literal 15979 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 literal 0 HcmV?d00001 diff --git a/sd/qa/unit/import-tests.cxx b/sd/qa/unit/import-tests.cxx index 6c14bd5da3dc..c1c422410c95 100644 --- a/sd/qa/unit/import-tests.cxx +++ b/sd/qa/unit/import-tests.cxx @@ -130,6 +130,7 @@ public: void testTdf103792(); void testTdf103876(); void testTdf104015(); + void testTdf104201(); CPPUNIT_TEST_SUITE(SdImportTest); @@ -185,6 +186,7 @@ public: CPPUNIT_TEST(testTdf103792); CPPUNIT_TEST(testTdf103876); CPPUNIT_TEST(testTdf104015); + CPPUNIT_TEST(testTdf104201); CPPUNIT_TEST_SUITE_END(); }; @@ -1585,6 +1587,40 @@ void SdImportTest::testTdf104015() xDocShRef->DoClose(); } +void SdImportTest::testTdf104201() +{ + // Group shape properties did not overwrite the child shapes' fill + sd::DrawDocShellRef xDocShRef = loadURL(m_directories.getURLFromSrc("sd/qa/unit/data/pptx/tdf104201.pptx"), PPTX); + + const SdrPage *pPage = GetPage(1, xDocShRef); + CPPUNIT_ASSERT_MESSAGE("No page found", pPage != nullptr); + + // First shape has red fill, but this should be overwritten by green group fill + { + SdrObject *const pObj = pPage->GetObj(0); + CPPUNIT_ASSERT_MESSAGE("Wrong object", pObj != nullptr); + const XFillStyleItem& rStyleItem = dynamic_cast( + pObj->GetMergedItem(XATTR_FILLSTYLE)); + CPPUNIT_ASSERT_EQUAL(drawing::FillStyle_SOLID, rStyleItem.GetValue()); + const XFillColorItem& rColorItem = dynamic_cast( + pObj->GetMergedItem(XATTR_FILLCOLOR)); + CPPUNIT_ASSERT_EQUAL(ColorData(0x00FF00), rColorItem.GetColorValue().GetColor()); + } + // Scond shape has blue fill, but this should be overwritten by green group fill + { + SdrObject *const pObj = pPage->GetObj(0); + CPPUNIT_ASSERT_MESSAGE("Wrong object", pObj != nullptr); + const XFillStyleItem& rStyleItem = dynamic_cast( + pObj->GetMergedItem(XATTR_FILLSTYLE)); + CPPUNIT_ASSERT_EQUAL(drawing::FillStyle_SOLID, rStyleItem.GetValue()); + const XFillColorItem& rColorItem = dynamic_cast( + pObj->GetMergedItem(XATTR_FILLCOLOR)); + CPPUNIT_ASSERT_EQUAL(ColorData(0x00FF00), rColorItem.GetColorValue().GetColor()); + } + + xDocShRef->DoClose(); +} + CPPUNIT_TEST_SUITE_REGISTRATION(SdImportTest); CPPUNIT_PLUGIN_IMPLEMENT();