mirror of
https://github.com/rust-lang/rust.git
synced 2025-06-06 20:28:33 +00:00
Greatly improve rustdoc rendering speed issues
This commit is contained in:
parent
118e052d84
commit
edfe2a893e
@ -868,9 +868,8 @@ themePicker.onblur = handleThemeButtonsBlur;
|
|||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
let mut data = format!("var resourcesSuffix = \"{}\";\n",
|
let mut data = static_files::STORAGE_JS.to_owned();
|
||||||
cx.shared.resource_suffix);
|
data.push_str(&format!("var resourcesSuffix = \"{}\";", cx.shared.resource_suffix));
|
||||||
data.push_str(static_files::STORAGE_JS);
|
|
||||||
write_minify(cx.dst.join(&format!("storage{}.js", cx.shared.resource_suffix)),
|
write_minify(cx.dst.join(&format!("storage{}.js", cx.shared.resource_suffix)),
|
||||||
&data,
|
&data,
|
||||||
options.enable_minification)?;
|
options.enable_minification)?;
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -368,6 +368,10 @@ body:not(.source) .example-wrap > pre {
|
|||||||
#main > .docblock h2 { font-size: 1.15em; }
|
#main > .docblock h2 { font-size: 1.15em; }
|
||||||
#main > .docblock h3, #main > .docblock h4, #main > .docblock h5 { font-size: 1em; }
|
#main > .docblock h3, #main > .docblock h4, #main > .docblock h5 { font-size: 1em; }
|
||||||
|
|
||||||
|
#main > h2 + div, #main > h2 + h3, #main > h3 + div {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
.docblock h1 { font-size: 1em; }
|
.docblock h1 { font-size: 1em; }
|
||||||
.docblock h2 { font-size: 0.95em; }
|
.docblock h2 { font-size: 0.95em; }
|
||||||
.docblock h3, .docblock h4, .docblock h5 { font-size: 0.9em; }
|
.docblock h3, .docblock h4, .docblock h5 { font-size: 0.9em; }
|
||||||
|
@ -19,55 +19,44 @@ var mainTheme = document.getElementById("mainThemeStyle");
|
|||||||
var savedHref = [];
|
var savedHref = [];
|
||||||
|
|
||||||
function hasClass(elem, className) {
|
function hasClass(elem, className) {
|
||||||
if (elem && className && elem.className) {
|
if (!elem || !elem.classList) {
|
||||||
var elemClass = elem.className;
|
|
||||||
var start = elemClass.indexOf(className);
|
|
||||||
if (start === -1) {
|
|
||||||
return false;
|
|
||||||
} else if (elemClass.length === className.length) {
|
|
||||||
return true;
|
|
||||||
} else {
|
|
||||||
if (start > 0 && elemClass[start - 1] !== ' ') {
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
var end = start + className.length;
|
return elem.classList.contains(className);
|
||||||
return !(end < elemClass.length && elemClass[end] !== ' ');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function addClass(elem, className) {
|
function addClass(elem, className) {
|
||||||
if (elem && className && !hasClass(elem, className)) {
|
if (!elem || !elem.classList) {
|
||||||
if (elem.className && elem.className.length > 0) {
|
return;
|
||||||
elem.className += ' ' + className;
|
|
||||||
} else {
|
|
||||||
elem.className = className;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
elem.classList.add(className);
|
||||||
}
|
}
|
||||||
|
|
||||||
function removeClass(elem, className) {
|
function removeClass(elem, className) {
|
||||||
if (elem && className && elem.className) {
|
if (!elem || !elem.classList) {
|
||||||
elem.className = (" " + elem.className + " ").replace(" " + className + " ", " ")
|
return;
|
||||||
.trim();
|
|
||||||
}
|
}
|
||||||
|
elem.classList.remove(className);
|
||||||
}
|
}
|
||||||
|
|
||||||
function isHidden(elem) {
|
function isHidden(elem) {
|
||||||
return (elem.offsetParent === null)
|
return (elem.offsetParent === null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var allcallers = {};
|
||||||
|
var resourcesSuffix="";
|
||||||
|
|
||||||
function onEach(arr, func, reversed) {
|
function onEach(arr, func, reversed) {
|
||||||
if (arr && arr.length > 0 && func) {
|
if (arr && arr.length > 0 && func) {
|
||||||
|
var length = arr.length;
|
||||||
if (reversed !== true) {
|
if (reversed !== true) {
|
||||||
for (var i = 0; i < arr.length; ++i) {
|
for (var i = 0; i < length; ++i) {
|
||||||
if (func(arr[i]) === true) {
|
if (func(arr[i]) === true) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (var i = arr.length - 1; i >= 0; --i) {
|
for (var i = length - 1; i >= 0; --i) {
|
||||||
if (func(arr[i]) === true) {
|
if (func(arr[i]) === true) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -133,8 +122,8 @@ function switchTheme(styleElem, mainStyleElem, newTheme) {
|
|||||||
});
|
});
|
||||||
if (found === true) {
|
if (found === true) {
|
||||||
styleElem.href = newHref;
|
styleElem.href = newHref;
|
||||||
updateLocalStorage('rustdoc-theme', newTheme);
|
updateLocalStorage("rustdoc-theme", newTheme);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
switchTheme(currentTheme, mainTheme, getCurrentValue('rustdoc-theme') || 'light');
|
switchTheme(currentTheme, mainTheme, getCurrentValue("rustdoc-theme") || "light");
|
||||||
|
Loading…
Reference in New Issue
Block a user