Commit dd76a74e authored by Viktor De Pasquale's avatar Viktor De Pasquale Committed by John Wu

Fixed fast scroll button crashing while scrolling to undefined position

parent 70cb52b2
......@@ -186,9 +186,17 @@ fun setHidden(view: FloatingActionButton, hide: Boolean) {
}
@BindingAdapter("scrollPosition", "scrollPositionSmooth", requireAll = false)
fun setScrollPosition(view: RecyclerView, position: Int, smoothScroll: Boolean) = when {
smoothScroll -> view.smoothScrollToPosition(position)
else -> view.scrollToPosition(position)
fun setScrollPosition(view: RecyclerView, position: Int, smoothScroll: Boolean) {
val adapterItemCount = view.adapter?.itemCount ?: -1
if (position !in 0 until adapterItemCount) {
// the position is not in adapter bounds, adapter will throw exception for invalid positions
return
}
when {
smoothScroll -> view.smoothScrollToPosition(position)
else -> view.scrollToPosition(position)
}
}
@BindingAdapter("recyclerScrollEvent")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment