On Fri, 30 Oct 2020 20:11:49 GMT, Hannes Wallnöfer <hann...@openjdk.org> wrote:

> This PR adds a dedicated signature to module and package overview pages and 
> moves all code for generating signatures to a new 
> `doclets.formats.html.Signatures` utility class. The `Signatures` class 
> contains two public static methods for module and package signatures as well 
> as two inner classes for type and member signatures. 
> 
> Signatures are rendered as `<div>` elements with top level CSS classes that 
> identify the kind of signature: `module-signature`, `package-signature`, 
> `type-signature` and `member-signature`. Signature components are rendered as 
> `<span>` elements with CSS classes that identify the component, e.g.: 
> `modifiers`, `annotations`, `element-name`, `exceptions`. 
> 
> As a side benefit, this PR reduces the number of methods in 
> `HtmlDocletWriter` used to generate annotation information.

Generally, very nice to see this continuation of the improvements to handle 
signatures.

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ClassWriterImpl.java
 line 300:

> 298:             Set<TypeElement> subclasses = 
> classtree.directSubClasses(typeElement, false);
> 299:             if (!subclasses.isEmpty()) {
> 300:                 HtmlTree dl = HtmlTree.DL(HtmlStyle.notes);

I'm surprised this has gone; is this intentional?

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java
 line 1681:

> 1679: 
> 1680:     /**
> 1681:      * Return a content tree containing the  annotation types for the 
> given Element.

(minor) either put type names (Element) in code font or use English equivalent 
(element).

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java
 line 1686:

> 1684:      * @param lineBreak if true add new line between each member value
> 1685:      * @return the documentation tree to which the annotation info will 
> be
> 1686:      *        added

The method is `getAnnotationInfo` so it seems strange/confusing to return an 
object to which the info _will be_ added (future tense.)  I'm surprised it's 
not a documentation tree containing the annotation info.
Is this a hangover from the old code?

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java
 line 1693:

> 1691: 
> 1692:     /**
> 1693:      * Return a content tree containing the annotation types for the 
> given element.

`Returns`

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java
 line 1718:

> 1716:      *
> 1717:      * @param descList a list of annotation mirrors.
> 1718:      * @param lineBreak if true, add new line between each member value.

Funny typo ;-)  Good catch!

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlStyle.java
 line 531:

> 529:     //<editor-fold desc="member signature">
> 530:     //
> 531:     // The following constants are used for the components of a 
> signature of an element

Two lines earlier, line 529, change `member signature` to `signatures`

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css
 line 490:

> 488: .deprecated-content {
> 489:     margin:0;
> 490:     padding:10px 0;

Yay! Good improvement.

-------------

Marked as reviewed by jjg (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/966

Reply via email to