summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTamás Zolnai <tamas.zolnai@collabora.com>2016-11-10 00:41:49 +0100
committerTamás Zolnai <tamas.zolnai@collabora.com>2016-11-10 17:50:04 +0000
commitdc024cdd91e3c33eeff8eea22fdef0d90d4dd2c0 (patch)
tree88c8e64ca6fffff23dfca43532edc85501a809f3
parentba2137d5117f3cd63d781dd545726cefddbcb1ff (diff)
tdf#103792: No placeholder text imported for empty title shape
Change-Id: I95b4358f0d4311e8f427c8de18863049fb718d9b Reviewed-on: https://gerrit.libreoffice.org/30731 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
-rw-r--r--oox/source/drawingml/shape.cxx2
-rw-r--r--oox/source/ppt/pptshape.cxx1
-rwxr-xr-xsd/qa/unit/data/pptx/tdf103792.pptxbin0 -> 14273 bytes
-rw-r--r--sd/qa/unit/import-tests.cxx20
4 files changed, 21 insertions, 2 deletions
diff --git a/oox/source/drawingml/shape.cxx b/oox/source/drawingml/shape.cxx
index 1befb50c1e7d..159dc6449708 100644
--- a/oox/source/drawingml/shape.cxx
+++ b/oox/source/drawingml/shape.cxx
@@ -1140,7 +1140,7 @@ Reference< XShape > const & Shape::createAndInsert(
}
}
}
-
+ xText->setString("");
Reference < XTextCursor > xAt = xText->createTextCursor();
getTextBody()->insertAt( rFilterBase, xText, xAt, aCharStyleProperties, mpMasterTextListStyle );
}
diff --git a/oox/source/ppt/pptshape.cxx b/oox/source/ppt/pptshape.cxx
index 9a673b73a8b5..18a256595ae8 100644
--- a/oox/source/ppt/pptshape.cxx
+++ b/oox/source/ppt/pptshape.cxx
@@ -142,7 +142,6 @@ void PPTShape::addShape(
{
sServiceName = "com.sun.star.presentation.TitleTextShape";
aMasterTextListStyle = rSlidePersist.getMasterPersist().get() ? rSlidePersist.getMasterPersist()->getTitleTextStyle() : rSlidePersist.getTitleTextStyle();
- bClearText = true;
}
break;
case XML_subTitle :
diff --git a/sd/qa/unit/data/pptx/tdf103792.pptx b/sd/qa/unit/data/pptx/tdf103792.pptx
new file mode 100755
index 000000000000..e48d25e40aba
--- /dev/null
+++ b/sd/qa/unit/data/pptx/tdf103792.pptx
Binary files differ
diff --git a/sd/qa/unit/import-tests.cxx b/sd/qa/unit/import-tests.cxx
index 7fded515c189..a4d6dbe7bf9e 100644
--- a/sd/qa/unit/import-tests.cxx
+++ b/sd/qa/unit/import-tests.cxx
@@ -127,6 +127,7 @@ public:
void testTdf99030();
void testTdf49561();
void testTdf103473();
+ void testTdf103792();
CPPUNIT_TEST_SUITE(SdImportTest);
@@ -179,6 +180,7 @@ public:
CPPUNIT_TEST(testTdf99030);
CPPUNIT_TEST(testTdf49561);
CPPUNIT_TEST(testTdf103473);
+ CPPUNIT_TEST(testTdf103792);
CPPUNIT_TEST_SUITE_END();
};
@@ -1504,6 +1506,24 @@ void SdImportTest::testTdf103473()
xDocShRef->DoClose();
}
+void SdImportTest::testTdf103792()
+{
+ // Title text shape on the actual slide contained no text neither a placeholder text.
+ sd::DrawDocShellRef xDocShRef = loadURL(m_directories.getURLFromSrc("/sd/qa/unit/data/pptx/tdf103792.pptx"), PPTX);
+
+ const SdrPage *pPage = GetPage(1, xDocShRef);
+ CPPUNIT_ASSERT_MESSAGE("No page found", pPage != nullptr);
+ SdrObject *pObj = pPage->GetObj(0);
+ CPPUNIT_ASSERT_MESSAGE("Wrong object", pObj != nullptr);
+ SdrTextObj *pTxtObj = dynamic_cast<SdrTextObj *>(pObj);
+ CPPUNIT_ASSERT_MESSAGE("Not a text object", pTxtObj != nullptr);
+
+ const EditTextObject& aEdit = pTxtObj->GetOutlinerParaObject()->GetTextObject();
+ CPPUNIT_ASSERT_EQUAL(OUString("Click to add Title"), aEdit.GetText(0));
+
+ xDocShRef->DoClose();
+}
+
CPPUNIT_TEST_SUITE_REGISTRATION(SdImportTest);
CPPUNIT_PLUGIN_IMPLEMENT();