summaryrefslogtreecommitdiff
path: root/sw/qa
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2017-05-16 08:34:40 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2017-05-16 10:05:30 +0200
commitf528f9499bd91b700c549575e88fa102cfffede9 (patch)
tree3f6f1f61de123f5329cfc175ebd3bbaffac98574 /sw/qa
parent6170d7c6063da89929577702189e4e4bfe564cc7 (diff)
tdf#106953 RTF import: fix missing paragraph left margin
See commit 3915bf2dc877d5f1140798e24933db0f21386a4a (tdf#95376 DOCX import: fix incorrectly indented tab stops, 2016-01-26) for the various sources that can determine the paragraph indentation. In this case the problem was that too aggressive RTF style deduplication removed a direct indent, which then meant a fallback to the ind-from-num value, not to the ind-from-parastyle one. Change-Id: I3b47b2bbeaaedf405baef24505d23dc49bd01865 Reviewed-on: https://gerrit.libreoffice.org/37660 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
Diffstat (limited to 'sw/qa')
-rw-r--r--sw/qa/extras/rtfimport/data/tdf106953.rtf23
-rw-r--r--sw/qa/extras/rtfimport/rtfimport.cxx9
2 files changed, 32 insertions, 0 deletions
diff --git a/sw/qa/extras/rtfimport/data/tdf106953.rtf b/sw/qa/extras/rtfimport/data/tdf106953.rtf
new file mode 100644
index 000000000000..398f9df78dcf
--- /dev/null
+++ b/sw/qa/extras/rtfimport/data/tdf106953.rtf
@@ -0,0 +1,23 @@
+{\rtf \ansi \ansicpg0 \deff0 \stshfdbch1 \stshfloch0 \stshfhich0 \deflang1033 \deflangfe1033
+{\stylesheet
+{\s19 \li720
+style;
+}
+}
+{\*\listtable
+{\list
+{\listlevel \levelnfc0 \levelnfcn0 \leveljc0 \leveljcn0 \levelstartat1 \levelfollow0 \levelspace0 \levelindent0 \levellegal0 \levelnorestart0
+{\leveltext\'02\'00.;
+}
+{\levelnumbers \'01
+{\uc1 \u59 ?}
+}
+\li720 \fi-360 }
+\listid697112958 }
+}
+{\*\listoverridetable
+{\listoverride \listid697112958 \listoverridecount0 \ls1 }
+}
+\pard \plain \s19 \fi-360 \li720 \ls1
+{hello\par }
+}
diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx
index 91625bb5bb28..8cefb3af2cfa 100644
--- a/sw/qa/extras/rtfimport/rtfimport.cxx
+++ b/sw/qa/extras/rtfimport/rtfimport.cxx
@@ -1333,6 +1333,15 @@ DECLARE_RTFIMPORT_TEST(testN825305, "n825305.rtf")
CPPUNIT_ASSERT_EQUAL(beans::PropertyState_DIRECT_VALUE, ePropertyState);
}
+DECLARE_RTFIMPORT_TEST(testTdf106953, "tdf106953.rtf")
+{
+ CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(1270), getProperty<sal_Int32>(getParagraph(1), "ParaLeftMargin"));
+ uno::Reference<beans::XPropertyState> xPropertyState(getParagraph(1), uno::UNO_QUERY);
+ beans::PropertyState ePropertyState = xPropertyState->getPropertyState("ParaLeftMargin");
+ // Was beans::PropertyState_DEFAULT_VALUE.
+ CPPUNIT_ASSERT_EQUAL(beans::PropertyState_DIRECT_VALUE, ePropertyState);
+}
+
DECLARE_RTFIMPORT_TEST(testParaBottomMargin, "para-bottom-margin.rtf")
{
uno::Reference<beans::XPropertySet> xPropertySet(getStyles("ParagraphStyles")->getByName("Standard"), uno::UNO_QUERY);