Kaydet (Commit) ce2e7a4e authored tarafından Justin Luth's avatar Justin Luth

tdf#98700 docxexport: don't force on ParaKeepTogether

The mere presence of SvxFormatKeepItem was ENABLING it during export,
without checking to see if it was actually turned on or off.
Both DOC and RTF check the value, and set accordingly, so do the
same for DOCX.

Merely toggling the setting on and off is enough to create the
property, so this is a nasty bug that only affects inquisitive
people.

Change-Id: I02d83a255f5b4ff8c5124302a52a3126dad40b67
Reviewed-on: https://gerrit.libreoffice.org/41309Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarJustin Luth <justin_luth@sil.org>
üst 10a914f3
...@@ -217,6 +217,15 @@ DECLARE_OOXMLEXPORT_TEST(testTdf46940_dontEquallyDistributeColumns, "tdf46940_do ...@@ -217,6 +217,15 @@ DECLARE_OOXMLEXPORT_TEST(testTdf46940_dontEquallyDistributeColumns, "tdf46940_do
CPPUNIT_ASSERT_EQUAL(true, getProperty<bool>(xTextSections->getByIndex(3), "DontBalanceTextColumns")); CPPUNIT_ASSERT_EQUAL(true, getProperty<bool>(xTextSections->getByIndex(3), "DontBalanceTextColumns"));
} }
DECLARE_OOXMLEXPORT_TEST(testTdf98700_keepWithNext, "tdf98700_keepWithNext.odt")
{
CPPUNIT_ASSERT_EQUAL_MESSAGE("Heading style keeps with next", true, getProperty<bool>(getParagraph(1), "ParaKeepTogether"));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Default style doesn't keep with next", false, getProperty<bool>(getParagraph(2), "ParaKeepTogether"));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Heading 1 style inherits keeps with next", true, getProperty<bool>(getParagraph(3), "ParaKeepTogether"));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Heading 2 style disabled keep with next", false, getProperty<bool>(getParagraph(4), "ParaKeepTogether"));
CPPUNIT_ASSERT_EQUAL_MESSAGE("Text Body style toggled off keep with next", false, getProperty<bool>(getParagraph(5), "ParaKeepTogether"));
}
// base class to supply a helper method for testHFLinkToPrev // base class to supply a helper method for testHFLinkToPrev
class testHFBase : public Test class testHFBase : public Test
{ {
......
...@@ -8190,9 +8190,11 @@ void DocxAttributeOutput::FormatColumns_Impl( sal_uInt16 nCols, const SwFormatCo ...@@ -8190,9 +8190,11 @@ void DocxAttributeOutput::FormatColumns_Impl( sal_uInt16 nCols, const SwFormatCo
m_pSerializer->endElementNS( XML_w, XML_cols ); m_pSerializer->endElementNS( XML_w, XML_cols );
} }
void DocxAttributeOutput::FormatKeep( const SvxFormatKeepItem& ) void DocxAttributeOutput::FormatKeep( const SvxFormatKeepItem& rItem )
{ {
m_pSerializer->singleElementNS( XML_w, XML_keepNext, FSEND ); m_pSerializer->singleElementNS( XML_w, XML_keepNext,
FSNS( XML_w, XML_val ), OString::boolean( rItem.GetValue() ),
FSEND );
} }
void DocxAttributeOutput::FormatTextGrid( const SwTextGridItem& rGrid ) void DocxAttributeOutput::FormatTextGrid( const SwTextGridItem& rGrid )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment