The underlying mechanism of getLocalStyleSheetContent is generally wrong.

The code should not be creating content containing LINK elements, when the code to do that is in Head.java.  The code should be creating a List<DocPath> containing pointers to all the stylesheet files, and should then be using Head.setStylesheets, which allows a list of additional files to be passed in.

Also, in the test, can you put a couple of packages in the module, with different depths (e.g. package "p" and package "p.q") to ensure that the relative links work correctly in more cases.

-- Jon



On 04/29/2019 09:21 PM, Priya Lakshmi Muthuswamy wrote:

Hi Jon,

getModuleStylesheetContent is used to get the relative path of style-sheets in doc-files directory of the corresponding module.

In the case of packages/class files, we pass the PackageElement to the getLocalStylesheetContent, This method checks for the style-sheet in both the module and package doc-files directory. getModuleStylesheetContent method checks whether there is a named module and returns the relative path of the style-sheet.(Ex: ../doc-files/mod-stylesheet.css)

In the case of module files, we pass the ModuleElement to the getLocalStylesheetContent, which just needs to check for stylesheet in the local doc-files directory(Ex: doc-files/mod-stylesheet.css)

Thanks,
Priya

On 4/29/2019 9:15 PM, Jonathan Gibbons wrote:

At first glance, this looks questionable.

2193 if (element instanceof PackageElement) {
2194 stylesheetContent.add(getModuleStylesheetContent((PackageElement)element));
2195 }
Is this supposed to be using PackageElement and not ModuleElement?

-- Jon


On 4/29/19 2:32 AM, Priya Lakshmi Muthuswamy wrote:
Hi,

Kindly review the changes for supporting module specific style sheets.

JBS: https://bugs.openjdk.java.net/browse/JDK-8219313
webrev: http://cr.openjdk.java.net/~pmuthuswamy/8219313/webrev.00/

Thanks,
Priya


Reply via email to