#3804 javadoc 1.7 generates incompatible HTML with helpviewer

open
nobody
5
2014-03-24
2013-06-02
Alan Ezust
No

The javadoc tool generates javascript-enabled HTML now.
Try opening a class in a regular browser and compare how it looks to HelpViewer and you'll see what i mean.
We need to either disable the javascript output of javadoc,
or get a better embedded browser for helpviewer/infoviewer.

Discussion

  • Alan Ezust
    Alan Ezust
    2013-06-02

    1. Can we reuse the doclet that was used in JDK 1.6? Perhaps if we stick that into jEdit's lib tree and use that we can get HTML pages that look like 1.6 from the 1.7 tools. If so, where is it?

    2. Perhaps some css wizard can just make the right changes to the "stylesheet.css" file I added under the "doc" directory to make the currently generated pages look more like they should in our decripit old mini-browser.

     
  • Björn Kautler
    Björn Kautler
    2013-08-29

    I already played a bit with this.
    But I didn't get the old JDK 6 Doclet to work with this.
    Neither with putting something in the classpath nor with setting some bootclasspath.
    The only way I found was using the JDK 6 JavaDoc tool.
    It would be acceptable for me to having to have both JDKs on my box to create the releases, but it is not feasibly because then you still cannot use JDK 7 lanugage features or APIs as the JDK 6 tool would error out on this.

    The problem essentially is that the JEditorComponet we use to display the help pages only understands HTML 3.2, very limited CSS and no JavaScript.
    I don't think the JavaScript is the problem here, because I think it is like in the old Doclet only used for showing some text depending on whether shown in Framed mode or in Singlemode and to set some window titles.
    The big problem is the lack of proper CSS support and I don't think you can make the CSS file show the pages properly in the current HelpViewer.

    One way to show this properly would be to embed a JavaFX WebView. With a first quick try this worked and showed the pages exactly how they are supposed to be shown. It just needs some investigation and polishing like how to remove the scrollbar that JavaFX components have embedded but don't look like Swing scrollbars, how to get the information from the webview that was pulled from the JEditorComponent like current URL and so on.