Skip to content

Commit 884153a

Browse files
Fix trait implementation not collapsing docs
1 parent 14ac1b5 commit 884153a

File tree

1 file changed

+15
-10
lines changed

1 file changed

+15
-10
lines changed

src/librustdoc/html/static/main.js

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1713,19 +1713,20 @@
17131713
// we are collapsing the impl block
17141714
function implHider(addOrRemove) {
17151715
return function(n) {
1716-
if (hasClass(n, "method")) {
1717-
if (addOrRemove) {
1718-
addClass(n, "hidden-by-impl-hider");
1719-
} else {
1720-
removeClass(n, "hidden-by-impl-hider");
1716+
var is_method = hasClass(n, "method");
1717+
if (is_method || hasClass(n, "type")) {
1718+
if (is_method === true) {
1719+
if (addOrRemove) {
1720+
addClass(n, "hidden-by-impl-hider");
1721+
} else {
1722+
removeClass(n, "hidden-by-impl-hider");
1723+
}
17211724
}
17221725
var ns = n.nextElementSibling;
17231726
while (true) {
17241727
if (ns && (
17251728
hasClass(ns, "docblock") ||
1726-
hasClass(ns, "stability") ||
1727-
false
1728-
)) {
1729+
hasClass(ns, "stability"))) {
17291730
if (addOrRemove) {
17301731
addClass(ns, "hidden-by-impl-hider");
17311732
} else {
@@ -1741,20 +1742,22 @@
17411742
}
17421743

17431744
var relatedDoc = toggle.parentNode;
1745+
var docblock = relatedDoc.nextElementSibling;
17441746

17451747
while (!hasClass(relatedDoc, "impl-items")) {
17461748
relatedDoc = relatedDoc.nextElementSibling;
17471749
}
17481750

1749-
if (!relatedDoc) {
1751+
if (!relatedDoc && !hasClass(docblock, "docblock")) {
17501752
return;
17511753
}
17521754

17531755
// Hide all functions, but not associated types/consts
17541756

17551757
var action = mode;
17561758
if (action === "toggle") {
1757-
if (hasClass(relatedDoc, "fns-now-collapsed")) {
1759+
if (hasClass(relatedDoc, "fns-now-collapsed") ||
1760+
hasClass(docblock, "hidden-by-impl-hider")) {
17581761
action = "show";
17591762
} else {
17601763
action = "hide";
@@ -1763,10 +1766,12 @@
17631766

17641767
if (action === "show") {
17651768
removeClass(relatedDoc, "fns-now-collapsed");
1769+
removeClass(docblock, "hidden-by-usual-hider");
17661770
onEach(toggle.childNodes, adjustToggle(false));
17671771
onEach(relatedDoc.childNodes, implHider(false));
17681772
} else if (action === "hide") {
17691773
addClass(relatedDoc, "fns-now-collapsed");
1774+
addClass(docblock, "hidden-by-usual-hider");
17701775
onEach(toggle.childNodes, adjustToggle(true));
17711776
onEach(relatedDoc.childNodes, implHider(true));
17721777
}

0 commit comments

Comments
 (0)