Author: adelmelle
Date: Fri May 15 10:22:23 2015
New Revision: 1679533
URL: http://svn.apache.org/r1679533
Log:
Minor fix to make footnotes easier to track while debugging. Added disabled
layout test as a reminder for the missing piece.
Added:
xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/footnote_id.xml
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/Footnote.java
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/FootnoteBody.java
xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/extract-events.xsl
xmlgraphics/fop/trunk/test/layoutengine/disabled-testcases.xml
Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/Footnote.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/Footnote.java?rev=1679533&r1=1679532&r2=1679533&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/Footnote.java
(original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/Footnote.java Fri May
15 10:22:23 2015
@@ -52,11 +52,13 @@ public class Footnote extends FObj imple
/** {@inheritDoc} */
public void bind(PropertyList pList) throws FOPException {
+ super.bind(pList);
commonAccessibility = CommonAccessibility.getInstance(pList);
}
/** {@inheritDoc} */
public void startOfNode() throws FOPException {
+ super.startOfNode();
getFOEventHandler().startFootnote(this);
}
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/FootnoteBody.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/FootnoteBody.java?rev=1679533&r1=1679532&r2=1679533&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/FootnoteBody.java
(original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/flow/FootnoteBody.java Fri
May 15 10:22:23 2015
@@ -50,11 +50,13 @@ public class FootnoteBody extends FObj i
/** {@inheritDoc} */
public void bind(PropertyList pList) throws FOPException {
+ super.bind(pList);
commonAccessibility = CommonAccessibility.getInstance(pList);
}
/** {@inheritDoc} */
public void startOfNode() throws FOPException {
+ super.startOfNode();
getFOEventHandler().startFootnoteBody(this);
}
Modified: xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/extract-events.xsl
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/extract-events.xsl?rev=1679533&r1=1679532&r2=1679533&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/extract-events.xsl
(original)
+++ xmlgraphics/fop/trunk/test/java/org/apache/fop/fo/extract-events.xsl Fri
May 15 10:22:23 2015
@@ -30,12 +30,6 @@
</xsl:call-template>
</xsl:template>
- <!-- Those elements do not retrieve the id property.
- This will have to be fixed at some point. -->
- <xsl:template match="fo:footnote|fo:footnote-body">
- <xsl:call-template name="process.node"/>
- </xsl:template>
-
<xsl:template name="process.node">
<xsl:param name="id" select="''"/>
<event>
Modified: xmlgraphics/fop/trunk/test/layoutengine/disabled-testcases.xml
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/test/layoutengine/disabled-testcases.xml?rev=1679533&r1=1679532&r2=1679533&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/test/layoutengine/disabled-testcases.xml (original)
+++ xmlgraphics/fop/trunk/test/layoutengine/disabled-testcases.xml Fri May 15
10:22:23 2015
@@ -200,7 +200,7 @@
<name>Soft hyphen with normal hyphenation enabled</name>
<file>block_shy_linebreaking_hyph.xml</file>
<description>A soft hyphen should be a preferred as break compared to a
- normal hyphenation point but is not.</description>
+ normal hyphenation point but is not. Background info: see JIRA
FOP-2466.</description>
</testcase>
<testcase>
<name>Page-keep not respected in multi-column layout</name>
@@ -219,4 +219,10 @@
<description>Test erroneously depends upon incorrect implementation of
writing-mode trait
derivation on fo:region-*.</description>
</testcase>
+ <testcase>
+ <name>Footnotes and "id" property</name>
+ <file>footnote_id.xml</file>
+ <description>The "id" for fo:footnote and fo:footnote-body is properly
+ processed, but implementation in the layout engine remains
incomplete/</description>
+ </testcase>
</disabled-testcases>
Added:
xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/footnote_id.xml
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/footnote_id.xml?rev=1679533&view=auto
==============================================================================
--- xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/footnote_id.xml
(added)
+++ xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/footnote_id.xml
Fri May 15 10:22:23 2015
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<!-- $Id$ -->
+<testcase>
+ <info>
+ <p>
+ This test checks registration of the "id" of fo:footnote and
fo:footnote-body,
+ so that they can be referenced in other places in the document.
+ </p>
+ </info>
+ <fo>
+ <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:svg="http://www.w3.org/2000/svg">
+ <fo:layout-master-set>
+ <fo:simple-page-master master-name="normal" page-width="5in"
page-height="3in">
+ <fo:region-body/>
+ </fo:simple-page-master>
+ </fo:layout-master-set>
+ <fo:page-sequence master-reference="normal" white-space-collapse="true">
+ <fo:flow flow-name="xsl-region-body">
+ <fo:block text-align="center">
+ Blah
+ <fo:footnote id="fn1">
+ <fo:inline font-size="6.95pt" vertical-align="super">1)
</fo:inline>
+ <fo:footnote-body id="fnb1">
+ <fo:block text-align="left">
+ <fo:inline font-size="6.95pt" vertical-align="super">1)
</fo:inline>http://xmlgrapics.apache.org/fop/</fo:block>
+ </fo:footnote-body>
+ </fo:footnote>
+ </fo:block>
+ <fo:block text-align="center" break-before="page">
+ <fo:basic-link internal-destination="fn1">This should link to
previous page</fo:basic-link>
+ </fo:block>
+ <fo:block text-align="center">
+ <fo:basic-link internal-destination="fn1">This should link to
previous page</fo:basic-link>
+ </fo:block>
+ </fo:flow>
+ </fo:page-sequence>
+ </fo:root>
+ </fo>
+ <checks>
+ <!-- Check fo:footnote @id -->
+ <!-- First two checks based on the assumption that fix is to add an empty
inline
+ area to hold the @prod-id -->
+ <true xpath="((//page)[1]//block)[1]/lineArea[1]/inline[1]/@prod-id" />
+ <eval expected="fn1"
xpath="((//page)[1]//block)[1]/lineArea[1]/inline[1]/@prod-id"/>
+ <true
xpath="((//page)[2]//block)[1]/lineArea[1]/inlineparent[1]/@internal-link" />
+ <eval expected="(P1,fn1)"
xpath="((//page)[2]//block)[1]/lineArea[1]/inlineparent[1]/@internal-link"/>
+ <!-- Check fo:footnote-body @id -->
+ <!-- TODO - figure out where @prod-id should go -->
+ <true
xpath="((//page)[2]//block)[2]/lineArea[1]/inlineparent[1]/@internal-link" />
+ <eval expected="(P1,fnb1)"
xpath="((//page)[2]//block)[1]/lineArea[1]/inlineparent[2]/@internal-link"/>
+ </checks>
+</testcase>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]