Skip to content

Commit c14bbea

Browse files
committedMar 26, 2025
8352740: Introduce new factory method HtmlTree.IMG
Reviewed-by: liach, jjg
1 parent 84d3dc7 commit c14bbea

File tree

4 files changed

+24
-17
lines changed

4 files changed

+24
-17
lines changed
 

‎src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SearchWriter.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -143,10 +143,9 @@ private Content createResourceSection() {
143143
.add(HtmlTree.SPAN(Text.of("link"))
144144
.setId(HtmlId.of("page-search-link")))
145145
.add(HtmlTree.BUTTON(HtmlId.of("page-search-copy"))
146-
.add(HtmlTree.of(HtmlTag.IMG)
147-
.put(HtmlAttr.SRC, pathToRoot.resolve(DocPaths.RESOURCE_FILES)
148-
.resolve(DocPaths.CLIPBOARD_SVG).getPath())
149-
.put(HtmlAttr.ALT, copyUrlText))
146+
.add(HtmlTree.IMG(pathToRoot.resolve(DocPaths.RESOURCE_FILES)
147+
.resolve(DocPaths.CLIPBOARD_SVG),
148+
copyUrlText))
150149
.add(HtmlTree.SPAN(Text.of(copyText))
151150
.put(HtmlAttr.DATA_COPIED, copiedText))
152151
.addStyle(HtmlStyles.copy)

‎src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TableOfContents.java

+4-9
Original file line numberDiff line numberDiff line change
@@ -117,17 +117,12 @@ protected Content toContent(boolean hasFilterInput) {
117117
content.add(listBuilder);
118118
content.add(HtmlTree.BUTTON(HtmlStyles.hideSidebar)
119119
.add(HtmlTree.SPAN(writer.contents.hideSidebar).add(Entity.NO_BREAK_SPACE))
120-
.add(HtmlTree.of(HtmlTag.IMG)
121-
.put(HtmlAttr.SRC, writer.pathToRoot.resolve(DocPaths.RESOURCE_FILES)
122-
.resolve(DocPaths.LEFT_SVG).getPath())
123-
.put(HtmlAttr.ALT, writer.contents.hideSidebar.toString())));
120+
.add(HtmlTree.IMG(writer.pathToRoot.resolve(DocPaths.RESOURCE_FILES).resolve(DocPaths.LEFT_SVG),
121+
writer.contents.hideSidebar.toString())));
124122
content.add(HtmlTree.BUTTON(HtmlStyles.showSidebar)
125-
.add(HtmlTree.of(HtmlTag.IMG)
126-
.put(HtmlAttr.SRC, writer.pathToRoot.resolve(DocPaths.RESOURCE_FILES)
127-
.resolve(DocPaths.RIGHT_SVG).getPath())
128-
.put(HtmlAttr.ALT, writer.contents.showSidebar.toString()))
123+
.add(HtmlTree.IMG(writer.pathToRoot.resolve(DocPaths.RESOURCE_FILES)
124+
.resolve(DocPaths.RIGHT_SVG), writer.contents.showSidebar.toString()))
129125
.add(HtmlTree.SPAN(Entity.NO_BREAK_SPACE).add(writer.contents.showSidebar)));
130126
return content;
131127
}
132-
133128
}

‎src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/taglets/SnippetTaglet.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -194,10 +194,9 @@ private Content snippetTagOutput(Element element, SnippetTree tag, StyledText co
194194
HtmlTree.of(HtmlTag.BUTTON)
195195
.add(HtmlTree.SPAN(Text.of(copyText))
196196
.put(HtmlAttr.DATA_COPIED, copiedText))
197-
.add(HtmlTree.of(HtmlTag.IMG)
198-
.put(HtmlAttr.SRC, pathToRoot.resolve(DocPaths.RESOURCE_FILES)
199-
.resolve(DocPaths.CLIPBOARD_SVG).getPath())
200-
.put(HtmlAttr.ALT, copySnippetText))
197+
.add(HtmlTree.IMG(pathToRoot.resolve(DocPaths.RESOURCE_FILES)
198+
.resolve(DocPaths.CLIPBOARD_SVG),
199+
copySnippetText))
201200
.addStyle(HtmlStyles.copy)
202201
.addStyle(HtmlStyles.snippetCopy)
203202
.put(HtmlAttr.ARIA_LABEL, copySnippetText)

‎src/jdk.javadoc/share/classes/jdk/javadoc/internal/html/HtmlTree.java

+14
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@
3838
import java.util.Objects;
3939
import java.util.function.Function;
4040

41+
import jdk.javadoc.internal.doclets.toolkit.util.DocPath;
42+
4143
/**
4244
* A tree node representing an HTML element, containing the name of the element,
4345
* a collection of attributes, and content.
@@ -1155,6 +1157,18 @@ public static HtmlTree WBR() {
11551157
return WBR_INSTANCE;
11561158
}
11571159

1160+
/**
1161+
* {@return an HTML {@code IMG} element}
1162+
*
1163+
* @param src the path of the image
1164+
* @param alt alternate text for the image
1165+
*/
1166+
public static HtmlTree IMG(DocPath src, String alt) {
1167+
return new HtmlTree(HtmlTag.IMG)
1168+
.put(HtmlAttr.SRC, src.getPath())
1169+
.put(HtmlAttr.ALT, alt);
1170+
}
1171+
11581172
@Override
11591173
public boolean isEmpty() {
11601174
return (!hasContent() && !hasAttrs());

0 commit comments

Comments
 (0)
Please sign in to comment.