Please review an enhancement to the other specifications and tool guides (man 
pages) that adds the following features:

 - Support for light and dark themes
 - Permalinks for headings on hover
 - Responsive layout for wide screens and mobile devices

Generated documentation [can be viewed 
here](https://cr.openjdk.org/~hannesw/8377548/docs.00/specs/index.html).

The implementation for the new features is shared with API documentation, which 
was refactored to make it easier to apply in specs and man pages, which use a 
variety of build mechanisms. Instead of hard-coding the theme selector markup 
everywhere it is needed as we did before, the `initTheme()` function now 
creates the whole UI. This has the added benefit that no disfunctional theme 
selector button is generated if theme support is not loaded for some reason. 
The `initTheme()` function also encapsulates the whole theme functionality, 
whereas before it was intermingled with other code.

The JVM Tool Interface specification does not participate in the new features 
because it uses inline styles that are not compatible with themes, and 
permalink conventions for headings that are not recognized by the script. I can 
file a bug for this if it is considered a serious enough issue.

---------
- [x] I confirm that I make this contribution in accordance with the [OpenJDK 
Interim AI Policy](https://openjdk.org/legal/ai).

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

Commit messages:
 - 8377548: Implement dark theme for other specs and tool guides

Changes: https://git.openjdk.org/jdk/pull/33127/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=33127&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8377548
  Stats: 548 lines in 9 files changed: 324 ins; 127 del; 97 mod
  Patch: https://git.openjdk.org/jdk/pull/33127.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/33127/head:pull/33127

PR: https://git.openjdk.org/jdk/pull/33127

Reply via email to