Skip to content

Commit dec3b22

Browse files
committed
Merge branch 'scaladoc/review-fixes' of https://github.com/pikinier20/dotty into scaladoc/review-fixes
2 parents b82068d + 74895f0 commit dec3b22

File tree

14 files changed

+116
-54
lines changed

14 files changed

+116
-54
lines changed

docs/_layouts/static-site-main.html

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,5 +43,12 @@
4343
<div class="content-contributors hidden">
4444
<h1 class="h200">Contributors to this page</h1>
4545
<div id="documentation-contributors" class="contributors-container"></div>
46+
{% if urls.editSource %}
47+
<div class="github-edit-button">
48+
<a class="text-button with-link body-small" href="{{ urls.editSource }}">
49+
Edit this page on GitHub
50+
</a>
51+
</div>
52+
{% endif %}
4653
</div>
4754
</div>
Lines changed: 35 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,51 @@
11
.content-contributors.hidden {
22
display: none;
33
}
4+
5+
.content-contributors .contributors-container div a {
6+
vertical-align: middle;
7+
padding: 3px;
8+
text-decoration: none;
9+
}
10+
11+
.content-contributors {
12+
background-color: var(--background-neutral);
13+
padding: calc(3 * var(--base-spacing));
14+
border-radius: 4px;
15+
}
16+
417
.content-contributors .contributors-container {
518
display: flex;
619
flex-wrap: wrap;
720
align-items: center;
821
padding-bottom: 25px;
22+
row-gap: calc(3 * var(--base-spacing));
23+
column-gap: calc(4 * var(--base-spacing));
924
}
10-
.content-contributors .contributors-container div {
11-
margin: 5px;
12-
}
13-
.content-contributors .contributors-container div a {
14-
vertical-align: middle;
15-
padding: 3px;
16-
text-decoration: none;
25+
26+
.content-contributors h1 {
27+
color: var(--text-primary);
28+
padding-bottom: calc(3 * var(--base-spacing));
1729
}
30+
1831
.content-contributors .contributors-container div img {
1932
vertical-align: middle;
2033
width: 35px;
2134
height: 35px;
2235
margin-bottom: 0;
23-
border-radius: 7px;
36+
border-radius: 50%;
37+
margin-right: calc(1.5 * var(--base-spacing));
38+
}
39+
40+
#content .content-contributors .contributors-container div a {
41+
text-decoration: none;
42+
border-bottom: none;
43+
}
44+
45+
.content-contributors .contributors-container {
46+
padding: 0;
47+
}
48+
49+
.content-contributors .github-edit-button {
50+
padding-top: calc(2 * var(--base-spacing));
2451
}

scaladoc-testcases/docs/_layouts/static-site-main.html

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,5 +34,12 @@
3434
<div class="content-contributors hidden">
3535
<h1 class="h200">Contributors to this page</h1>
3636
<div id="documentation-contributors" class="contributors-container"></div>
37+
{% if urls.editSource %}
38+
<div class="github-edit-button">
39+
<a class="text-button with-link body-small" href="{{ urls.editSource }}">
40+
Edit this page on GitHub
41+
</a>
42+
</div>
43+
{% endif %}
3744
</div>
3845
</div>

scaladoc/resources/dotty_res/scripts/components/DocumentableList.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* @typedef { [key: string, value: string][] } Dataset
55
*/
66

7-
class DocumentableList extends Component {
7+
class DocumentableList extends Component {
88
constructor(props) {
99
super(props);
1010

@@ -140,7 +140,7 @@ class List {
140140

141141
function includesInputValue() {
142142
const lcValue = filter.value.toLowerCase()
143-
return elementData.name.toLowerCase().includes(lcValue)
143+
return elementData.name.toLowerCase().includes(lcValue)
144144
|| elementData.description.toLowerCase().includes(lcValue);
145145
}
146146

@@ -177,7 +177,9 @@ class List {
177177
.every(([filterKey, value]) => {
178178
const filterGroup = filter.filters[filterKey]
179179

180-
return value.split(",").some(v => filterGroup && filterGroup[v].selected)
180+
console.log(Object.entries(filterGroup).filter(arr => arr[1].selected))
181+
182+
return Object.entries(filterGroup).filter(arr => arr[1].selected).length == 0 || value.split(",").some(v => (filterGroup && filterGroup[v].selected))
181183
})
182184

183185
return isVisible

scaladoc/resources/dotty_res/scripts/components/Filter.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* @typedef { Record<FilterAttributes, FilterMap> } Filters
55
*/
66

7-
class Filter {
7+
class Filter {
88
/**
99
* @param value { string }
1010
* @param filters { Filters }
@@ -217,8 +217,8 @@ class Filter {
217217
}
218218

219219
class FilterItem {
220-
constructor(selected = true, visible = true) {
220+
constructor(selected = false, visible = true) {
221221
this.selected = selected
222222
this.visible = visible
223223
}
224-
}
224+
}

scaladoc/resources/dotty_res/scripts/ux.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ window.addEventListener("DOMContentLoaded", () => {
3030
}
3131
}
3232

33-
var memberLists = document.getElementsByClassName("membersList")
33+
var memberLists = document.getElementsByClassName("tab")
3434
if (memberLists) {
3535
for (i = 0; i < memberLists.length; i++) {
3636
memberLists[i].children[0].onclick = function(e) {

scaladoc/resources/dotty_res/styles/theme/color-tokens.css

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,9 @@
6464
--code-syntax-highlighting-deletion: var(--crimson11);
6565
--code-syntax-highlighting-variable: var(--purple9);
6666

67+
--code-syntax-highlighting-scrollbar: var(--grey8);
68+
--code-syntax-highlighting-scrollbar-hover: var(--grey9);
69+
6770
--code-method-highlighting-type: var(--purple9);
6871
--code-method-highlighting-type-link: var(--sky11);
6972
--code-method-highlighting-code-fg: var(--grey12);
@@ -142,6 +145,9 @@
142145
--code-syntax-highlighting-deletion: var(--crimson11);
143146
--code-syntax-highlighting-variable: var(--purple9);
144147

148+
--code-syntax-highlighting-scrollbar: var(--grey8);
149+
--code-syntax-highlighting-scrollbar-hover: var(--grey9);
150+
145151
--code-method-highlighting-type: var(--purple9);
146152
--code-method-highlighting-type-link: var(--sky11);
147153
--code-method-highlighting-code-fg: var(--grey12);

scaladoc/resources/dotty_res/styles/theme/components/code-snippet.css

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,3 +167,27 @@
167167
.hljs-variable {
168168
color: var(--code-syntax-highlighting-variable);
169169
}
170+
171+
/* Scrollbar */
172+
173+
/* For Firefox */
174+
.snippet {
175+
scrollbar-color: var(--code-syntax-highlighting-scrollbar);
176+
scrollbar-width: thin;
177+
}
178+
179+
/* For Chrome */
180+
181+
.snippet::-webkit-scrollbar-thumb {
182+
background-color: var(--code-syntax-highlighting-scrollbar);
183+
border-radius: 3px;
184+
}
185+
186+
.snippet::-webkit-scrollbar-thumb:hover {
187+
background-color: var(--code-syntax-highlighting-scrollbar-hover);
188+
}
189+
190+
.snippet::-webkit-scrollbar {
191+
width: 8px;
192+
height: 8px;
193+
}

scaladoc/resources/dotty_res/styles/theme/components/contributors.css

Lines changed: 0 additions & 29 deletions
This file was deleted.

scaladoc/resources/dotty_res/styles/theme/layout/content.css

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,11 @@
157157
color: var(--text-primary);
158158
}
159159

160+
/* content first paragraph */
161+
#content .first-p {
162+
color: var(--text-secondary);
163+
}
164+
160165
/* content list */
161166
#content li {
162167
color: var(--text-primary);
@@ -365,27 +370,27 @@
365370
margin-bottom: calc(3 * var(--base-spacing));
366371
}
367372

368-
.membersList {
373+
.tab {
369374
position: relative;
370375
}
371376

372-
.membersList h2 {
377+
.tab h2 {
373378
border-bottom: 1px solid var(--border-default);
374379
padding-bottom: calc(3 * var(--base-spacing));
375380
padding-top: calc(3 * var(--base-spacing));
376381
}
377382

378-
.membersList > button {
383+
.tab > button {
379384
position: absolute;
380385
right: 0;
381386
top: calc(3.5 * var(--base-spacing));
382387
}
383388

384-
.membersList .documentableList {
389+
.tab .documentableList {
385390
display: none;
386391
}
387392

388-
.membersList.expand .documentableList {
393+
.tab.expand .documentableList {
389394
display: block;
390395
}
391396

scaladoc/src/dotty/tools/scaladoc/renderers/MemberRenderer.scala

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,7 @@ class MemberRenderer(signatureRenderer: SignatureRenderer)(using DocContext) ext
125125
Option.when(bodyContents.nonEmpty || attributes.nonEmpty)(
126126
div(cls := "cover")(
127127
div(cls := "doc")(bodyContents),
128+
h2(cls := "h500")("Attributes"),
128129
dl(cls := "attributes")(attributes*)
129130
)
130131
)
@@ -260,7 +261,15 @@ class MemberRenderer(signatureRenderer: SignatureRenderer)(using DocContext) ext
260261

261262
val children = all.flatten.flatten
262263
if children.isEmpty then emptyTab
263-
else Tab(name, name, h2(tabAttr(name), cls := "h300")(name) +: children, "selected")
264+
else Tab(
265+
name,
266+
name,
267+
Seq(
268+
button(cls := "icon-button show-content expand"),
269+
h2(tabAttr(name), cls := "h300")(name)
270+
) ++ children,
271+
"expand"
272+
)
264273

265274
case class ExpandedGroup(name: AppliedTag, description: AppliedTag, prio: Int)
266275

@@ -289,7 +298,7 @@ class MemberRenderer(signatureRenderer: SignatureRenderer)(using DocContext) ext
289298
members.map(member)
290299
))
291300
}
292-
Tab("Grouped members", "custom_groups", content, "selected")
301+
Tab("Grouped members", "custom_groups", content, "expand")
293302

294303
def buildMembers(s: Member): AppliedTag =
295304
def partitionIntoGroups(members: Seq[Member]) =
@@ -318,7 +327,7 @@ class MemberRenderer(signatureRenderer: SignatureRenderer)(using DocContext) ext
318327
}.toSeq
319328

320329
div(cls := "membersList expand")(
321-
button(cls := "icon-button show-content expand"),
330+
h2(cls := "h500")("Members list"),
322331
renderTabs(
323332
singleSelection = false,
324333
buildGroup("Packages", Seq(

scaladoc/src/dotty/tools/scaladoc/renderers/SiteRenderer.scala

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,10 @@ trait SiteRenderer(using DocContext) extends Locations:
7878
}
7979
}
8080

81+
document.select("header + p").forEach(firstParagraph =>
82+
firstParagraph.addClass("body-large")
83+
firstParagraph.addClass("first-p")
84+
)
8185
document.select("a").forEach(element =>
8286
element.attr("href", processLocalLinkWithGuard(element.attr("href")))
8387
)

scaladoc/src/dotty/tools/scaladoc/tasty/comments/markdown/SnippetRenderer.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ case class SnippetLine(content: String, lineNo: Int, classes: Set[String] = Set.
1111
def withAttribute(name: String, value: String) = this.copy(attributes = attributes.updated(name, value))
1212
def toHTML =
1313
val label = if messages.nonEmpty then s"""label="${messages.map(_.escapeReservedTokens).mkString("\n")}"""" else ""
14-
s"""<span line-number="${lineNo}" class="${classes.mkString(" ")}"><span class="tooltip-container" $label></span>$content</span>"""
14+
s"""<span line-number="${lineNo + 1}" class="${classes.mkString(" ")}"><span class="tooltip-container" $label></span>$content</span>"""
1515

1616
object SnippetRenderer:
1717
val hiddenStartSymbol = "//{"

scaladoc/test/dotty/tools/scaladoc/site/SiteGeneratationTest.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ class SiteGeneratationTest extends BaseHtmlTest:
2323
parents: Seq[String] = Nil,
2424
checks: DocumentContext => Unit = _ => ())(using ProjectContext) =
2525
withHtmlFile(path){ content =>
26-
content.assertTextsIn(".project-name", projectName)
26+
content.assertTextsIn(".project-name", projectName, projectName) // There are two elements with project name: one for desktop, one for mobile
2727
content.assertTextsIn(".projectVersion", projectVersion)
2828
content.assertTextsIn("h1", header)
2929
content.assertTextsIn("title", title)

0 commit comments

Comments
 (0)