aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlec Theriault <alec.theriault@gmail.com>2018-11-07 13:31:19 -0800
committerAlec Theriault <alec.theriault@gmail.com>2018-11-07 13:41:57 -0800
commitad157c408cd7ad4badec71a84551a836a343f27b (patch)
tree946d2bbae8ea8d263539a47faed5c884b6a7f76e
parent2a46036ea4e2e6bb6505ebbfd3e4609aeb7c3845 (diff)
Allow "Contents" summary to scroll in a fixed div
In the unfortunate event that the "Contents" summary doesn't fit vertically (like in the "Prelude"), it will be scrollable.
-rw-r--r--haddock-api/resources/html/NewOcean.std-theme/new-ocean.css18
-rw-r--r--haddock-api/src/Haddock/Backends/Xhtml.hs4
-rw-r--r--haddock-api/src/Haddock/Backends/Xhtml/Layout.hs5
3 files changed, 13 insertions, 14 deletions
diff --git a/haddock-api/resources/html/NewOcean.std-theme/new-ocean.css b/haddock-api/resources/html/NewOcean.std-theme/new-ocean.css
index 7568032f..906b3954 100644
--- a/haddock-api/resources/html/NewOcean.std-theme/new-ocean.css
+++ b/haddock-api/resources/html/NewOcean.std-theme/new-ocean.css
@@ -81,6 +81,9 @@ body.js-enabled .hide-when-js-enabled {
position: fixed;
max-width: 10vw;
top: 10.2em;
+ left: 2em;
+ bottom: 1em;
+ overflow-y: scroll;
}
#synopsis {
@@ -96,10 +99,6 @@ body.js-enabled .hide-when-js-enabled {
z-index: 1;
}
- #table-of-contents {
- left: 2em;
- }
-
#synopsis .show {
border: 1px solid #5E5184;
padding: 0.7em;
@@ -518,7 +517,7 @@ div#style-menu-holder {
/* @group Front Matter */
#synopsis .caption,
-#table-of-contents .caption {
+#contents-list .caption {
font-size: 1rem;
}
@@ -526,26 +525,25 @@ div#style-menu-holder {
font-size: 16px;
}
-#table-of-contents {
+#contents-list {
background: #f7f7f7;
padding: 1em;
margin: 0;
- margin-top: 1em;
}
-#table-of-contents .caption {
+#contents-list .caption {
text-align: left;
margin: 0;
}
-#table-of-contents ul {
+#contents-list ul {
list-style: none;
margin: 0;
margin-top: 10px;
font-size: 14px;
}
-#table-of-contents ul ul {
+#contents-list ul ul {
margin-left: 1.5em;
}
diff --git a/haddock-api/src/Haddock/Backends/Xhtml.hs b/haddock-api/src/Haddock/Backends/Xhtml.hs
index 2206b7dc..e2fdc509 100644
--- a/haddock-api/src/Haddock/Backends/Xhtml.hs
+++ b/haddock-api/src/Haddock/Backends/Xhtml.hs
@@ -633,9 +633,9 @@ ppModuleContents pkg qual exports orphan
| null sections && not orphan = noHtml
| otherwise = contentsDiv
where
- contentsDiv = divTableOfContents << (
+ contentsDiv = divTableOfContents << (divContentsList << (
sectionName << "Contents" +++
- unordList (sections ++ orphanSection))
+ unordList (sections ++ orphanSection)))
(sections, _leftovers{-should be []-}) = process 0 exports
orphanSection
diff --git a/haddock-api/src/Haddock/Backends/Xhtml/Layout.hs b/haddock-api/src/Haddock/Backends/Xhtml/Layout.hs
index c935bc5f..25d8b07a 100644
--- a/haddock-api/src/Haddock/Backends/Xhtml/Layout.hs
+++ b/haddock-api/src/Haddock/Backends/Xhtml/Layout.hs
@@ -15,7 +15,7 @@ module Haddock.Backends.Xhtml.Layout (
divPackageHeader, divContent, divModuleHeader, divFooter,
divTableOfContents, divDescription, divSynopsis, divInterface,
- divIndex, divAlphabet, divModuleList,
+ divIndex, divAlphabet, divModuleList, divContentsList,
sectionName,
nonEmptySectionName,
@@ -80,7 +80,7 @@ nonEmptySectionName c
divPackageHeader, divContent, divModuleHeader, divFooter,
divTableOfContents, divDescription, divSynopsis, divInterface,
- divIndex, divAlphabet, divModuleList
+ divIndex, divAlphabet, divModuleList, divContentsList
:: Html -> Html
divPackageHeader = sectionDiv "package-header"
@@ -88,6 +88,7 @@ divContent = sectionDiv "content"
divModuleHeader = sectionDiv "module-header"
divFooter = sectionDiv "footer"
divTableOfContents = sectionDiv "table-of-contents"
+divContentsList = sectionDiv "contents-list"
divDescription = sectionDiv "description"
divSynopsis = sectionDiv "synopsis"
divInterface = sectionDiv "interface"