diff options
author | Gülşah Köse <gulsah.kose@collabora.com> | 2022-03-24 11:19:03 +0300 |
---|---|---|
committer | Gülşah Köse <gulsah.kose@collabora.com> | 2022-03-25 08:25:49 +0100 |
commit | 362fb6c7b13d5506c6bd9d1b7f113ec45544809d (patch) | |
tree | 5f05f73591ffd583f6611c0823cf3fca7e86bc97 /sd | |
parent | 6e135909d398a08105e2df4cae834e73f253b440 (diff) |
tdf#96389 Use default tab stop value of MSO for pptx import.
Change-Id: Ib3dde68c672b44d8b60f121fb0e637942b5986b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131698
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/pptx/deftabstop.pptx | bin | 0 -> 26783 bytes | |||
-rw-r--r-- | sd/qa/unit/import-tests2.cxx | 14 | ||||
-rw-r--r-- | sd/source/ui/docshell/docshel4.cxx | 12 |
3 files changed, 26 insertions, 0 deletions
diff --git a/sd/qa/unit/data/pptx/deftabstop.pptx b/sd/qa/unit/data/pptx/deftabstop.pptx Binary files differnew file mode 100644 index 000000000000..5cfe71794446 --- /dev/null +++ b/sd/qa/unit/data/pptx/deftabstop.pptx diff --git a/sd/qa/unit/import-tests2.cxx b/sd/qa/unit/import-tests2.cxx index 2654e6f6290e..7a67debd38d9 100644 --- a/sd/qa/unit/import-tests2.cxx +++ b/sd/qa/unit/import-tests2.cxx @@ -129,6 +129,7 @@ public: void testHyperlinksOnShapes(); void testTdf112209(); void testTdf128596(); + void testDefaultTabStop(); CPPUNIT_TEST_SUITE(SdImportTest2); @@ -194,6 +195,7 @@ public: CPPUNIT_TEST(testHyperlinksOnShapes); CPPUNIT_TEST(testTdf112209); CPPUNIT_TEST(testTdf128596); + CPPUNIT_TEST(testDefaultTabStop); CPPUNIT_TEST_SUITE_END(); }; @@ -1907,6 +1909,18 @@ void SdImportTest2::testTdf128596() xDocShRef->DoClose(); } +void SdImportTest2::testDefaultTabStop() +{ + sd::DrawDocShellRef xDocShRef + = loadURL(m_directories.getURLFromSrc(u"/sd/qa/unit/data/pptx/deftabstop.pptx"), PPTX); + SdDrawDocument* pDoc = xDocShRef->GetDoc(); + sal_Int32 nDefTab = pDoc->GetDefaultTabulator(); + + CPPUNIT_ASSERT_EQUAL(sal_Int32(2540), nDefTab); + + xDocShRef->DoClose(); +} + CPPUNIT_TEST_SUITE_REGISTRATION(SdImportTest2); CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/sd/source/ui/docshell/docshel4.cxx b/sd/source/ui/docshell/docshel4.cxx index bed18cbddf70..6150321ca33a 100644 --- a/sd/source/ui/docshell/docshel4.cxx +++ b/sd/source/ui/docshell/docshel4.cxx @@ -399,6 +399,18 @@ bool DrawDocShell::ImportFrom(SfxMedium &rMedium, mpDoc->SetSummationOfParagraphs(); } + if (aFilterName == "Impress MS PowerPoint 2007 XML" || + aFilterName == "Impress MS PowerPoint 2007 XML AutoPlay" || + aFilterName == "Impress MS PowerPoint 2007 XML VBA" || + aFilterName == "Impress Office Open XML") + { + // We need to be able to set the default tab size for each text object. + // This is possible at the moment only for the whole document. See + // TextParagraphPropertiesContext constructor. So default tab width + // of the LibreOffice is 1270 but MSO is 2540 on general settings. + mpDoc->SetDefaultTabulator( 2540 ); + } + const bool bRet = SfxObjectShell::ImportFrom(rMedium, xInsertPosition); SfxItemSet* pSet = rMedium.GetItemSet(); |