From a1cb19444f27db434183daa003bad89be9491564 Mon Sep 17 00:00:00 2001 From: Will Crichton Date: Tue, 14 Sep 2021 09:50:47 -0700 Subject: [PATCH] Add styles for non-white themes Tweak colors Tabs New link heading style --- src/librustdoc/html/render/mod.rs | 28 +++++++++---------- src/librustdoc/html/static/css/rustdoc.css | 10 ++++++- src/librustdoc/html/static/css/themes/ayu.css | 19 +++++++++++++ .../html/static/css/themes/dark.css | 19 +++++++++++++ 4 files changed, 61 insertions(+), 15 deletions(-) diff --git a/src/librustdoc/html/render/mod.rs b/src/librustdoc/html/render/mod.rs index 24eb4e88c3bd..6b30abb8260d 100644 --- a/src/librustdoc/html/render/mod.rs +++ b/src/librustdoc/html/render/mod.rs @@ -2482,16 +2482,6 @@ fn render_call_locations( id ); - // Link to the source file containing a given example - let example_url = |call_data: &CallData| -> String { - format!( - r#"{name}"#, - root = cx.root_path(), - url = call_data.url, - name = call_data.display_name - ) - }; - // Generate the HTML for a single example, being the title and code block let tcx = cx.tcx(); let write_example = |w: &mut Buffer, (path, call_data): (&PathBuf, &CallData)| -> bool { @@ -2534,9 +2524,13 @@ fn render_call_locations( write!( w, r#"
-
{title}
-
"#, - title = example_url(call_data), +
+ {name} [src] +
+
"#, + root = cx.root_path(), + url = call_data.url, + name = call_data.display_name, // The locations are encoded as a data attribute, so they can be read // later by the JS for interactions. locations = serde_json::to_string(&line_ranges).unwrap(), @@ -2639,7 +2633,13 @@ fn render_call_locations( r#""); } diff --git a/src/librustdoc/html/static/css/rustdoc.css b/src/librustdoc/html/static/css/rustdoc.css index a9f7113c8816..b35412bdc2a9 100644 --- a/src/librustdoc/html/static/css/rustdoc.css +++ b/src/librustdoc/html/static/css/rustdoc.css @@ -1976,7 +1976,10 @@ details.undocumented[open] > summary::before { .scraped-example-title { font-family: 'Fira Sans'; - font-weight: 500; +} + +.scraped-example-title a { + margin-left: 5px; } .scraped-example:not(.expanded) .code-wrapper pre.line-numbers, @@ -2115,7 +2118,12 @@ h1 + .scraped-example { margin-bottom: 20px; } +.more-scraped-examples .scraped-example:last-child { + margin-bottom: 0; +} + .example-links a { + margin-top: 20px; font-family: 'Fira Sans'; } diff --git a/src/librustdoc/html/static/css/themes/ayu.css b/src/librustdoc/html/static/css/themes/ayu.css index 0fd6462a8f5d..4ce7a372e395 100644 --- a/src/librustdoc/html/static/css/themes/ayu.css +++ b/src/librustdoc/html/static/css/themes/ayu.css @@ -613,3 +613,22 @@ div.files > .selected { input:checked + .slider { background-color: #ffb454 !important; } + +.scraped-example .example-wrap .rust span.highlight { + background: rgb(91, 59, 1); +} +.scraped-example .example-wrap .rust span.highlight.focus { + background: rgb(124, 75, 15); +} +.scraped-example:not(.expanded) .code-wrapper:before { + background: linear-gradient(to bottom, rgba(15, 20, 25, 1), rgba(15, 20, 25, 0)); +} +.scraped-example:not(.expanded) .code-wrapper:after { + background: linear-gradient(to top, rgba(15, 20, 25, 1), rgba(15, 20, 25, 0)); +} +.toggle-line-inner { + background: #616161; +} +.toggle-line:hover .toggle-line-inner { + background: ##898989; +} diff --git a/src/librustdoc/html/static/css/themes/dark.css b/src/librustdoc/html/static/css/themes/dark.css index d863701dd73c..aa6e7b2763ad 100644 --- a/src/librustdoc/html/static/css/themes/dark.css +++ b/src/librustdoc/html/static/css/themes/dark.css @@ -485,3 +485,22 @@ div.files > .selected { .setting-line > .title { border-bottom-color: #ddd; } + +.scraped-example .example-wrap .rust span.highlight { + background: rgb(91, 59, 1); +} +.scraped-example .example-wrap .rust span.highlight.focus { + background: rgb(124, 75, 15); +} +.scraped-example:not(.expanded) .code-wrapper:before { + background: linear-gradient(to bottom, rgba(53, 53, 53, 1), rgba(53, 53, 53, 0)); +} +.scraped-example:not(.expanded) .code-wrapper:after { + background: linear-gradient(to top, rgba(53, 53, 53, 1), rgba(53, 53, 53, 0)); +} +.toggle-line-inner { + background: #616161; +} +.toggle-line:hover .toggle-line-inner { + background: ##898989; +}