1
Fork 0
Commit graph

7 commits

Author SHA1 Message Date
Guillaume Gomez
7efba33582 Unify storage getter and setter functions 2022-02-02 21:34:44 +01:00
Jacob Hoffman-Andrews
b30725eab7 Update theme on pageshow event
When a user goes forward or back, the page may be rendered from the
back/forward cache (https://web.dev/bfcache/) rather than from scratch. If
they have changed theme in the meantime, that means seeing an incorrect
theme on the page they went forward or back to. The `pageshow` event
fires on such navigations, so we can update the theme based on that event.
2022-01-23 17:17:58 -08:00
Jacob Hoffman-Andrews
04f04026c5 Add support for "always theme" in setting 2022-01-14 19:33:37 -08:00
Jacob Hoffman-Andrews
7ba086c6db Add some JSDoc comments to rustdoc JS
This follows the Closure Compiler dialect of JSDoc, so we
can use it to do some basic type checking. We don't plan to
compile with Closure Compiler, just use it to check types. See
https://github.com/google/closure-compiler/wiki/ for details.
2021-12-22 14:20:04 -08:00
Jacob Hoffman-Andrews
f0683f98fa Move themes and version into rustdoc-vars
We had been injecting the list of themes and the rustdoc version into
main.js by rewriting it at doc generation time. By avoiding this
rewrite, we can make it easier to edit main.js without regenerating all
the docs.

Added a more convenient accessor for rustdoc-vars.

Changed storage.js to not rely on resourcesSuffix. It could in theory
use rustdoc-vars, but because rustdoc-vars is at the end of the HTML,
it's not available when storage.js runs (very early in page load).
2021-11-24 19:41:47 -08:00
Ian Jackson
155b055478 rustdoc: Restore --default-theme, etc, by restoring varname escaping
In #86157

    cd0f93193c
    Use Tera templates for rustdoc.

dropped the following transformation from the keys of the default
settings element's `data-` attribute names:

    .map(|(k, v)| format!(r#" data-{}="{}""#, k.replace('-', "_"), Escape(v)))

The `Escape` part is indeed no longer needed, because Tera does that
for us.  But the massaging of `-` to `_` is needed, for the (bizarre)
reasons explained in the new comments.

I have tested that the default theme function works again for me.  I
have also verified that passing

    --default-theme="zork&"

escapes the value in the HTML.

Closes #87263.

CC: Jacob Hoffman-Andrews <github@hoffman-andrews.com>
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2021-07-21 19:54:27 +02:00
Guillaume Gomez
e5c24ba400 Clean up rustdoc static files 2021-07-07 17:52:18 +02:00
Renamed from src/librustdoc/html/static/storage.js (Browse further)