Skip to content

Commit 5963991

Browse files
committed
Refactor some methods in scala-js
1 parent cf46198 commit 5963991

File tree

1 file changed

+21
-17
lines changed

1 file changed

+21
-17
lines changed

scaladoc-js/main/src/searchbar/SearchbarComponent.scala

Lines changed: 21 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -189,29 +189,33 @@ class SearchbarComponent(engine: SearchbarEngine, inkuireEngine: InkuireJSSearch
189189
private val rootShowClasses = ""
190190

191191
private val rootDiv: html.Div =
192-
val rootParent = document.createElement("div").asInstanceOf[html.Div]
193-
val element = document.createElement("div").asInstanceOf[html.Div]
194-
element.addEventListener("mousedown", (e: Event) => e.stopPropagation())
192+
val element = div(id := "scaladoc-searchbar")(
193+
inputElem,
194+
resultsDiv
195+
).tap { elem =>
196+
elem.addEventListener("mousedown", (e: Event) => e.stopPropagation())
197+
elem.addEventListener("keydown", {
198+
case e: KeyboardEvent =>
199+
if e.keyCode == 40 then handleArrowDown()
200+
else if e.keyCode == 38 then handleArrowUp()
201+
else if e.keyCode == 13 then handleEnter()
202+
else if e.keyCode == 27 then handleEscape()
203+
})
204+
}
205+
206+
val rootParent = div(id := "searchbar-container")(
207+
element
208+
).tap { rootElem =>
209+
rootElem.addEventListener("mousedown", (e: Event) => handleEscape())
210+
}
211+
195212
searchIcon.addEventListener("mousedown", (e: Event) => e.stopPropagation())
196213
document.body.addEventListener("mousedown", (e: Event) =>
197214
if (document.body.contains(element)) {
198215
handleEscape()
199216
}
200217
)
201-
element.addEventListener("keydown", {
202-
case e: KeyboardEvent =>
203-
if e.keyCode == 40 then handleArrowDown()
204-
else if e.keyCode == 38 then handleArrowUp()
205-
else if e.keyCode == 13 then handleEnter()
206-
else if e.keyCode == 27 then handleEscape()
207-
})
208-
element.id = "scaladoc-searchbar"
209-
element.appendChild(inputElem)
210-
element.appendChild(resultsDiv)
211-
// element
212-
rootParent.id = "searchbar-container"
213-
rootParent.appendChild(element)
214-
rootParent.addEventListener("mousedown", (e: Event) => handleEscape())
218+
215219
rootParent
216220

217221
private def handleArrowUp() = {

0 commit comments

Comments
 (0)