Skip to content

Commit

Permalink
Auto merge of rust-lang#103165 - matthiaskrgr:rollup-guw8oh6, r=matth…
Browse files Browse the repository at this point in the history
…iaskrgr

Rollup of 4 pull requests

Successful merges:

 - rust-lang#103152 (Use named arguments to make GUI test more clear)
 - rust-lang#103160 (rustdoc: factor JS mobile scroll lock into its own function)
 - rust-lang#103161 (rustdoc: remove redundant CSS on `#copy-path`)
 - rust-lang#103162 (rustdoc: remove redundant CSS `#crate-search { border-radius }`)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
  • Loading branch information
bors committed Oct 17, 2022
2 parents 06f049a + 8a467c3 commit 194140b
Show file tree
Hide file tree
Showing 5 changed files with 64 additions and 85 deletions.
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.12.5
0.12.6
24 changes: 8 additions & 16 deletions src/librustdoc/html/static/css/rustdoc.css
Original file line number Diff line number Diff line change
Expand Up @@ -1431,10 +1431,7 @@ h3.variant {
}

#settings-menu > a, #help-button > a, #copy-path {
padding: 5px;
width: 33px;
border: 1px solid var(--border-color);
border-radius: 2px;
cursor: pointer;
line-height: 1.5;
}
Expand All @@ -1444,10 +1441,18 @@ h3.variant {
height: 100%;
display: block;
background-color: var(--button-background-color);
border: 1px solid var(--border-color);
border-radius: 2px;
}

#copy-path {
color: var(--copy-path-button-color);
background: var(--main-background-color);
height: 34px;
margin-left: 10px;
padding: 0;
padding-left: 2px;
border: 0;
}
#copy-path > img {
filter: var(--copy-path-img-filter);
Expand Down Expand Up @@ -1495,15 +1500,6 @@ input:checked + .slider {
padding-top: 2px;
}

#copy-path {
height: 34px;
background-color: var(--main-background-color);
margin-left: 10px;
padding: 0;
padding-left: 2px;
border: 0;
}

kbd {
display: inline-block;
padding: 3px 5px;
Expand Down Expand Up @@ -1994,10 +1990,6 @@ in storage.js plus the media query with (min-width: 701px)
}

@media (max-width: 464px) {
#crate-search {
border-radius: 4px;
}

.docblock {
margin-left: 12px;
}
Expand Down
36 changes: 25 additions & 11 deletions src/librustdoc/html/static/js/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -733,37 +733,51 @@ function loadCss(cssFileName) {

let oldSidebarScrollPosition = null;

function showSidebar() {
// Scroll locking used both here and in source-script.js

window.rustdocMobileScrollLock = function() {
const mobile_topbar = document.querySelector(".mobile-topbar");
if (window.innerWidth < window.RUSTDOC_MOBILE_BREAKPOINT && mobile_topbar) {
if (window.innerWidth < window.RUSTDOC_MOBILE_BREAKPOINT) {
// This is to keep the scroll position on mobile.
oldSidebarScrollPosition = window.scrollY;
document.body.style.width = `${document.body.offsetWidth}px`;
document.body.style.position = "fixed";
document.body.style.top = `-${oldSidebarScrollPosition}px`;
mobile_topbar.style.top = `${oldSidebarScrollPosition}px`;
mobile_topbar.style.position = "relative";
if (mobile_topbar) {
mobile_topbar.style.top = `${oldSidebarScrollPosition}px`;
mobile_topbar.style.position = "relative";
}
} else {
oldSidebarScrollPosition = null;
}
const sidebar = document.getElementsByClassName("sidebar")[0];
addClass(sidebar, "shown");
}
};

function hideSidebar() {
window.rustdocMobileScrollUnlock = function() {
const mobile_topbar = document.querySelector(".mobile-topbar");
if (oldSidebarScrollPosition !== null && mobile_topbar) {
if (oldSidebarScrollPosition !== null) {
// This is to keep the scroll position on mobile.
document.body.style.width = "";
document.body.style.position = "";
document.body.style.top = "";
mobile_topbar.style.top = "";
mobile_topbar.style.position = "";
if (mobile_topbar) {
mobile_topbar.style.top = "";
mobile_topbar.style.position = "";
}
// The scroll position is lost when resetting the style, hence why we store it in
// `oldSidebarScrollPosition`.
window.scrollTo(0, oldSidebarScrollPosition);
oldSidebarScrollPosition = null;
}
};

function showSidebar() {
window.rustdocMobileScrollLock();
const sidebar = document.getElementsByClassName("sidebar")[0];
addClass(sidebar, "shown");
}

function hideSidebar() {
window.rustdocMobileScrollUnlock();
const sidebar = document.getElementsByClassName("sidebar")[0];
removeClass(sidebar, "shown");
}
Expand Down
33 changes: 3 additions & 30 deletions src/librustdoc/html/static/js/source-script.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
(function() {

const rootPath = document.getElementById("rustdoc-vars").attributes["data-root-path"].value;
let oldScrollPosition = null;

const NAME_OFFSET = 0;
const DIRS_OFFSET = 1;
Expand Down Expand Up @@ -70,44 +69,18 @@ function createDirEntry(elem, parent, fullPath, hasFoundFile) {
function toggleSidebar() {
const child = this.parentNode.children[0];
if (child.innerText === ">") {
if (window.innerWidth < window.RUSTDOC_MOBILE_BREAKPOINT) {
// This is to keep the scroll position on mobile.
oldScrollPosition = window.scrollY;
document.body.style.position = "fixed";
document.body.style.top = `-${oldScrollPosition}px`;
} else {
oldScrollPosition = null;
}
window.rustdocMobileScrollLock();
addClass(document.documentElement, "source-sidebar-expanded");
child.innerText = "<";
updateLocalStorage("source-sidebar-show", "true");
} else {
if (window.innerWidth < window.RUSTDOC_MOBILE_BREAKPOINT && oldScrollPosition !== null) {
// This is to keep the scroll position on mobile.
document.body.style.position = "";
document.body.style.top = "";
// The scroll position is lost when resetting the style, hence why we store it in
// `oldScrollPosition`.
window.scrollTo(0, oldScrollPosition);
oldScrollPosition = null;
}
window.rustdocMobileScrollUnlock();
removeClass(document.documentElement, "source-sidebar-expanded");
child.innerText = ">";
updateLocalStorage("source-sidebar-show", "false");
}
}

window.addEventListener("resize", () => {
if (window.innerWidth >= window.RUSTDOC_MOBILE_BREAKPOINT && oldScrollPosition !== null) {
// If the user opens the sidebar in "mobile" mode, and then grows the browser window,
// we need to switch away from mobile mode and make the main content area scrollable.
document.body.style.position = "";
document.body.style.top = "";
window.scrollTo(0, oldScrollPosition);
oldScrollPosition = null;
}
});

function createSidebarToggle() {
const sidebarToggle = document.createElement("div");
sidebarToggle.id = "sidebar-toggle";
Expand All @@ -125,7 +98,7 @@ function createSidebarToggle() {
return sidebarToggle;
}

// This function is called from "source-files.js", generated in `html/render/mod.rs`.
// This function is called from "source-files.js", generated in `html/render/write_shared.rs`.
// eslint-disable-next-line no-unused-vars
function createSourceSidebar() {
const container = document.querySelector("nav.sidebar");
Expand Down
54 changes: 27 additions & 27 deletions src/test/rustdoc-gui/anchors.goml
Original file line number Diff line number Diff line change
Expand Up @@ -71,37 +71,37 @@ define-function: (

call-function: (
"check-colors",
(
"ayu", // theme
"rgb(197, 197, 197)", // main color
"rgb(255, 255, 255)", // title color
"rgb(255, 255, 255)", // fqn color
"rgb(255, 160, 165)", // fqn type color
"rgb(57, 175, 215)", // src link
"rgb(83, 177, 219)", // sidebar link
),
{
"theme": "ayu",
"main_color": "rgb(197, 197, 197)",
"title_color": "rgb(255, 255, 255)",
"fqn_color": "rgb(255, 255, 255)",
"fqn_type_color": "rgb(255, 160, 165)",
"src_link_color": "rgb(57, 175, 215)",
"sidebar_link_color": "rgb(83, 177, 219)",
},
)
call-function: (
"check-colors",
(
"dark", // theme
"rgb(221, 221, 221)", // main color
"rgb(221, 221, 221)", // title color
"rgb(221, 221, 221)", // fqn color
"rgb(45, 191, 184)", // fqn type color
"rgb(210, 153, 29)", // src link
"rgb(253, 191, 53)", // sidebar link
),
{
"theme": "dark",
"main_color": "rgb(221, 221, 221)",
"title_color": "rgb(221, 221, 221)",
"fqn_color": "rgb(221, 221, 221)",
"fqn_type_color": "rgb(45, 191, 184)",
"src_link_color": "rgb(210, 153, 29)",
"sidebar_link_color": "rgb(253, 191, 53)",
},
)
call-function: (
"check-colors",
(
"light", // theme
"rgb(0, 0, 0)", // main color
"rgb(0, 0, 0)", // title color
"rgb(0, 0, 0)", // fqn color
"rgb(173, 55, 138)", // fqn type color
"rgb(56, 115, 173)", // src link
"rgb(53, 109, 164)", // sidebar link
),
{
"theme": "light",
"main_color": "rgb(0, 0, 0)",
"title_color": "rgb(0, 0, 0)",
"fqn_color": "rgb(0, 0, 0)",
"fqn_type_color": "rgb(173, 55, 138)",
"src_link_color": "rgb(56, 115, 173)",
"sidebar_link_color": "rgb(53, 109, 164)",
},
)

0 comments on commit 194140b

Please sign in to comment.