[Libreoffice-commits] core.git: xmloff/source
Michael Stahl (via logerrit)
logerrit at kemper.freedesktop.org
Fri May 8 16:39:09 UTC 2020
xmloff/source/style/XMLPageExport.cxx | 8 ++++++--
xmloff/source/style/styleexp.cxx | 8 ++++++--
xmloff/source/style/xmlnume.cxx | 8 ++++++--
xmloff/source/style/xmlstyle.cxx | 7 +++++++
4 files changed, 25 insertions(+), 6 deletions(-)
New commits:
commit 7f41eb8768160f79297712f3ac61a25a72dcd5a0
Author: Michael Stahl <Michael.Stahl at cib.de>
AuthorDate: Wed Apr 22 20:52:52 2020 +0200
Commit: Michael Stahl <michael.stahl at cib.de>
CommitDate: Fri May 8 18:38:32 2020 +0200
xmloff: ODF export: fix style:hidden nonsense, step 1
a0dcf961879ab644a52f801f65466756cb144b72 introduced style:hidden
attribute, fix the obvious problems with this:
* as a non-ODF attribute it should use LO_EXT namespace
* import LO_EXT namespace too
* comparing == ODFVER_LATEST is wrong; it already prevents
exporting in ODFVER_012_EXT_COMPAT case.
Don't remove export to STYLE namespace yet even though it's invalid,
because existing LO releases expect that.
Change-Id: I258202cc572a7c50f3b2620da3b9970d34fbf80b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92730
Reviewed-by: Michael Stahl <michael.stahl at cib.de>
Tested-by: Jenkins
diff --git a/xmloff/source/style/XMLPageExport.cxx b/xmloff/source/style/XMLPageExport.cxx
index 7a07e732626d..f3b27b7d88f5 100644
--- a/xmloff/source/style/XMLPageExport.cxx
+++ b/xmloff/source/style/XMLPageExport.cxx
@@ -119,8 +119,12 @@ bool XMLPageExport::exportStyle(
{
uno::Any aValue = xPropSet->getPropertyValue( "Hidden" );
bool bHidden = false;
- if ( ( aValue >>= bHidden ) && bHidden && GetExport( ).getDefaultVersion( ) == SvtSaveOptions::ODFVER_LATEST )
- GetExport( ).AddAttribute( XML_NAMESPACE_STYLE, XML_HIDDEN, "true" );
+ if ((aValue >>= bHidden) && bHidden
+ && GetExport().getSaneDefaultVersion() & SvtSaveOptions::ODFSVER_EXTENDED)
+ {
+ GetExport().AddAttribute(XML_NAMESPACE_LO_EXT, XML_HIDDEN, "true");
+ GetExport().AddAttribute(XML_NAMESPACE_STYLE, XML_HIDDEN, "true"); // FIXME for compatibility
+ }
}
if( bEncoded )
diff --git a/xmloff/source/style/styleexp.cxx b/xmloff/source/style/styleexp.cxx
index 32c8be5408e6..dcfe8b9f7c63 100644
--- a/xmloff/source/style/styleexp.cxx
+++ b/xmloff/source/style/styleexp.cxx
@@ -169,8 +169,12 @@ bool XMLStyleExport::exportStyle(
{
aAny = xPropSet->getPropertyValue( "Hidden" );
bool bHidden = false;
- if ( ( aAny >>= bHidden ) && bHidden && GetExport( ).getDefaultVersion( ) == SvtSaveOptions::ODFVER_LATEST )
- GetExport( ).AddAttribute( XML_NAMESPACE_STYLE, XML_HIDDEN, "true" );
+ if ((aAny >>= bHidden) && bHidden
+ && GetExport().getSaneDefaultVersion() & SvtSaveOptions::ODFSVER_EXTENDED)
+ {
+ GetExport().AddAttribute(XML_NAMESPACE_LO_EXT, XML_HIDDEN, "true");
+ GetExport().AddAttribute(XML_NAMESPACE_STYLE, XML_HIDDEN, "true"); // FIXME for compatibility
+ }
}
// style:parent-style-name="..."
diff --git a/xmloff/source/style/xmlnume.cxx b/xmloff/source/style/xmlnume.cxx
index b6a99a179b4b..78635379f6da 100644
--- a/xmloff/source/style/xmlnume.cxx
+++ b/xmloff/source/style/xmlnume.cxx
@@ -656,8 +656,12 @@ void SvxXMLNumRuleExport::exportNumberingRule(
}
// style:hidden="..."
- if ( bIsHidden && GetExport( ).getDefaultVersion( ) == SvtSaveOptions::ODFVER_LATEST )
- GetExport( ).AddAttribute( XML_NAMESPACE_STYLE, XML_HIDDEN, "true" );
+ if (bIsHidden
+ && GetExport().getSaneDefaultVersion() & SvtSaveOptions::ODFSVER_EXTENDED)
+ {
+ GetExport().AddAttribute(XML_NAMESPACE_LO_EXT, XML_HIDDEN, "true");
+ GetExport().AddAttribute(XML_NAMESPACE_STYLE, XML_HIDDEN, "true"); // FIXME for compatibility
+ }
// text:consecutive-numbering="..."
bool bContNumbering = false;
diff --git a/xmloff/source/style/xmlstyle.cxx b/xmloff/source/style/xmlstyle.cxx
index 9c396efba82e..8b8745d6325f 100644
--- a/xmloff/source/style/xmlstyle.cxx
+++ b/xmloff/source/style/xmlstyle.cxx
@@ -126,6 +126,13 @@ void SvXMLStyleContext::SetAttribute( sal_uInt16 nPrefixKey,
mbHidden = rValue.toBoolean();
}
}
+ else if (XML_NAMESPACE_LO_EXT == nPrefixKey)
+ {
+ if (IsXMLToken(rLocalName, XML_HIDDEN))
+ {
+ mbHidden = rValue.toBoolean();
+ }
+ }
}
More information about the Libreoffice-commits
mailing list