< prev index next >
src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/LinkFactoryImpl.java
Print this page
@@ -38,10 +38,11 @@
import jdk.javadoc.internal.doclets.toolkit.BaseConfiguration;
import jdk.javadoc.internal.doclets.toolkit.Content;
import jdk.javadoc.internal.doclets.toolkit.Resources;
import jdk.javadoc.internal.doclets.toolkit.util.DocPath;
import jdk.javadoc.internal.doclets.toolkit.util.DocPaths;
+import jdk.javadoc.internal.doclets.toolkit.util.DocletConstants;
import jdk.javadoc.internal.doclets.toolkit.util.links.LinkFactory;
import jdk.javadoc.internal.doclets.toolkit.util.links.LinkInfo;
/**
* A factory that returns a link given the information about it.
@@ -131,11 +132,11 @@
/**
* {@inheritDoc}
*/
@Override
- protected Content getTypeParameterLinks(LinkInfo linkInfo, boolean isClassLabel){
+ protected Content getTypeParameterLinks(LinkInfo linkInfo, boolean isClassLabel) {
Content links = newContent();
List<TypeMirror> vars = new ArrayList<>();
TypeMirror ctype = linkInfo.type != null
? utils.getComponentType(linkInfo.type)
: null;
@@ -156,15 +157,20 @@
return links;
}
if (((linkInfo.includeTypeInClassLinkLabel && isClassLabel)
|| (linkInfo.includeTypeAsSepLink && !isClassLabel)) && !vars.isEmpty()) {
links.add("<");
+ int lineStart = 0;
boolean many = false;
for (TypeMirror t : vars) {
if (many) {
links.add(",");
links.add(Contents.ZERO_WIDTH_SPACE);
+ if (links.charCount() - lineStart > DocletConstants.PREFORMATTED_LINE_LENGTH) {
+ lineStart = links.charCount();
+ links.add(DocletConstants.NL + " ");
+ }
}
links.add(getTypeParameterLink(linkInfo, t));
many = true;
}
links.add(">");
< prev index next >