Commit graph

410 commits

Author SHA1 Message Date
Guillaume Gomez
a8318e420d Fix font-weight 2021-06-13 21:49:10 +02:00
Yuki Okushi
c783e28905
Rollup merge of #86078 - GuillaumeGomez:type-page-font-weight, r=jsha
Type page font weight

Fixes https://github.com/rust-lang/rust/issues/86069.

r? ```@jsha```
2021-06-08 13:26:32 +09:00
Guillaume Gomez
570ba09cbe Fix invalid weight for type pages 2021-06-06 23:06:01 +02:00
Guillaume Gomez
c01bd560e2 Fix display for search results 2021-06-05 23:03:54 +02:00
bors
19579c6564 Auto merge of #84834 - GuillaumeGomez:sidebar-unification, r=jsha
Sidebar unification

This PR does a few things:
 * Put crates list at all levels (before, it was only on the "top" items)
 * Fix bug in module sidebar: the list of items was from the parent module.

The other changes (on bootstrap mostly) were to allow to generate multiple crates in a same folder so that we can ensure that clicking on the crates in the sidebar works as expected.

I added a rustdoc-gui test to ensure everything is where it should be.

r? `@jyn514`
2021-06-03 02:31:44 +00:00
Guillaume Gomez
0daf8ac41f Replace h3 for notable traits with div 2021-06-02 21:16:33 +02:00
Jacob Hoffman-Andrews
fab6814ff3 Remove data-level selectors from CSS. 2021-06-02 20:30:17 +02:00
Guillaume Gomez
93389b5568 Remove invalid usage of aria-level 2021-06-01 21:19:28 +02:00
Guillaume Gomez
9077d540da Replace h3 and h4 containing invalid DOM 2021-06-01 21:19:28 +02:00
Ivan Tham
2970479412
Fix details rustdoc toggle for blanket impl
In the meantime, allow all of the details to have the same top.
2021-05-31 23:18:53 +08:00
Guillaume Gomez
9b637fa72e Improve display of the separation between page items and siblings in the sidebar 2021-05-31 15:20:45 +02:00
Yuki Okushi
0264f4fe4a
Rollup merge of #84048 - konan8205:master, r=jsha
Avoid CJK legacy fonts in Windows

As metioned in #84035, the default serif CJK font in Windows is meh-looking.
To avoid this, we should use sans-serif font or provide CJK glyph supported font in `rustdoc.css`.
2021-05-26 13:30:54 +09:00
Guillaume Gomez
706aa31a2d Move extra search result information for keywords and primitives from CSS to DOM 2021-05-25 10:44:05 +02:00
Guillaume Gomez
9d3b9cdb2c
Rollup merge of #85621 - jsha:serif-in-table, r=GuillaumeGomez
Restore sans-serif font for module items.

This was broke in #84462 by modifying a style that applied both to
searches and to module items (and other tables).

Fixes #85616.
Fixes https://github.com/rust-lang/rust/issues/85545.

r? `@camelid`
2021-05-24 18:53:36 +02:00
Guillaume Gomez
30f4486ee4
Rollup merge of #85551 - GuillaumeGomez:fix-search-result-overflow, r=jsha
Fix search results display

Fixes https://github.com/rust-lang/rust/issues/85544.

cc `@dns2utf8`

r? `@jsha`
2021-05-24 18:53:35 +02:00
Jacob Hoffman-Andrews
c1c6175e62 Restore sans-serif font for module items.
This was broke in #84462 by modifying a style that applied both to
searches and to module items (and other tables).
2021-05-23 22:28:19 -07:00
Guillaume Gomez
c2bd786734 Set desc class on the div instead of the span to simplify CSS 2021-05-22 16:05:20 +02:00
Stefan Schindler
0415e0d882 Mobile description width: 100% 2021-05-22 15:29:59 +02:00
Stefan Schindler
ee7cc63e04 Add padding to mobile layout and fix width issue on both 2021-05-22 15:29:59 +02:00
Stefan Schindler
d8de2b4c33 Prepar to remove deep nesting 2021-05-22 15:29:59 +02:00
Stefan Schindler
221cba370c Implement staggered mobile layout 2021-05-22 15:29:59 +02:00
Guillaume Gomez
4c88f0c63b Fix display for primitive and keyword extra info 2021-05-21 22:54:16 +02:00
Guillaume Gomez
5afa52bc7d Fix search results display 2021-05-21 16:39:15 +02:00
Jack Huey
9b5cf645dc
Rollup merge of #85396 - jsha:top-doc-font-sizes, r=GuillaumeGomez
rustdoc: restore header sizes

The `<details>` toggle work changed the relationship from #main to the top-doc docblock so it was no longer a parent relationship but a great-grandparent relationship. This updates the CSS rules that set the heading sizes so they still apply.

Fixes #85389

r? ``@camelid``
2021-05-18 22:36:13 -04:00
Ralf Jung
6e05a71bf7
Rollup merge of #85407 - GuillaumeGomez:copy-path-display-improvement, r=jsha
Improve display for "copy-path" button, making it more discreet

As suggested by `@Nemo157` [here](https://github.com/rust-lang/rust/pull/85118#issuecomment-838887670):

![Screenshot from 2021-05-18 11-18-49](https://user-images.githubusercontent.com/3050060/118626882-899ddb00-b7cb-11eb-84c5-ef68dee5e351.png)
![Screenshot from 2021-05-18 11-15-06](https://user-images.githubusercontent.com/3050060/118626880-899ddb00-b7cb-11eb-95c1-2f3bacd22374.png)
![Screenshot from 2021-05-18 11-18-54](https://user-images.githubusercontent.com/3050060/118626885-8a367180-b7cb-11eb-870c-7acdf4259bef.png)
![Screenshot from 2021-05-18 11-15-00](https://user-images.githubusercontent.com/3050060/118626877-89054480-b7cb-11eb-9efc-9a0f153964ce.png)
![Screenshot from 2021-05-18 11-18-58](https://user-images.githubusercontent.com/3050060/118626888-8a367180-b7cb-11eb-91bb-47867cd0f2cc.png)
![Screenshot from 2021-05-18 11-19-00](https://user-images.githubusercontent.com/3050060/118626891-8acf0800-b7cb-11eb-9e3d-d2937b361524.png)

r? `@jsha`
2021-05-18 19:35:45 +02:00
Ralf Jung
c9b6bb9279
Rollup merge of #84462 - jsha:focus-search-results2, r=GuillaumeGomez
rustdoc: use focus for search navigation

Rather than keeping track of highlighted element inside the JS, take advantage of `.focus()` and the :focus CSS pseudo-class.

This required wrapping each row of results in one big `<a>` tag (because anchors can be focused, but table rows cannot). That in turn required moving from a table layout to a div layout with float.

This makes it so Ctrl+Enter opens links in new tabs, and using the arrow keys to navigate off the bottom of the page scrolls the rest of the page into view. It also simplifies the keyboard event handling. It eliminates the need for click handlers on the search results, and for tracking mouse movements.

This changes the UI treatment of mouse hovering. A hovered element now gets a light grey background, but does not change the focus. It's possible to have two highlighted search results: one that is focused (via keyboard) and one that is hovered (via mouse). Pressing enter will activate the focused link; clicking will activate the hovered link. This matches up with how Firefox and Chrome handle suggestions in their URL bar, and avoids stray mouse movements changing the focus.

Selecting tabs is now done with left/right arrows while any search result is focused. The visibility of results on each search tab is
controlled with the "active" class, rather than by setting display: none directly. Note that the old code kept track of highlighted search element when tabbing back and forth. The new code doesn't.

Demo at https://hoffman-andrews.com/rust/focus-search-results2/std/?search=fn

Fixes #84384
Fixes #79962
Fixes #79872
2021-05-18 19:35:35 +02:00
Guillaume Gomez
5d004c1e20 Improve display for "copy-path" button, making it more discrete 2021-05-18 11:16:07 +02:00
Jacob Hoffman-Andrews
253cbabc39 rustdoc: restore header sizes 2021-05-16 20:48:55 -07:00
Guillaume Gomez
2b5ef25744
Rollup merge of #85289 - GuillaumeGomez:fix-toggle-position-mobile, r=jsha
Fix toggle position on mobile

Before:

![Screenshot from 2021-05-14 14-21-27](https://user-images.githubusercontent.com/3050060/118276475-fe210300-b4c7-11eb-94f8-4e2a4e10d91e.png)
![Screenshot from 2021-05-14 14-21-30](https://user-images.githubusercontent.com/3050060/118276479-feb99980-b4c7-11eb-85db-40e9df6e9abd.png)

After:

![Screenshot from 2021-05-14 15-16-54](https://user-images.githubusercontent.com/3050060/118276494-0416e400-b4c8-11eb-9479-d447928cfa62.png)
![Screenshot from 2021-05-14 15-16-59](https://user-images.githubusercontent.com/3050060/118276498-0416e400-b4c8-11eb-99f6-894276c62dfc.png)

r? ```@jsha```
2021-05-15 13:29:56 +02:00
Guillaume Gomez
5bfbabc892
Rollup merge of #85256 - GuillaumeGomez:fix-implementors-display, r=notriddle
Fix display for "implementors" section

Just saw this problem when going through docs:

![Screenshot from 2021-05-13 15-20-52](https://user-images.githubusercontent.com/3050060/118131978-766fc180-b3ff-11eb-86a8-7f6d22afa675.png)

This fix puts it back to normal:

![Screenshot from 2021-05-13 15-23-29](https://user-images.githubusercontent.com/3050060/118132006-7e2f6600-b3ff-11eb-9985-025a7b7c5216.png)

You can see it on the `TryFrom` page for example.

r? ```@Nemo157```
2021-05-15 13:29:53 +02:00
Shinwoo Park
6b601d492d chore: update comment in rustdoc.css 2021-05-15 20:04:38 +09:00
Shinwoo Park
c150772737 rustdoc: avoid legacy Korean fonts in Windows 2021-05-15 14:01:27 +09:00
Guillaume Gomez
7eb95cd8e4 Unify toggle rules on smaller resolutions 2021-05-14 22:25:50 +02:00
Guillaume Gomez
0c02338a60 Move @media rules at the end so they override the other rules 2021-05-14 22:25:50 +02:00
Guillaume Gomez
766de3a5e2 Fix toggle position on mobile 2021-05-14 15:16:29 +02:00
Jacob Hoffman-Andrews
b615c0c854 rustdoc: use focus for search navigation
Rather than keeping track of highlighted element inside the JS, take
advantage of `.focus()` and the :focus CSS pseudo-class.

This required wrapping each row of results in one big <a> tag (because
anchors can be focused, but table rows cannot). That in turn required
moving from a table layout to a div layout with float.

This makes it so Ctrl+Enter opens links in new tabs, and using the arrow
keys to navigate off the bottom of the page scrolls the rest of the page
into view. It also simplifies the keyboard event handling. It eliminates
the need for click handlers on the search results, and for tracking
mouse movements.

This changes the UI treatment of mouse hovering. A hovered element now
gets a light grey background, but does not change the focused element.
It's possible to have two highlighted search results: one that is
focused (via keyboard) and one that is hovered (via mouse). Pressing
enter will activate the focused link; clicking will activate the hovered
link. This matches up with how Firefox and Chrome handle suggestions in
their URL bar, and avoids stray mouse movements changing the focus.

Selecting tabs is now done with left/right arrows while any search
result is focused. The visibility of results on each search tab is
controlled with the "active" class, rather than by setting display: none
directly. Note that the old code kept track of highlighted search
element when tabbing back and forth. The new code doesn't.
2021-05-13 12:49:14 -07:00
Guillaume Gomez
5aa40dda85
Rollup merge of #85175 - GuillaumeGomez:rustdoc-cleanup, r=jsha
Rustdoc cleanup

Part of https://github.com/rust-lang/rust/issues/83332. The goal of this PR is to remove a few unused things:

 * The "loading content" things are now unneeded.
 * Some toggle CSS rules were still there.
 * Some parts of the JS had a different indent, fixed it.

r? `@jsha`
2021-05-13 15:54:11 +02:00
Guillaume Gomez
812994e40d Fix display for "implementors" section 2021-05-13 15:23:47 +02:00
Guillaume Gomez
bc26def1d5
Rollup merge of #85174 - GuillaumeGomez:doc-code-block-border-radius, r=jsha
Fix border radius for doc code blocks in rustdoc

In #85148, I made an invalid change on the border radius of the doc code blocks (look in the top left and bottom left corners of the code blocks).

Before this fix:

![Screenshot from 2021-05-11 11-14-59](https://user-images.githubusercontent.com/3050060/117791459-a4f86b80-b24a-11eb-8ac3-facc719c799a.png)

After this fix:

![Screenshot from 2021-05-11 11-05-29](https://user-images.githubusercontent.com/3050060/117791482-a9bd1f80-b24a-11eb-8c38-a01989595f5c.png)

r? `@jsha`
2021-05-12 17:19:29 +02:00
Guillaume Gomez
d8b10692a0 Remove unused CSS rules 2021-05-12 11:27:59 +02:00
Guillaume Gomez
e150aebbdc Remove "loading content" which is now unnecessary 2021-05-12 11:27:59 +02:00
Jacob Hoffman-Andrews
09454513d1 Move global click handlers to per-element ones.
In rustdoc's main.js, we had an onclick handler for the whole document
that would dispatch to handlers for various elements. This change
attaches the handlers to the elements that trigger them, instead.
This simplfies the code and avoids reimplementing the browser's bubbling
functionality.

As part of this change, change from a class to an id for help button.

Move the handlers and associated code for highlighting source lines into
source-script.js (and factor out a shared regex).
2021-05-11 13:45:08 -07:00
Guillaume Gomez
e55283ab8e Fix border radius for doc code blocks in rustdoc 2021-05-11 11:16:14 +02:00
Guillaume Gomez
3962541dcb
Rollup merge of #85148 - GuillaumeGomez:source-code-line-number, r=jsha
Fix source code line number display and make it clickable again

Fixes https://github.com/rust-lang/rust/issues/85119.

I used the same logic we're using for other codeblocks: putting the line number `<span>`s into the `example-wrap` directly and then add `display: inline-flex` on `example-wrap`.

r? `@jsha`
2021-05-10 20:05:26 +02:00
Guillaume Gomez
7450f70ae2 Use an SVG image for clipboard instead of unicode character 2021-05-10 16:26:16 +02:00
Guillaume Gomez
09150f8193 Fix line number not being clickable on source pages 2021-05-10 14:11:42 +02:00
Guillaume Gomez
4edcf61479 End toggle migration 2021-05-10 00:09:57 +02:00
Guillaume Gomez
5bd9146858 Add missing CSS rules for associated types 2021-05-02 14:17:07 +02:00
Guillaume Gomez
dfde867fcd Migrate trait and impl blocks' toggles into 2021-05-02 14:17:07 +02:00
Jack Huey
8460539f28
Rollup merge of #84690 - GuillaumeGomez:unneeded-bottom-margin-search-results, r=Nemo157
Remove unneeded bottom margin on search results

As you can see, there is still more than enough space at the bottom:

![Screenshot from 2021-04-29 11-26-57](https://user-images.githubusercontent.com/3050060/116530090-ea797800-a8dd-11eb-8eef-2288cf68e0d2.png)

r? ``````@Nemo157``````
2021-04-29 19:27:24 -04:00