diff --git a/src/librustdoc/html/static/js/main.js b/src/librustdoc/html/static/js/main.js index 32aa82195a962..c9fa72cbaab01 100644 --- a/src/librustdoc/html/static/js/main.js +++ b/src/librustdoc/html/static/js/main.js @@ -888,7 +888,7 @@ function hideThemeButtonState() { onEachLazy(document.querySelectorAll(".rustdoc-toggle > summary:not(.hideme)"), function(el) { el.addEventListener("click", function(e) { - if (e.target.tagName != "SUMMARY") { + if (e.target.tagName != "SUMMARY" && e.target.tagName != "A") { e.preventDefault(); } }); diff --git a/src/test/rustdoc-gui/toggle-click-deadspace.goml b/src/test/rustdoc-gui/toggle-click-deadspace.goml index 6fcee65809d6d..7bc3c56315784 100644 --- a/src/test/rustdoc-gui/toggle-click-deadspace.goml +++ b/src/test/rustdoc-gui/toggle-click-deadspace.goml @@ -6,3 +6,7 @@ click: "h4.code-header" // This is the position of "pub" in "pub fn a_method" assert-attribute: (".impl-items .rustdoc-toggle", {"open": ""}) click: ".impl-items .rustdoc-toggle summary::before" // This is the position of "[-]" next to that pub fn. assert-attribute-false: (".impl-items .rustdoc-toggle", {"open": ""}) + +// Click the "Trait" part of "impl Trait" and verify it navigates. +click: "#impl-Trait h3 a:first-of-type" +assert-text: (".fqn .in-band", "Trait lib2::Trait")