diff options
author | Gülşah Köse <gulsah.kose@collabora.com> | 2020-08-01 01:39:26 +0300 |
---|---|---|
committer | Gülşah Köse <gulsah.kose@collabora.com> | 2020-08-03 22:59:50 +0200 |
commit | e0018be102edd6e376e0622e0a9384176d2f119c (patch) | |
tree | 5b929e96e9d9e743cb66389df9d9ff538330351c /sd | |
parent | dd433565768c62d1c4ea52a88068eb919552b296 (diff) |
tdf#133687 Fix the placeholders priority order.
When we don't have type attribute on slide but have on
slidelayout we have to use it instead of default type.
Change-Id: Ibb874b5ee39c48641484fe1a8686f66c31695f76
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99904
Tested-by: Jenkins
Reviewed-by: Gülşah Köse <gulsah.kose@collabora.com>
Diffstat (limited to 'sd')
-rw-r--r-- | sd/qa/unit/data/ppt/placeholder-priority.pptx | bin | 0 -> 26091 bytes | |||
-rw-r--r-- | sd/qa/unit/import-tests.cxx | 20 |
2 files changed, 20 insertions, 0 deletions
diff --git a/sd/qa/unit/data/ppt/placeholder-priority.pptx b/sd/qa/unit/data/ppt/placeholder-priority.pptx Binary files differnew file mode 100644 index 000000000000..d11dc4785f54 --- /dev/null +++ b/sd/qa/unit/data/ppt/placeholder-priority.pptx diff --git a/sd/qa/unit/import-tests.cxx b/sd/qa/unit/import-tests.cxx index c869ce00a1a9..d595d3d421fd 100644 --- a/sd/qa/unit/import-tests.cxx +++ b/sd/qa/unit/import-tests.cxx @@ -133,6 +133,7 @@ public: void testN828390_2(); void testN828390_3(); void testFdo68594(); + void testPlaceholderPriority(); void testFdo72998(); void testFdo77027(); void testStrictOOXML(); @@ -241,6 +242,7 @@ public: CPPUNIT_TEST(testN828390_2); CPPUNIT_TEST(testN828390_3); CPPUNIT_TEST(testFdo68594); + CPPUNIT_TEST(testPlaceholderPriority); CPPUNIT_TEST(testFdo72998); CPPUNIT_TEST(testFdo77027); CPPUNIT_TEST(testStrictOOXML); @@ -688,6 +690,24 @@ void SdImportTest::testFdo68594() xDocShRef->DoClose(); } +void SdImportTest::testPlaceholderPriority() +{ + sd::DrawDocShellRef xDocShRef = loadURL(m_directories.getURLFromSrc("/sd/qa/unit/data/ppt/placeholder-priority.pptx"), PPTX); + + const SdrPage* pPage = GetPage( 1, xDocShRef ); + CPPUNIT_ASSERT_EQUAL_MESSAGE("Missing placeholder", sal_uInt32(2), sal_uInt32(pPage->GetObjCount())); + + tools::Rectangle pObj1Rect(9100, 3500, 29619, 4038); + SdrObject *pObj1 = pPage->GetObj(0); + CPPUNIT_ASSERT_EQUAL_MESSAGE("Placeholder position is wrong, check the placeholder priority", pObj1Rect, pObj1->GetCurrentBoundRect()); + + tools::Rectangle pObj2Rect(9102, 8643, 29619, 12642); + SdrObject *pObj2 = pPage->GetObj(1); + CPPUNIT_ASSERT_EQUAL_MESSAGE("Placeholder position is wrong, check the placeholder priority", pObj2Rect, pObj2->GetCurrentBoundRect()); + + // If the placeholder positions are wrong, please check placeholder priority in Placeholders class. +} + void SdImportTest::testPptCrop() { sd::DrawDocShellRef xDocShRef |