{# #}
{{Self::markdown(lint.docs)}}
{# #}
diff --git a/util/gh-pages/script.js b/util/gh-pages/script.js
index cc22a39b3d1..ac928621362 100644
--- a/util/gh-pages/script.js
+++ b/util/gh-pages/script.js
@@ -138,18 +138,17 @@ function onEachLazy(lazyArray, func) {
}
}
-function highlightIfNeeded(elem) {
- onEachLazy(elem.querySelectorAll("pre > code.language-rust:not(.highlighted)"), el => {
+function highlightIfNeeded(lintId) {
+ onEachLazy(document.querySelectorAll(`#${lintId} pre > code:not(.hljs)`), el => {
hljs.highlightElement(el.parentElement)
el.classList.add("highlighted");
});
}
function expandLint(lintId) {
- const lintElem = document.getElementById(lintId);
- const isCollapsed = lintElem.classList.toggle("collapsed");
- lintElem.querySelector(".label-doc-folding").innerText = isCollapsed ? "+" : "−";
- highlightIfNeeded(lintElem);
+ const elem = document.querySelector(`#${lintId} > input[type="checkbox"]`);
+ elem.checked = true;
+ highlightIfNeeded(lintId);
}
// Show details for one lint
diff --git a/util/gh-pages/style.css b/util/gh-pages/style.css
index a68a10b1401..d207996ab2f 100644
--- a/util/gh-pages/style.css
+++ b/util/gh-pages/style.css
@@ -309,12 +309,12 @@ L4.75,12h2.5l0.5393066-2.1572876 c0.2276001-0.1062012,0.4459839-0.2269287,0.649
.page-header {
border-color: var(--theme-popup-border);
}
-.panel-default > .panel-heading {
+.panel-default .panel-heading {
background: var(--theme-hover);
color: var(--fg);
border: 1px solid var(--theme-popup-border);
}
-.panel-default > .panel-heading:hover {
+.panel-default .panel-heading:hover {
filter: brightness(90%);
}
.list-group-item {
@@ -410,9 +410,25 @@ body {
color: var(--fg);
}
-article.collapsed .lint-docs {
+article > label {
+ width: 100%;
+ margin: 0;
+}
+article > input[type="checkbox"] {
display: none;
}
+article > input[type="checkbox"] + label .label-doc-folding::before {
+ content: "+";
+}
+article > input[type="checkbox"]:checked + label .label-doc-folding::before {
+ content: "−";
+}
+.lint-docs {
+ display: none;
+}
+article > input[type="checkbox"]:checked ~ .lint-docs {
+ display: block;
+}
.github-corner svg {
fill: var(--fg);