From c58246efe47bea09d4f3e70f536e4c9bb7770749 Mon Sep 17 00:00:00 2001 From: Michael Howell Date: Fri, 16 Jul 2021 17:24:35 -0700 Subject: [PATCH] Rustdoc accessibility: use an icon for the [-]/[+] controls This way, we can show the plus and minus buttons on screens, while voice control will read off actual words "Collapse" and "Expand" instead of reading "open brace minus close brace" and "open brace plus close brace". Part of #87059 --- src/librustdoc/html/render/write_shared.rs | 7 ++- src/librustdoc/html/static/css/rustdoc.css | 54 ++++++++++++++++-- src/librustdoc/html/static/css/themes/ayu.css | 5 ++ .../html/static/css/themes/dark.css | 5 ++ .../html/static/images/minus-17x17.png | Bin 0 -> 3183 bytes .../html/static/images/minus-17x17.png.url | 1 + .../html/static/images/plus-17x17.png | Bin 0 -> 3337 bytes .../html/static/images/plus-17x17.png.url | 1 + src/librustdoc/html/static_files.rs | 4 ++ 9 files changed, 69 insertions(+), 8 deletions(-) create mode 100644 src/librustdoc/html/static/images/minus-17x17.png create mode 100644 src/librustdoc/html/static/images/minus-17x17.png.url create mode 100644 src/librustdoc/html/static/images/plus-17x17.png create mode 100644 src/librustdoc/html/static/images/plus-17x17.png.url diff --git a/src/librustdoc/html/render/write_shared.rs b/src/librustdoc/html/render/write_shared.rs index 94a902a2d0522..f529b2f2bfcdc 100644 --- a/src/librustdoc/html/render/write_shared.rs +++ b/src/librustdoc/html/render/write_shared.rs @@ -126,13 +126,16 @@ impl Context<'_> { emit: &[EmitType], ) -> Result<(), Error> { let tmp; + let contents = + contents.replace("data-url(minus-17x17.png)", static_files::MINUS_PNG_DATAURL); + let contents = contents.replace("data-url(plus-17x17.png)", static_files::PLUS_PNG_DATAURL); let contents = if minify { tmp = if resource.extension() == Some(&OsStr::new("css")) { - minifier::css::minify(contents).map_err(|e| { + minifier::css::minify(&contents).map_err(|e| { Error::new(format!("failed to minify CSS file: {}", e), resource.path(self)) })? } else { - minifier::js::minify(contents) + minifier::js::minify(&contents) }; tmp.as_bytes() } else { diff --git a/src/librustdoc/html/static/css/rustdoc.css b/src/librustdoc/html/static/css/rustdoc.css index 91243a4086ced..ae321be09e228 100644 --- a/src/librustdoc/html/static/css/rustdoc.css +++ b/src/librustdoc/html/static/css/rustdoc.css @@ -1508,11 +1508,33 @@ details.rustdoc-toggle > summary.hideme > span { } details.rustdoc-toggle > summary::before { - content: "[+]"; + content: "Expand"; font-weight: 300; font-size: 0.8em; letter-spacing: 1px; cursor: pointer; + width: 17px; + height: max(17px, 1.1em); + background: data-url(plus-17x17.png) no-repeat top left; + display: inline-block; + vertical-align: middle; + opacity: .5; + text-indent: 17px; + overflow: hidden; +} + +details.rustdoc-toggle > summary.hideme::before { + /* "hideme" toggles already have a description when they're contracted */ + content: " "; +} + +details.rustdoc-toggle > summary:focus::before { + outline: dotted 1px; +} + +details.rustdoc-toggle > summary:focus::before, +details.rustdoc-toggle > summary:hover::before { + opacity: 1; } details.rustdoc-toggle.top-doc > summary, @@ -1560,20 +1582,40 @@ details.rustdoc-toggle[open] > summary.hideme > span { display: none; } -details.rustdoc-toggle[open] > summary::before { - content: "[−]"; - display: inline; +details.rustdoc-toggle[open] > summary::before, +details.rustdoc-toggle[open] > summary.hideme::before { + width: 17px; + height: max(17px, 1.1em); + background: data-url(minus-17x17.png) no-repeat top left; + display: inline-block; + content: "Collapse"; } details.undocumented > summary::before { - content: "[+] Show hidden undocumented items"; + padding-left: 17px; + height: max(17px, 1.1em); + background: data-url(plus-17x17.png) no-repeat top left; + content: "Show hidden undocumented items"; cursor: pointer; font-size: 16px; font-weight: 300; + opacity: .5; +} + +details.undocumented > summary:focus::before { + outline: dotted 1px; +} + +details.undocumented > summary:focus::before, +details.undocumented > summary:hover::before { + opacity: 1; } details.undocumented[open] > summary::before { - content: "[−] Hide undocumented items"; + padding-left: 17px; + height: max(17px, 1.1em); + background: data-url(minus-17x17.png) no-repeat top left; + content: "Hide undocumented items"; } /* Media Queries */ diff --git a/src/librustdoc/html/static/css/themes/ayu.css b/src/librustdoc/html/static/css/themes/ayu.css index df386fb66a33f..849924ea5501e 100644 --- a/src/librustdoc/html/static/css/themes/ayu.css +++ b/src/librustdoc/html/static/css/themes/ayu.css @@ -229,6 +229,11 @@ details.undocumented > summary::before { color: #999; } +details.rustdoc-toggle > summary::before, +details.undocumented > summary::before { + filter: invert(100%); +} + #crate-search { color: #c5c5c5; background-color: #141920; diff --git a/src/librustdoc/html/static/css/themes/dark.css b/src/librustdoc/html/static/css/themes/dark.css index c8a5dbdc66aaf..c26122e4bffb5 100644 --- a/src/librustdoc/html/static/css/themes/dark.css +++ b/src/librustdoc/html/static/css/themes/dark.css @@ -194,6 +194,11 @@ details.undocumented > summary::before { color: #999; } +details.rustdoc-toggle > summary::before, +details.undocumented > summary::before { + filter: invert(100%); +} + #crate-search { color: #111; background-color: #f0f0f0; diff --git a/src/librustdoc/html/static/images/minus-17x17.png b/src/librustdoc/html/static/images/minus-17x17.png new file mode 100644 index 0000000000000000000000000000000000000000..3cdbbf5033ec412df28970edfc6da26d578252bf GIT binary patch literal 3183 zcmV-#43P7QP)EX>4Tx04R}tkv&MmKpe$iQ>7vm1q+HeWT;LSL`5C73Pq?8YK2xEOfLNpnlvOS zE{=k0!NHHks)LKOt`4q(Aou~|=H{g6A|?JWDYS_3;J6>}?mh0_0Ya_BG^=eC&~)2O zCE{WxyCQ~O5ke38Fom$pEMr!ZlJFg0_XzOyF2=L`&;2>N)SShDfJi*U4AUlFC!XB2 z4bJ<-5muB{;&b8=lP*a7$aTfzH_io@1)do()2TV)2(egbVWovx(bR}1h@+~eQ@)V# zSmnIMSu0goAMvPXS6bmWZkNfxsT)#vvg`Uwzx2Cnp`zgz>RKS{4P zwdfJhy$xJkH#KDsxZDBypA6ZQT`5RY$mfCgGy0}1(0dDXu6n&S_Hp_Eq^Yaq4RCM> z3>PSS&F9@6t-bwwrqSOIhc$Aq`Q-Sa00006VoOIv0RI600RN!9r;`8x010qNS#tmY zE+YT{E+YYWr9XB6000McNlirurSaechcOY8BBoXX=B?DRj@#@?6;*5z6R7s*sB zq&wO4Fl>`;Ho`F~T*cz58H2VhdXAgscvVM?+%%dRjm|W_@^Yhh8a>;_5G`p%4nZ)rI=!iE53xnC6-ijh5J-jeGQdstf}T^nr+Z= z3yoWBspYOaT&cV6sfW%z_SEx$uMIog@FNT!aio!NtZi1mZ6C0vH*01xCGGge8m=<0 zJxzZ>C&C#RGfsnX76#zZMmSSZJ7QdC$~qWF)^%961Cd+o6j4c%krpiKnXp>FEFIH0%={UH$|9eMuv@m>W zwp5$4r8;s6xv?IB3u0LqDVbgaw^9R^r|U7?UfAoQV0LsPY)P0IlI*O{ue^t~m^FA;(!$WH~S{cZ?Go;=@p-Fhs-y zk>1MPWIRiZ3mrB!wT(izC!;9HH`O)^M)~HDd5tOyJI7L7Pi9#MLyB*?Vl{vhj+!|R zWKS?6=&Hyf$a9zFu4w1+E1AvP`(Q^*Rz@WZ3%`dSjp3^dYJ7%$F?uh9CTlv-h6NEqB;46p0;xwdzft^*Vfu|?XvM+f zTt{H&Ko!20U8~%(5hrUMGb}n;4lNkqPRIr#P|!8zCh73>-Sb}N+2N;)TiuvPZ*AJ^ zvawmlg~-inYRU}Tko5CHRnSnNqKvo?-c1yOK6zW~!x5l@G^ z!0!-x0DiG?P0-fn(7Kvp&{0G%E0NH93?NMiZpsxm2}UPYz|VPz&$+f|r9ihYh;GBX z)SC&ZBLE-@dI|-RHF%Y=ULdPtlT++JGb?WfN+crCh0nvxO=yGL~_U1wfbv%f+-wKa5KO zx<9x;>=8B&F2Dp$FFBKOreZTOL4C@F#B8DCfef+n6tQNEE^Bn*VlpuYf8c^1$(S=1 zIu0`KT)bd{{+V24cJ!SJOm0!J{NxuVK*8c-GC?OQK9`0F|S+~E0ISH$)^xYKl+ zwjY*nyD?)3Z4INf@SQarl$$TXh# z*_AgWP_*knq0c%{H?s^>X5|g2t>TX^NAV}l;!mGB*u5w8)9I)Kt)7tn&Aw#rPz5|l zrBXw=6|dOC_MF7_Rl6FYOJzOMDqa~IT<>8PuM&(;e(3IB)%v6!8^15vFZNxHZYuP^ z^EJ(gKH$(b(^YXP6Q?k|X>gaGbV|-7$DziSYi64q($FT31XDB|vP$XKsn#YSeN+cN zD~D26ZRBOG57@2h+ph#rZwKyAVV4A7-aF6go6bGsQk~T|d5siJBcoFnGVtq*cfos; zF+~8%*6P}QMMk%(Z%cK*2!$@MA6DM7XiG=s8$rY7;>*~TZ=|#iEmq}QRhzt#!ncAb zr0^}q9R+=txXPQFku{5^IP8jkU&>e6m0i&xM6*FkORQhHnDM_SC8ZoiRC{>{CtV>_FhNikmzF#YB~nB7?hy|2s{+b!2~}C zwbe#>DGJw@*lI^YvkCTwk`65KxVg~$g5`YG1h2V6DFSZmP16ZVl9x7TBr(+oEbjzA z=a*g(ToJ&mbH{r3j+WE002ovPDHLkV1fg@>rMaw literal 0 HcmV?d00001 diff --git a/src/librustdoc/html/static/images/minus-17x17.png.url b/src/librustdoc/html/static/images/minus-17x17.png.url new file mode 100644 index 0000000000000..a05bac5d875c5 --- /dev/null +++ b/src/librustdoc/html/static/images/minus-17x17.png.url @@ -0,0 +1 @@ +url(data:image/png;base64,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) diff --git a/src/librustdoc/html/static/images/plus-17x17.png b/src/librustdoc/html/static/images/plus-17x17.png new file mode 100644 index 0000000000000000000000000000000000000000..fa996a147a5274789f8be9a0261bf2d7b8b49514 GIT binary patch literal 3337 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 Td7i2U00000NkvXXu0mjf{gOu@ literal 0 HcmV?d00001 diff --git a/src/librustdoc/html/static/images/plus-17x17.png.url b/src/librustdoc/html/static/images/plus-17x17.png.url new file mode 100644 index 0000000000000..dd0078d1ace7e --- /dev/null +++ b/src/librustdoc/html/static/images/plus-17x17.png.url @@ -0,0 +1 @@ +url(data:image/png;base64,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) diff --git a/src/librustdoc/html/static_files.rs b/src/librustdoc/html/static_files.rs index 2ec7e66234ddd..db34d60638e8a 100644 --- a/src/librustdoc/html/static_files.rs +++ b/src/librustdoc/html/static_files.rs @@ -64,6 +64,10 @@ crate static RUST_FAVICON_SVG: &[u8] = include_bytes!("static/images/favicon.svg crate static RUST_FAVICON_PNG_16: &[u8] = include_bytes!("static/images/favicon-16x16.png"); crate static RUST_FAVICON_PNG_32: &[u8] = include_bytes!("static/images/favicon-32x32.png"); +/// The pixel art buttons +crate static MINUS_PNG_DATAURL: &str = include_str!("static/images/minus-17x17.png.url"); +crate static PLUS_PNG_DATAURL: &str = include_str!("static/images/plus-17x17.png.url"); + crate static PAGE: &str = include_str!("templates/page.html"); /// The built-in themes given to every documentation site.