Skip to content

Commit 8e856b6

Browse files
committed
Remove API entry
1 parent 8a16af7 commit 8e856b6

File tree

2 files changed

+15
-21
lines changed

2 files changed

+15
-21
lines changed

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

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -105,14 +105,14 @@ class HtmlRenderer(rootPackage: Member, members: Map[DRI, Member])(using ctx: Do
105105
case _ => Nil
106106
}
107107

108-
def renderNested(nav: Page, apiNav: Boolean, nestLevel: Int): (Boolean, AppliedTag) =
108+
def renderNested(nav: Page, nestLevel: Int): (Boolean, AppliedTag) =
109109
val isSelected = nav.link.dri == pageLink.dri
110110

111111
def linkHtml(expanded: Boolean = false, withArrow: Boolean = false) =
112112
val attrs: Seq[String] = Seq(
113113
Option.when(isSelected)("selected h100"),
114114
Option.when(expanded)("expanded cs"),
115-
Option.when(!apiNav)("de")
115+
Option.when(!nav.content.isInstanceOf[Member])("de")
116116
).flatten
117117
val icon = nav.content match {
118118
case m: Member => navigationIcon(m)
@@ -125,10 +125,10 @@ class HtmlRenderer(rootPackage: Member, members: Map[DRI, Member])(using ctx: Do
125125
)
126126
)
127127

128-
nav.children.filter(_.content.isInstanceOf[Member] == apiNav).filterNot(_.hidden) match
128+
nav.children.filterNot(_.hidden) match
129129
case Nil => isSelected -> div(cls := s"ni n$nestLevel ${if isSelected || nestLevel == 0 then "expanded" else ""}")(linkHtml())
130130
case children =>
131-
val nested = children.map(renderNested(_, apiNav, nestLevel + 1))
131+
val nested = children.map(renderNested(_, nestLevel + 1))
132132
val expanded = nested.exists(_._1) || isSelected
133133
val attr =
134134
if expanded || isSelected || nestLevel == 0 then Seq(cls := s"ni n$nestLevel expanded") else Seq(cls := s"ni n$nestLevel")
@@ -137,9 +137,9 @@ class HtmlRenderer(rootPackage: Member, members: Map[DRI, Member])(using ctx: Do
137137
nested.map(_._2)
138138
)
139139

140-
141-
val apiNav = renderNested(navigablePage, true, 0)
142-
val docsNav = renderNested(navigablePage, false, 0)
140+
// TODO: The apiNav and docsNav should be optional and based on their existence, the buttons on UI should be active or not.
141+
val apiNav = rootApiPage.fold((false, span(cls := "ni")))(renderNested(_, 0))
142+
val docsNav = rootDocsPage.fold((false, span(cls := "ni")))(renderNested(_, 0))
143143

144144
(apiNav, docsNav)
145145

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

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,10 @@ abstract class Renderer(rootPackage: Member, val members: Map[DRI, Member], prot
3535
val childrenPages = member.members.filter(_.needsOwnPage)
3636
Page(Link(member.name, member.dri), member, childrenPages.map(memberPage))
3737

38-
val navigablePage: Page =
39-
val rootPckPage = memberPage(rootPackage)
40-
staticSite match
41-
case None => rootPckPage.withTitle(args.name)
38+
val rootApiPage: Option[Page] = Some(memberPage(rootPackage)).filter(_.children.nonEmpty).map(_.withTitle(ctx.args.name))
39+
40+
val rootDocsPage: Option[Page] = staticSite match
41+
case None => None
4242
case Some(siteContext) =>
4343
val rootTemplate = siteContext.staticSiteRoot.rootTemplate
4444

@@ -98,14 +98,8 @@ abstract class Renderer(rootPackage: Member, val members: Map[DRI, Member], prot
9898

9999
val newRoot = newTemplates.head
100100

101-
if newRoot.children.isEmpty && newRoot.templateFile.rawCode.isEmpty
102-
then rootPckPage.withTitle(args.name)
103-
else {
104-
val newRootPage = templateToPage(newRoot, siteContext)
105-
newRootPage.withNewChildren(
106-
Seq(rootPckPage.withTitle("API")).filter(_ => rootPackage.members.nonEmpty)
107-
)
108-
}
101+
Some(newRoot).filter(r => r.children.nonEmpty || r.templateFile.rawCode.nonEmpty)
102+
.map(templateToPage(_, siteContext))
109103

110104
val redirectPages: Seq[Page] = staticSite.fold(Seq.empty)(siteContext => siteContext.redirectTemplates.map {
111105
case (template, driFrom, driTo) =>
@@ -117,7 +111,7 @@ abstract class Renderer(rootPackage: Member, val members: Map[DRI, Member], prot
117111
* Here we have to retrive index pages from hidden pages and replace fake index pages in navigable page tree.
118112
*/
119113
val allPages: Seq[Page] =
120-
val all = navigablePage +: redirectPages
114+
val all = rootApiPage ++ rootDocsPage ++ redirectPages
121115
// We need to check for conflicts only if we have top-level member called docs
122116
val hasPotentialConflict =
123117
rootPackage.members.exists(m => m.name.startsWith("_docs"))
@@ -132,7 +126,7 @@ abstract class Renderer(rootPackage: Member, val members: Map[DRI, Member], prot
132126

133127
all.foreach(walk)
134128

135-
all
129+
all.toSeq
136130

137131
def renderContent(page: Page): PageContent = page.content match
138132
case m: Member =>

0 commit comments

Comments
 (0)