Skip to content

Fix code HTML items making big blocks if too long #132183

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Oct 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/librustdoc/html/static/css/rustdoc.css
Original file line number Diff line number Diff line change
Expand Up @@ -959,7 +959,7 @@ pre, .rustdoc.src .example-wrap, .example-wrap .src-line-numbers {
background: var(--table-alt-row-background-color);
}

.docblock .stab, .docblock-short .stab {
.docblock .stab, .docblock-short .stab, .docblock p code {
display: inline-block;
}

Expand Down
14 changes: 13 additions & 1 deletion tests/rustdoc-gui/check-stab-in-docblock.goml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// This test checks that using `.stab` attributes in `.docblock` elements doesn't
// create scrollable paragraphs.
// create scrollable paragraphs and is correctly displayed (not making weird blocks).
go-to: "file://" + |DOC_PATH| + "/test_docs/index.html"
// Needs the text to be display to check for scrollable content.
show-text: true
Expand Down Expand Up @@ -31,3 +31,15 @@ assert-property: (
".top-doc .docblock p:nth-of-type(3)",
{"scrollHeight": |clientHeight|, "scrollWidth": |clientWidth|},
)

// Ensure that `<code>` elements in code don't make big blocks.
compare-elements-size-near: (
"#reexport\.TheStdReexport > code",
".docblock p span[data-span='1']",
{"height": 1},
)
compare-elements-size-near: (
"#reexport\.TheStdReexport > code",
".docblock p span[data-span='2']",
{"height": 1},
)
10 changes: 6 additions & 4 deletions tests/rustdoc-gui/docblock-big-code-mobile.goml
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
// If we have a long `<code>`, we need to ensure that it'll be fully displayed on mobile, meaning
// that it'll be on two lines.

emulate: "iPhone 8" // it has the following size: (375, 667)
go-to: "file://" + |DOC_PATH| + "/test_docs/long_code_block/index.html"
// We now check that the block is on two lines:
show-text: true // We need to enable text draw to be able to have the "real" size

// We now check that the block is on two lines:
// Little explanations for this test: if the text wasn't displayed on two lines, it would take
// around 20px (which is the font size).
assert-property: (".docblock p > code", {"offsetHeight": "44"})
// around 24px (which is the font size).
assert-size: (".docblock p > code", {"height": 48})

// Same check, but where the long code block is also a link
go-to: "file://" + |DOC_PATH| + "/test_docs/long_code_block_link/index.html"
assert-property: (".docblock p > a > code", {"offsetHeight": "44"})
assert-size: (".docblock p > a > code", {"height": 48})
Loading