From 97623bf0516f9f852a18017d02af08011bea1da9 Mon Sep 17 00:00:00 2001 From: Noah Lev Date: Mon, 17 May 2021 16:49:38 -0700 Subject: [PATCH] Don't hide fields of enum struct variants * The toggle adds visual clutter * It's easy to miss that there are fields * Tuple variant fields are always shown, so it is inconsistent to hide struct variant fields * It's annoying to have to click the toggle every time --- src/librustdoc/html/render/print_item.rs | 5 +---- src/librustdoc/html/static/css/rustdoc.css | 2 +- src/test/rustdoc/toggle-item-contents.rs | 6 ++---- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/src/librustdoc/html/render/print_item.rs b/src/librustdoc/html/render/print_item.rs index 552958d5e402b..2dfbaff1cc995 100644 --- a/src/librustdoc/html/render/print_item.rs +++ b/src/librustdoc/html/render/print_item.rs @@ -1029,14 +1029,12 @@ fn item_enum(w: &mut Buffer, cx: &Context<'_>, it: &clean::Item, e: &clean::Enum use crate::clean::Variant; if let clean::VariantItem(Variant::Struct(ref s)) = *variant.kind { - let count_fields = s.fields.len(); - toggle_open(w, format_args!("{} field{}", count_fields, pluralize(count_fields))); let variant_id = cx.derive_id(format!( "{}.{}.fields", ItemType::Variant, variant.name.as_ref().unwrap() )); - write!(w, "
", id = variant_id); + write!(w, "
", id = variant_id); write!( w, "

Fields of {name}

", @@ -1064,7 +1062,6 @@ fn item_enum(w: &mut Buffer, cx: &Context<'_>, it: &clean::Item, e: &clean::Enum } } w.write_str("
"); - toggle_close(w); } } } diff --git a/src/librustdoc/html/static/css/rustdoc.css b/src/librustdoc/html/static/css/rustdoc.css index 6672093eb7bc6..f86aa06a1aad7 100644 --- a/src/librustdoc/html/static/css/rustdoc.css +++ b/src/librustdoc/html/static/css/rustdoc.css @@ -1072,7 +1072,7 @@ a.test-arrow:hover{ padding-top: 1px; } -#main > details > .sub-variant > h3 { +#main .sub-variant > h3 { font-size: 15px; margin-left: 25px; margin-bottom: 5px; diff --git a/src/test/rustdoc/toggle-item-contents.rs b/src/test/rustdoc/toggle-item-contents.rs index 167858b6065f9..8d2046591d08a 100644 --- a/src/test/rustdoc/toggle-item-contents.rs +++ b/src/test/rustdoc/toggle-item-contents.rs @@ -62,8 +62,7 @@ pub struct PrivStruct { } // @has 'toggle_item_contents/enum.Enum.html' -// @count - '//details[@class="rustdoc-toggle type-contents-toggle"]' 1 -// @has - '//details[@class="rustdoc-toggle type-contents-toggle"]' 'Show 2 fields' +// @!has - '//details[@class="rustdoc-toggle type-contents-toggle"]' pub enum Enum { A, B, C, D { @@ -73,8 +72,7 @@ pub enum Enum { } // @has 'toggle_item_contents/enum.EnumStructVariant.html' -// @count - '//details[@class="rustdoc-toggle type-contents-toggle"]' 1 -// @has - '//details[@class="rustdoc-toggle type-contents-toggle"]' 'Show 1 field' +// @!has - '//details[@class="rustdoc-toggle type-contents-toggle"]' pub enum EnumStructVariant { A, B, C, D {