[Libreoffice-commits] core.git: filter/source

Julien Nabet serval2412 at yahoo.fr
Tue May 16 07:10:05 UTC 2017


 filter/source/xslt/odf2xhtml/export/xhtml/body.xsl |   12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

New commits:
commit d67747c59c22e0346e13560810b9f3bf6c698428
Author: Julien Nabet <serval2412 at yahoo.fr>
Date:   Mon May 15 22:03:02 2017 +0200

    tdf#107696: fix exports Heading style numbers
    
    by taking into account text:is-list-header="true"
    (thank you for having pointing at this attribute of header Regina!)
    
    Change-Id: Ia0d9e0042e7ca3f31284c85f6b5336e1434bc0e6
    Reviewed-on: https://gerrit.libreoffice.org/37655
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Julien Nabet <serval2412 at yahoo.fr>

diff --git a/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl b/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl
index e7bcab15f577..03d4a8fce087 100644
--- a/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl
+++ b/filter/source/xslt/odf2xhtml/export/xhtml/body.xsl
@@ -1416,14 +1416,24 @@
 		<xsl:param name="i" select="1"/>
 
 		<xsl:variable name="precedingoutlineLevel" select="preceding-sibling::text:h[$i]/@text:outline-level"/>
+		<!-- tdf#107696: if text:h has attribute "is-list-header" with "true" value, it mustn't be counted for numbering -->
+		<xsl:variable name="precedingoutlineLevel-is-list-header" select="preceding-sibling::text:h[$i][@text:is-list-header='true']/@text:outline-level"/>
 		<xsl:choose>
-			<xsl:when test="$currentoutlineLevel = $precedingoutlineLevel">
+			<xsl:when test="($currentoutlineLevel = $precedingoutlineLevel) and (not($precedingoutlineLevel-is-list-header)) ">
 				<xsl:call-template name="calc-heading-digit">
 					<xsl:with-param name="value" select="$value + 1"/>
 					<xsl:with-param name="currentoutlineLevel" select="$currentoutlineLevel"/>
 					<xsl:with-param name="i" select="$i + 1"/>
 				</xsl:call-template>
 			</xsl:when>
+			<!-- tdf#107696: case text:h has attribute "is-list-header" with "true" value, we don't increment value -->
+			<xsl:when test="($currentoutlineLevel = $precedingoutlineLevel) and ($precedingoutlineLevel-is-list-header) ">
+				<xsl:call-template name="calc-heading-digit">
+					<xsl:with-param name="value" select="$value"/>
+					<xsl:with-param name="currentoutlineLevel" select="$currentoutlineLevel"/>
+					<xsl:with-param name="i" select="$i + 1"/>
+				</xsl:call-template>
+			</xsl:when>
 			<xsl:when test="$currentoutlineLevel < $precedingoutlineLevel">
 				<xsl:call-template name="calc-heading-digit">
 					<xsl:with-param name="value" select="$value"/>


More information about the Libreoffice-commits mailing list