sw/qa/extras/rtfimport/data/unbalanced-columns-compat.rtf |    7 +++++++
 sw/qa/extras/rtfimport/rtfimport.cxx                      |    8 ++++++++
 writerfilter/source/rtftok/rtfdocumentimpl.cxx            |    3 +++
 3 files changed, 18 insertions(+)

New commits:
commit 6f2b2e1436fe3917c1fcace2f1e2d34416311996
Author: Miklos Vajna <vmik...@collabora.co.uk>
Date:   Fri Jul 18 10:50:54 2014 +0200

    writerfilter: import RTF_NOCOLBAL
    
    Change-Id: If2efab82c0adc2f3dc52733c335693565c350bfa

diff --git a/sw/qa/extras/rtfimport/data/unbalanced-columns-compat.rtf 
b/sw/qa/extras/rtfimport/data/unbalanced-columns-compat.rtf
new file mode 100644
index 0000000..1e4b17e
--- /dev/null
+++ b/sw/qa/extras/rtfimport/data/unbalanced-columns-compat.rtf
@@ -0,0 +1,7 @@
+{\rtf1
+\nocolbal\sectd\cols2\pard\plain
+This is in the left column.\par
+This is the second line, in the same column.\par
+\sect\sectd\sbknone\pard\plain
+After section break.\par
+}
diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx 
b/sw/qa/extras/rtfimport/rtfimport.cxx
index 76de5bb..a2ff94f 100644
--- a/sw/qa/extras/rtfimport/rtfimport.cxx
+++ b/sw/qa/extras/rtfimport/rtfimport.cxx
@@ -1784,6 +1784,14 @@ DECLARE_RTFIMPORT_TEST(testFdo80905, "fdo80905.rtf")
     CPPUNIT_ASSERT_EQUAL(true, static_cast<bool>(xFields->hasMoreElements()));
 }
 
+DECLARE_RTFIMPORT_TEST(testUnbalancedColumnsCompat, 
"unbalanced-columns-compat.rtf")
+{
+    uno::Reference<text::XTextSectionsSupplier> 
xTextSectionsSupplier(mxComponent, uno::UNO_QUERY);
+    uno::Reference<container::XIndexAccess> 
xTextSections(xTextSectionsSupplier->getTextSections(), uno::UNO_QUERY);
+    // This was false, we ignored the relevant compat setting to make this 
non-last section unbalanced.
+    CPPUNIT_ASSERT_EQUAL(true, getProperty<bool>(xTextSections->getByIndex(0), 
"DontBalanceTextColumns"));
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx 
b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 8d54a69..6fe2bdc 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -3311,6 +3311,9 @@ int RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
     case RTF_BRDRSH:
         lcl_putBorderProperty(m_aStates, NS_ooxml::LN_CT_Border_shadow, 
RTFValue::Pointer_t(new RTFValue(1)));
         break;
+    case RTF_NOCOLBAL:
+        m_aSettingsTableSprms.set(NS_ooxml::LN_CT_Compat_noColumnBalance, 
RTFValue::Pointer_t(new RTFValue(1)));
+        break;
     default:
     {
         SAL_INFO("writerfilter", "TODO handle flag '" << 
lcl_RtfToString(nKeyword) << "'");
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to