bug 356310: [Mediawiki] caption in image does not appear below image
https://bugs.eclipse.org/bugs/show_bug.cgi?id=356310
diff --git a/org.eclipse.mylyn.wikitext.mediawiki.core/src/org/eclipse/mylyn/internal/wikitext/mediawiki/core/token/ImageReplacementToken.java b/org.eclipse.mylyn.wikitext.mediawiki.core/src/org/eclipse/mylyn/internal/wikitext/mediawiki/core/token/ImageReplacementToken.java
index 8ead78a..8c53fb4 100644
--- a/org.eclipse.mylyn.wikitext.mediawiki.core/src/org/eclipse/mylyn/internal/wikitext/mediawiki/core/token/ImageReplacementToken.java
+++ b/org.eclipse.mylyn.wikitext.mediawiki.core/src/org/eclipse/mylyn/internal/wikitext/mediawiki/core/token/ImageReplacementToken.java
@@ -73,6 +73,7 @@
String optionsString = group(2);
boolean thumbnail = false;
+ boolean frame = false;
ImageAttributes attributes = new ImageAttributes();
if (optionsString != null) {
@@ -106,7 +107,7 @@
} else if ("frameless".equals(option)) { //$NON-NLS-1$
attributes.setBorder(0);
} else if ("frame".equals(option)) { //$NON-NLS-1$
- attributes.setBorder(1);
+ frame = true;
} else {
Matcher altMatcher = altPattern.matcher(option);
if (altMatcher.matches()) {
@@ -123,7 +124,7 @@
}
}
}
- if (thumbnail) {
+ if (thumbnail || frame) {
// we want to generate something like this:
// <div class="thumb tleft">
// <div class="thumbinner" style="width:182px;"><a href="/wiki/File:Example.jpg"
diff --git a/org.eclipse.mylyn.wikitext.tests/src/org/eclipse/mylyn/wikitext/mediawiki/core/MediaWikiLanguageTest.java b/org.eclipse.mylyn.wikitext.tests/src/org/eclipse/mylyn/wikitext/mediawiki/core/MediaWikiLanguageTest.java
index d12494f..b56207b 100644
--- a/org.eclipse.mylyn.wikitext.tests/src/org/eclipse/mylyn/wikitext/mediawiki/core/MediaWikiLanguageTest.java
+++ b/org.eclipse.mylyn.wikitext.tests/src/org/eclipse/mylyn/wikitext/mediawiki/core/MediaWikiLanguageTest.java
@@ -473,6 +473,13 @@
assertTrue(html.contains("<img align=\"left\" alt=\"the logo\" title=\"Official logo of the [[International Floorball Federation]], floorball's governing body.\" border=\"0\" src=\"IFF_Logo.JPG\"/>"));
}
+ public void testImageWithCaptionAndFrame() {
+ String html = parser.parseToHtml("[[Image:test.png|frame|center|caption for the image]]");
+
+ TestUtil.println("HTML: \n" + html);
+ assertTrue(html.contains("<div class=\"thumb middle\"><div class=\"thumbinner\"><a href=\"test.png\" class=\"image\"><img class=\"thumbimage\" align=\"middle\" border=\"0\" src=\"test.png\"/></a><div class=\"thumbcaption\">caption for the image</div></div></div>"));
+ }
+
public void testImageWithLinkInCaptionThumbnail() {
// example from http://en.wikipedia.org/wiki/International_Floorball_Federation
String html = parser.parseToHtml("[[Image:IFF Logo.JPG|thumb|left|the logo|Official logo of the [[International Floorball Federation]], floorball's governing body.]]");