src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java
changeset 48295 c79d31ba84b9
parent 48029 e9dab2492924
child 48654 36f58bd6269f
--- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java	Wed Dec 13 21:25:49 2017 +0100
+++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java	Wed Dec 13 12:45:06 2017 -0800
@@ -1119,7 +1119,7 @@
                     (label == null) || label.isEmpty() ? defaultLabel : label,
                     strong,
                     resources.getText("doclet.Href_Class_Or_Interface_Title", packageName),
-                    "");
+                    "", true);
             }
         }
         return null;
@@ -1137,6 +1137,11 @@
             DocPaths.PACKAGE_SUMMARY.getPath());
     }
 
+    public DocLink getCrossModuleLink(String mdleName) {
+        return configuration.extern.getExternalLink(mdleName, pathToRoot,
+            DocPaths.moduleSummary(mdleName).getPath());
+    }
+
     /**
      * Get the class link.
      *
@@ -1411,13 +1416,14 @@
                             new StringContent(refPackage.getQualifiedName()));
                 return getPackageLink(refPackage, label);
             } else {
-                // @see is not referencing an included class or package.  Check for cross links.
+                // @see is not referencing an included class, module or package. Check for cross links.
                 Content classCrossLink;
-                DocLink packageCrossLink = getCrossPackageLink(refClassName);
-                if (packageCrossLink != null) {
-                    // Package cross link found
-                    return Links.createLink(packageCrossLink,
-                        (label.isEmpty() ? text : label));
+                DocLink elementCrossLink = (configuration.extern.isModule(refClassName))
+                        ? getCrossModuleLink(refClassName) : getCrossPackageLink(refClassName);
+                if (elementCrossLink != null) {
+                    // Element cross link found
+                    return Links.createLink(elementCrossLink,
+                            (label.isEmpty() ? text : label), true);
                 } else if ((classCrossLink = getCrossClassLink(refClassName,
                         refMemName, label, false, !isLinkPlain)) != null) {
                     // Class cross link found (possibly to a member in the class)