Rollup merge of #95684 - GuillaumeGomez:fix-item-info-overflow, r=notriddle
rustdoc: Fix item info display overflow I came across this issue when reading local `Iterator` docs (reproduced in this screenshot):  The problem comes from the fact that `span` isn't `display: block` by default. Since `item-info` was already present on `<div>` in other places, I moved the last one to `div` as well. r? `@notriddle`
This commit is contained in:
commit
84e1aa2d59
@ -1 +1 @@
|
||||
0.8.4
|
||||
0.8.5
|
@ -1772,7 +1772,7 @@ pub(crate) fn render_impl_summary(
|
||||
let is_trait = i.inner_impl().trait_.is_some();
|
||||
if is_trait {
|
||||
if let Some(portability) = portability(&i.impl_item, Some(parent)) {
|
||||
write!(w, "<span class=\"item-info\">{}</span>", portability);
|
||||
write!(w, "<div class=\"item-info\">{}</div>", portability);
|
||||
}
|
||||
}
|
||||
|
||||
|
28
src/test/rustdoc-gui/item-info-overflow.goml
Normal file
28
src/test/rustdoc-gui/item-info-overflow.goml
Normal file
@ -0,0 +1,28 @@
|
||||
// This test ensures that the "item-info" elements don't overflow.
|
||||
goto: file://|DOC_PATH|/lib2/struct.LongItemInfo.html
|
||||
// We set a fixed size so there is no chance of "random" resize.
|
||||
size: (1200, 870)
|
||||
// Logically, the "item-decl" and the "item-info" should have the same scroll width.
|
||||
compare-elements-property: (".docblock.item-decl", ".item-info", ["scrollWidth"])
|
||||
assert-property: (".item-info", {"scrollWidth": "890"})
|
||||
// Just to be sure we're comparing the correct "item-info":
|
||||
assert-text: (
|
||||
".item-info",
|
||||
"This is supported on Android or Linux or Emscripten or DragonFly BSD",
|
||||
STARTS_WITH,
|
||||
)
|
||||
|
||||
// Checking the "item-info" on an impl block as well:
|
||||
goto: file://|DOC_PATH|/lib2/struct.LongItemInfo2.html
|
||||
compare-elements-property: (
|
||||
"#impl-SimpleTrait .item-info",
|
||||
"#impl-SimpleTrait + .docblock",
|
||||
["scrollWidth"],
|
||||
)
|
||||
assert-property: ("#impl-SimpleTrait .item-info", {"scrollWidth": "866"})
|
||||
// Just to be sure we're comparing the correct "item-info":
|
||||
assert-text: (
|
||||
"#impl-SimpleTrait .item-info",
|
||||
"This is supported on Android or Linux or Emscripten or DragonFly BSD",
|
||||
STARTS_WITH,
|
||||
)
|
@ -120,3 +120,13 @@ pub struct HasALongTraitWithParams {}
|
||||
pub trait LongTraitWithParamsBananaBananaBanana<T> {}
|
||||
|
||||
impl LongTraitWithParamsBananaBananaBanana<usize> for HasALongTraitWithParams {}
|
||||
|
||||
#[doc(cfg(any(target_os = "android", target_os = "linux", target_os = "emscripten", target_os = "dragonfly", target_os = "freebsd", target_os = "netbsd", target_os = "openbsd")))]
|
||||
pub struct LongItemInfo;
|
||||
|
||||
pub trait SimpleTrait {}
|
||||
pub struct LongItemInfo2;
|
||||
|
||||
/// Some docs.
|
||||
#[doc(cfg(any(target_os = "android", target_os = "linux", target_os = "emscripten", target_os = "dragonfly", target_os = "freebsd", target_os = "netbsd", target_os = "openbsd")))]
|
||||
impl SimpleTrait for LongItemInfo2 {}
|
||||
|
Loading…
x
Reference in New Issue
Block a user