Skip to content

Commit f27ae21

Browse files
authored
Merge pull request #2898 from ehuss/on-this-page
Rework the look of the header navigation
2 parents 51a80fe + 58af253 commit f27ae21

File tree

4 files changed

+31
-20
lines changed

4 files changed

+31
-20
lines changed

crates/mdbook-html/front-end/css/chrome.css

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -624,6 +624,20 @@ html:not(.sidebar-resizing) .sidebar {
624624
transform: rotate(90deg);
625625
}
626626

627+
.chapter a.current-header {
628+
color: var(--sidebar-active);
629+
}
630+
631+
.on-this-page {
632+
margin-left: 22px;
633+
border-inline-start: 4px solid var(--sidebar-header-border-color);
634+
padding-left: 8px;
635+
}
636+
637+
.on-this-page > ol {
638+
padding-left: 0;
639+
}
640+
627641
/* Horizontal line in chapter list. */
628642
.spacer {
629643
width: 100%;
@@ -735,20 +749,3 @@ html:not(.sidebar-resizing) .sidebar {
735749
/* mdbook's margin for h2 is way too large. */
736750
margin: 10px;
737751
}
738-
739-
.current-header {
740-
/* Allows the circle positioning. */
741-
position: relative
742-
}
743-
744-
/* Places a circle just before the current header in the sidebar. */
745-
.current-header::before {
746-
content: '';
747-
position: absolute;
748-
left: -16px;
749-
margin-top: 10px;
750-
width: 8px;
751-
height: 8px;
752-
background-color: var(--sidebar-active);
753-
border-radius: 50%;
754-
}

crates/mdbook-html/front-end/css/variables.css

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,8 @@
7373
--blockquote-important-color: #d3abff;
7474
--blockquote-warning-color: #f0b72f;
7575
--blockquote-caution-color: #f21424;
76+
77+
--sidebar-header-border-color: #c18639;
7678
}
7779

7880
.coal {
@@ -132,6 +134,8 @@
132134
--blockquote-important-color: #ab7df8;
133135
--blockquote-warning-color: #d29922;
134136
--blockquote-caution-color: #d91b29;
137+
138+
--sidebar-header-border-color: #3473ad;
135139
}
136140

137141
.light, html:not(.js) {
@@ -191,6 +195,8 @@
191195
--blockquote-important-color: #8250df;
192196
--blockquote-warning-color: #9a6700;
193197
--blockquote-caution-color: #b52731;
198+
199+
--sidebar-header-border-color: #6e6edb;
194200
}
195201

196202
.navy {
@@ -250,6 +256,8 @@
250256
--blockquote-important-color: #ab7df8;
251257
--blockquote-warning-color: #d29922;
252258
--blockquote-caution-color: #f21424;
259+
260+
--sidebar-header-border-color: #2f6ab5;
253261
}
254262

255263
.rust {
@@ -307,6 +315,8 @@
307315
--blockquote-important-color: #8250df;
308316
--blockquote-warning-color: #603700;
309317
--blockquote-caution-color: #aa1721;
318+
319+
--sidebar-header-border-color: #8c391f;
310320
}
311321

312322
@media (prefers-color-scheme: dark) {
@@ -367,5 +377,7 @@
367377
--blockquote-important-color: #ab7df8;
368378
--blockquote-warning-color: #d29922;
369379
--blockquote-caution-color: #d91b29;
380+
381+
--sidebar-header-border-color: #3473ad;
370382
}
371383
}

crates/mdbook-html/front-end/templates/toc.js.hbs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -424,8 +424,11 @@ window.customElements.define('mdbook-sidebar-scrollbox', MDBookSidebarScrollbox)
424424
currentParent.ol.appendChild(li);
425425
}
426426
427+
const onThisPage = document.createElement('div');
428+
onThisPage.classList.add('on-this-page');
429+
onThisPage.append(stack[0].ol);
427430
const activeItemSpan = activeSection.parentElement;
428-
activeItemSpan.after(stack[0].ol);
431+
activeItemSpan.after(onThisPage);
429432
});
430433
431434
document.addEventListener('DOMContentLoaded', reloadCurrentHeader);

tests/gui/heading-nav-unusual-levels.goml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,4 @@
33
set-window-size: (1400, 800)
44
go-to: |DOC_PATH| + "heading-nav/unusual-heading-levels.html"
55

6-
assert-property: ("//a[@href='unusual-heading-levels.html']/../following-sibling::ol", {"innerHTML": '<ol class="section"><li class="header-item expanded"><span class="chapter-link-wrapper"><a href="#heading-3" class="header-in-summary current-header">Heading 3</a></span></li></ol><li class="header-item expanded"><span class="chapter-link-wrapper"><a href="#heading-2" class="header-in-summary">Heading 2</a></span><ol class="section"><ol class="section"><li class="header-item expanded"><span class="chapter-link-wrapper"><a href="#heading-5" class="header-in-summary">Heading 5</a></span></li><li class="header-item expanded"><span class="chapter-link-wrapper"><a href="#heading-51" class="header-in-summary">Heading 5.1</a></span></li></ol></ol></li>'})
7-
6+
assert-property: ("//a[@href='unusual-heading-levels.html']/../following-sibling::div", {"innerHTML": '<ol class="section"><ol class="section"><li class="header-item expanded"><span class="chapter-link-wrapper"><a href="#heading-3" class="header-in-summary current-header">Heading 3</a></span></li></ol><li class="header-item expanded"><span class="chapter-link-wrapper"><a href="#heading-2" class="header-in-summary">Heading 2</a></span><ol class="section"><ol class="section"><li class="header-item expanded"><span class="chapter-link-wrapper"><a href="#heading-5" class="header-in-summary">Heading 5</a></span></li><li class="header-item expanded"><span class="chapter-link-wrapper"><a href="#heading-51" class="header-in-summary">Heading 5.1</a></span></li></ol></ol></li></ol>'})

0 commit comments

Comments
 (0)