Kaydet (Commit) a3c695c1 authored tarafından Miklos Vajna's avatar Miklos Vajna

tdf#110440 drawingML import: fix handling of group shape properties

The handler for nvGrpSpPr is "this class", not "no class".

Change-Id: I7fc40681d77f94b7473d2f677d813d2ae246f6ac
Reviewed-on: https://gerrit.libreoffice.org/40854Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarMiklos Vajna <vmiklos@collabora.co.uk>
üst 05aa784e
......@@ -79,7 +79,7 @@ ContextHandlerRef ShapeGroupContext::onCreateContext( sal_Int32 aElementToken, c
case XML_grpSpPr:
return new ShapePropertiesContext( *this, *mpGroupShapePtr );
case XML_nvGrpSpPr:
return nullptr;
return this;
case XML_spPr:
return new ShapePropertiesContext( *this, *mpGroupShapePtr );
/*
......
......@@ -240,6 +240,7 @@ public:
void testTdf100458();
void testTdf100709XLSX();
void testTdf97598XLSX();
void testTdf110440XLSX();
void testPageScalingXLSX();
void testActiveXCheckboxXLSX();
......@@ -367,6 +368,7 @@ public:
CPPUNIT_TEST(testTdf100458);
CPPUNIT_TEST(testTdf100709XLSX);
CPPUNIT_TEST(testTdf97598XLSX);
CPPUNIT_TEST(testTdf110440XLSX);
CPPUNIT_TEST(testPageScalingXLSX);
CPPUNIT_TEST(testActiveXCheckboxXLSX);
......@@ -3790,6 +3792,25 @@ void ScFiltersTest::testColumnStyle2XLSX()
xDocSh->DoClose();
}
void ScFiltersTest::testTdf110440XLSX()
{
ScDocShellRef xDocSh = loadDoc("tdf110440.", FORMAT_XLSX);
CPPUNIT_ASSERT_MESSAGE("Failed to open doc", xDocSh.is());
uno::Reference<frame::XModel> xModel = xDocSh->GetModel();
uno::Reference<sheet::XSpreadsheetDocument> xDoc(xModel, uno::UNO_QUERY_THROW);
uno::Reference<container::XIndexAccess> xIA(xDoc->getSheets(), uno::UNO_QUERY_THROW);
uno::Reference<drawing::XDrawPageSupplier> xDrawPageSupplier(xIA->getByIndex(0), uno::UNO_QUERY_THROW);
xIA.set(xDrawPageSupplier->getDrawPage(), uno::UNO_QUERY_THROW);
uno::Reference<beans::XPropertySet> xShape(xIA->getByIndex(0), uno::UNO_QUERY_THROW);
bool bVisible = true;
xShape->getPropertyValue("Visible") >>= bVisible;
// This failed: group shape's hidden property was lost on import.
CPPUNIT_ASSERT(!bVisible);
xDocSh->DoClose();
}
void ScFiltersTest::testBnc762542()
{
ScDocShellRef xDocSh = loadDoc("bnc762542.", FORMAT_XLSX);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment