| Age | Commit message (Collapse) | Author | Lines |
|
Since the sorting function accounts for an `index` field, there's not much
reason to also be applying changes to the levenshtein distance. Instead,
we can just not treat `lev` as a filter if there's already a non-sentinel
value for `index`.
This change gives slightly more weight to the index and path part, as
search criteria, than it used to. This changes some of the test cases,
but not in any obviously-"worse" way, and, in particular, substring matches
are a bigger deal than levenshtein distances (we're assuming that a typo
is less likely than someone just not typing the entire name).
Based on
https://github.com/rust-lang/rust/pull/103710#issuecomment-1296894296
|
|
This class originated in the very first commit of `rustdoc_ng`, and was used
to add a color border around the item decl based on its kind.
https://github.com/rust-lang/rust/blob/4fd061c426902b0904c65e64a3780b21f9ab3afb/src/rustdoc_ng/html/static/main.css#L102-L106
The item decl no longer has a border, and there aren't any
kind-specific styles in modern rustdoc's rendering of this UI item.
Most of this commit is updating test cases so that they use `item-decl` to
find the `<pre>` tag instead of relying on the fact that the class name
had `rust {kind}` in it while other `<pre>` tags only had class `rust`.
|
|
rustdoc: few small cleanups
|
|
r=GuillaumeGomez
rustdoc: remove `docblock` class from notable trait popover
This commit builds on b72de9be74dd5ac1d8b23d5ece03a7690274a14c, which removes the `docblock` class from the All Items page, and 9457380ac902db3febf92077c5b645db55998ad4, which removes the `docblock` class from the item decl.
Fixes #92974
|
|
rustdoc: remove unnecessary DOM class `h1.fqn`
It's misleading. The main heading sometimes isn't an fully qualified name at all.
It's also redundant. It's always a child of `div.main-heading`, so just use that.
|
|
This commit builds on b72de9be74dd5ac1d8b23d5ece03a7690274a14c, which removes
the `docblock` class from the All Items page, and
9457380ac902db3febf92077c5b645db55998ad4, which removes the `docblock` class
from the item decl.
Fixes #92974
|
|
This swaps things around so that the class that gets used more often has
the shorter name.
|
|
It's misleading. The main heading sometimes isn't an fully qualified name at all.
It's also redundant. It's always a child of `div.main-heading`, so just use that.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fix scrolling for item declaration block
Fixes https://github.com/rust-lang/rust/issues/105580.
The `contain: layout` was the issue here and the bug was actually on both mobile and desktop.
r? `@notriddle`
|
|
Remove unneeded ItemId::Primitive variant
As I mentioned [here](https://github.com/rust-lang/rust/pull/106412#issuecomment-1371405115), I wondered if `ItemId::Primitive` was actually used for anything. Apparently, it seems so because removing it led to no changes as far as I and tests could see.
r? `@notriddle`
|
|
|
|
|
|
|
|
r=GuillaumeGomez
rustdoc: remove no-op mobile CSS `.content { margin-left: 0 }`
This rule was added to override non-zero left margin on `.content`, which was removed in 135281ed1525db15edd8ebd092aa10aa40df2386 and the margin-left was put on the docblock.
|
|
r=GuillaumeGomez
rustdoc: remove no-op CSS `.rustdoc.source .sidebar { width: 0 }`
This CSS was added in dc2c9723343c985740be09919236a6e96c4e4433, before 6a5f8b1aef1417d7dc85b5d0a229d2db1930eb7c when the sidebars were merged.
Now that they are merged, the source sidebar is being pushed off-screen anyway, so giving it zero width doesn't do much.
|
|
This rule was added to override non-zero left margin on `.content`,
which was removed in 135281ed1525db15edd8ebd092aa10aa40df2386 and
the margin-left was put on the docblock.
|
|
Fix rustdoc source code rendering for `#[path = "../path/to/mod.rs"]` links
Fixes #103517
While generating the location for modules source HTML to be saved at, a `..` path component appeared to be translated to `/up/`.
Additionally, while generating the navigation sidebar, `..` path components were ignored. This means that (as in the issue above), a *real* directory structure of:
```
sys/
unix/
mod.rs <-- contains #![path = "../unix/mod.rs]
cmath.rs
```
was rendered as:
```
sys/
unix/
mod.rs
unix/
cmath.rs <-- links to sys/unix/unix/cmath.rs.html, 404
```
While the *files* were stored as
```
sys/
unix/
mod.rs.html
up/
unix/
cmath.rs.html
```
|
|
This CSS was added in dc2c9723343c985740be09919236a6e96c4e4433,
before 6a5f8b1aef1417d7dc85b5d0a229d2db1930eb7c when the sidebars
were merged.
Now that they are merged, the source sidebar is being pushed
off-screen anyway, so giving it zero width doesn't do much.
|
|
|
|
rustdoc: remove legacy user-select CSS
According to [caniuse], the only supported browser that requires the vendor prefix, as defined in [RFC 1985], is Safari.
* The last version of Chrome that required a vendor prefix was version 53. The current version is 108.
* Firefox 68 is the last version that required a vendor prefix. The [current Firefox ESR] is version 102.
* The current version of Safari for Mac and iOS still requires a prefix.
* The last version of Edge that required a vendor frefix was 18. The current version of Edge is 108.
* UCAndroid support is unknown, but if it still requires a vendor prefix, it's more likely to be `-webkit-` than `-moz-` or `-ms-`, since they would want to emulate iOS for compatibility.
[caniuse]: https://caniuse.com/?search=user-select
[RFC 1985]: https://rust-lang.github.io/rfcs/1985-tiered-browser-support.html
[current Firefox ESR]: https://wiki.mozilla.org/Releases
|
|
According to [caniuse], the only supported browser that requires the vendor prefix,
as defined in [RFC 1985], is Safari.
* The last version of Chrome that required a vendor prefix was version 53.
The current version is 108.
* Firefox 68 is the last version that required a vendor prefix. The
[current Firefox ESR] is version 102.
* The current version of Safari for Mac and iOS still requires a prefix.
* The last version of Edge that required a vendor frefix was 18. The current
version of Edge is 108.
* UCAndroid support is unknown, but if it still requires a vendor prefix,
it's more likely to be `-webkit-` than `-moz-` or `-ms-`, since they
would want to emulate iOS for compatibility.
[caniuse]: https://caniuse.com/?search=user-select
[RFC 1985]: https://rust-lang.github.io/rfcs/1985-tiered-browser-support.html
[current Firefox ESR]: https://wiki.mozilla.org/Releases
|
|
Fix --kbd-color variable name in rustdoc.css
Interestingly enough, it only impacted the dark theme.
Before:

After:

r? `@notriddle`
|
|
|
|
r=GuillaumeGomez
rustdoc: remove unnecessary wrapper around sidebar and mobile logos
This commit changes `.sidebar a:hover:not(.logo-container)` to add the `:not()` pseudo-class, retaining the old appearance of the logo when mousing over it.
This didn't used to be necessary because the `a.sidebar-logo` was `display:inline`, and was what got the `background` changed on hover, while the `div.logo-container` inside it was `display:block`. This resulted in the hover rule not having any effect, because the logo-container box was not actually nested inside the sidebar-logo box:
https://www.w3.org/TR/CSS2/visuren.html#anonymous-block-level
> When an inline box contains an in-flow block-level box, the inline box (and its inline ancestors within the same line box) are broken around the block-level box (and any block-level siblings that are consecutive or separated only by collapsible whitespace and/or out-of-flow elements), splitting the inline box into two boxes (even if either side is empty), one on each side of the block-level box(es). The line boxes before the break and after the break are enclosed in anonymous block boxes, and the block-level box becomes a sibling of those anonymous boxes. When such an inline box is affected by relative positioning, any resulting translation also affects the block-level box contained in the inline box.
|
|
rustdoc: fix buggy JS check for absolute URL
The old code did the wrong thing when faced with a crate named "http".
|
|
rustdoc: allow popover child links to work
No need to prevent default click behavior on a `<div>`, it will also disable all child click behavior.
Closes #106390
|
|
This commit changes `.sidebar a:hover:not(.logo-container)` to add the `:not()` pseudo-class, retaining the old appearance of the logo when mousing over it.
This didn't used to be necessary because the `a.sidebar-logo` was `display:inline`, and was what got the `background` changed on hover, while the `div.logo-container` inside it was `display:block`. This resulted in the hover rule not having any effect, because the logo-container box was not actually nested inside the sidebar-logo box:
https://www.w3.org/TR/CSS2/visuren.html#anonymous-block-level
> When an inline box contains an in-flow block-level box, the inline box (and its inline ancestors within the same line box) are broken around the block-level box (and any block-level siblings that are consecutive or separated only by collapsible whitespace and/or out-of-flow elements), splitting the inline box into two boxes (even if either side is empty), one on each side of the block-level box(es). The line boxes before the break and after the break are enclosed in anonymous block boxes, and the block-level box becomes a sibling of those anonymous boxes. When such an inline box is affected by relative positioning, any resulting translation also affects the block-level box contained in the inline box.
|
|
The old code did the wrong thing when faced with a crate named "http".
|
|
r=GuillaumeGomez
rustdoc: remove legacy font-feature-settings CSS
According to [caniuse], these vendor prefixes aren't needed in any supported web browsers as defined in [RFC 1985].
* The last version of Chrome that required a vendor prefix was version 47. The current version is 108.
* Firefox 33 is the last version that required a vendor prefix. The [current Firefox ESR] is version 102.
* The last version of Safari that required a vendor prefix was version 9.1. The current version is 16.
* The last version of Safari/iOS that required a vendor prefix was version 9.3. The current version is 16.
* Edge never required vendor prefixes.
* UCAndroid never required vendor prefixes.
[caniuse]: https://caniuse.com/?search=font-feature-settings
[RFC 1985]: https://rust-lang.github.io/rfcs/1985-tiered-browser-support.html
[current Firefox ESR]: https://wiki.mozilla.org/Releases
|
|
According to [caniuse], these vendor prefixes aren't needed in any supported
web browsers as defined in [RFC 1985].
* The last version of Chrome that required a vendor prefix was version 47.
The current version is 108.
* Firefox 33 is the last version that required a vendor prefix. The
[current Firefox ESR] is version 102.
* The last version of Safari that required a vendor prefix was version 9.1.
The current version is 16.
* The last version of Safari/iOS that required a vendor prefix was version
9.3. The current version is 16.
* Edge never required vendor prefixes.
* UCAndroid never required vendor prefixes.
[caniuse]: https://caniuse.com/?search=font-feature-settings
[RFC 1985]: https://rust-lang.github.io/rfcs/1985-tiered-browser-support.html
[current Firefox ESR]: https://wiki.mozilla.org/Releases
|
|
rustdoc: remove legacy box-sizing CSS
According to [caniuse], these vendor prefixes aren't needed in any supported web browsers as defined in [RFC 1985]
* The last version of Chrome that required a vendor prefix was version 9. The current version is 108.
* Firefox 28 is the last version that required a vendor prefix. The [current Firefox ESR] is version 102.
* The last version of Safari that required a vendor prefix was version 5. The current version is 16.
* The last version of Safari/iOS that required a vendor prefix was version 4. The current version is 16.
* Edge never required vendor prefixes.
* UCAndroid never required vendor prefixes.
[caniuse]: https://caniuse.com/?search=box-sizing
[RFC 1985]: https://rust-lang.github.io/rfcs/1985-tiered-browser-support.html
[current Firefox ESR]: https://wiki.mozilla.org/Releases
|
|
It's always `None`.
|
|
No need to prevent default click behavior on a <div>, it will also disable all child click behavior.
|
|
Rustdoc-Json: Report discriminant on all kinds of enum variant.
Closes https://github.com/rust-lang/rust/issues/106299
Probably easier to review one commit at a time.
r? `@GuillaumeGomez`
|
|
According to [caniuse], these vendor prefixes aren't needed in any
supported web browsers as defined in [RFC 1985]
* The last version of Chrome that required a vendor prefix was version 9.
The current version is 108.
* Firefox 28 is the last version that required a vendor prefix. The
[current Firefox ESR] is version 102.
* The last version of Safari that required a vendor prefix was version 5.
The current version is 16.
* The last version of Safari/iOS that required a vendor prefix was version 4.
The current version is 16.
* Edge never required vendor prefixes.
* UCAndroid never required vendor prefixes.
[caniuse]: https://caniuse.com/?search=box-sizing
[RFC 1985]: https://rust-lang.github.io/rfcs/1985-tiered-browser-support.html
[current Firefox ESR]: https://wiki.mozilla.org/Releases
|
|
rustdoc: use the regular arrow indicator for dir-entry CSS
This mostly reverts 468acca108e65101b802821bded17149dc1d86c9, while still fixing the problem it fixed by using an internal list-style-position. It results in a slight change in the hover indicator, but nothing misleading.
Preview: http://notriddle.com/notriddle-rustdoc-demos/dir-entry/src/std/lib.rs.html
## Before

## After

|
|
|
|
rustdoc: merge scrape-help CSS
|
|
This mostly reverts 468acca108e65101b802821bded17149dc1d86c9, while still
fixing the problem it fixed by using an internal list-style-position. It
results in a slight change in the hover indicator, but nothing misleading.
|
|
|
|
r=GuillaumeGomez
rustdoc: remove redundant CSS `.source .content { overflow: visible }`
When added in 7669f04fb0ddc3d71a1fb44dc1c5c00a6564ae99 / #16066, the page itself was set to scroll. Now it's set so that the `example-wrap` is scrolling inside the page, so the overflow setting for the content is irrelevant.
|
|
r=notriddle
Migrate more scraped examples CSS rules to CSS variables
It's based on https://github.com/rust-lang/rust/pull/106218 so it will need to wait for it to be merged first.
r? `@notriddle`
|
|
When added in 7669f04fb0ddc3d71a1fb44dc1c5c00a6564ae99 / #16066, the page
itself was set to scroll. Now it's set so that the `example-wrap` is
scrolling inside the page, so the overflow setting for the content is
irrelevant.
|