summaryrefslogtreecommitdiff
path: root/examples/demos/src/main/scala/scrollmenu/ScrollMenu.scala
diff options
context:
space:
mode:
Diffstat (limited to 'examples/demos/src/main/scala/scrollmenu/ScrollMenu.scala')
-rw-r--r--examples/demos/src/main/scala/scrollmenu/ScrollMenu.scala5
1 files changed, 3 insertions, 2 deletions
diff --git a/examples/demos/src/main/scala/scrollmenu/ScrollMenu.scala b/examples/demos/src/main/scala/scrollmenu/ScrollMenu.scala
index 7c4fb78..29c44a6 100644
--- a/examples/demos/src/main/scala/scrollmenu/ScrollMenu.scala
+++ b/examples/demos/src/main/scala/scrollmenu/ScrollMenu.scala
@@ -77,7 +77,7 @@ class ScrollSpy(structure: Tree[String],
}
def walkTree(tree: Tree[MenuNode]): Boolean = {
val Tree(MenuNode(menuItem, itemId, start, end), children) = tree
- val before = headers(start) < threshold
+ val before = headers(start) <= threshold
val after = (end >= headers.length) || headers(end) > threshold
val win = before && after
@@ -96,7 +96,8 @@ class ScrollSpy(structure: Tree[String],
// This means it's the leaf element, because it won but there
// aren't any children which won, so it must be the actual leaf
tree.children.foreach(_.value.frag.classList.remove("selected"))
- dom.location.hash = itemId
+ if (dom.location.hash != itemId)
+ dom.location.hash = itemId
scroll(menuItem.children(0))
}