From 5a5d948e230dfea61108452579b68da75706cad4 Mon Sep 17 00:00:00 2001 From: Miklos Vajna Date: Thu, 3 Apr 2014 17:40:05 +0200 Subject: bnc#821208 DOC import: fix unwanted char background in numbering char style Word supports formatting the paragraph parker itself, and we import that as a formatting at a position after the last character (e.g. "foo" will have that formatting at char pos 3, which is ignored by the layout). In addition to this hack, commit 1c22545edf9085b9f2656ca92781158b6b123db3 (Fix issue #i119405: Numbering text style changed after importing the *.doc, 2012-08-24) added a SwTxtNode::TryCharSetExpandToNum() hack to Writer core, where in case such a paragraph marker attribute is set, and the SwTxtNode has a numbering, then also modify the associated character style as well. As that commit already noticed, there are attributes which should not be propagated to that character style. Extend this blacklist to ignore RES_CHRATR_BACKGROUND as well, as Word does. Change-Id: Idcb40d37d8688c76fbd61f28428f6e3bc995f799 --- sw/qa/extras/ww8import/data/bnc821208.doc | Bin 30208 -> 30208 bytes sw/qa/extras/ww8import/ww8import.cxx | 3 +++ sw/source/core/txtnode/thints.cxx | 2 +- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/sw/qa/extras/ww8import/data/bnc821208.doc b/sw/qa/extras/ww8import/data/bnc821208.doc index d89d711f38be..cfe76806ef80 100755 Binary files a/sw/qa/extras/ww8import/data/bnc821208.doc and b/sw/qa/extras/ww8import/data/bnc821208.doc differ diff --git a/sw/qa/extras/ww8import/ww8import.cxx b/sw/qa/extras/ww8import/ww8import.cxx index 861a960ee78f..9c9b5d81c86e 100644 --- a/sw/qa/extras/ww8import/ww8import.cxx +++ b/sw/qa/extras/ww8import/ww8import.cxx @@ -242,6 +242,9 @@ DECLARE_WW8IMPORT_TEST(testBnc821208, "bnc821208.doc") beans::PropertyState ePropertyState = xPropertyState->getPropertyState("CharFontName"); // This was beans::PropertyState_DIRECT_VALUE. CPPUNIT_ASSERT_EQUAL(beans::PropertyState_DEFAULT_VALUE, ePropertyState); + + // Background of the numbering itself should have been the default, was yellow (0xffff00). + CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), getProperty(xPropertyState, "CharBackColor")); } DECLARE_WW8IMPORT_TEST(testCp1000044, "cp1000044.doc") diff --git a/sw/source/core/txtnode/thints.cxx b/sw/source/core/txtnode/thints.cxx index e9dbd89d9a09..0e4c6f649299 100644 --- a/sw/source/core/txtnode/thints.cxx +++ b/sw/source/core/txtnode/thints.cxx @@ -1784,7 +1784,7 @@ void SwTxtNode::DelSoftHyph( const sal_Int32 nStt, const sal_Int32 nEnd ) //In MS Word, the font underline setting of the paragraph end position wont affect the formatting of numbering, so we ignore it bool lcl_IsIgnoredCharFmtForNumbering(const sal_uInt16 nWhich) { - return (nWhich == RES_CHRATR_UNDERLINE); + return (nWhich == RES_CHRATR_UNDERLINE || nWhich == RES_CHRATR_BACKGROUND); } //In MS Word, following properties of the paragraph end position wont affect the formatting of bullets, so we ignore them: -- cgit v1.2.3