mirror of
https://github.com/SimpleMobileTools/Simple-Calendar.git
synced 2025-06-05 21:59:17 +02:00
couple weekly view scrolling related fixes
This commit is contained in:
@@ -261,6 +261,7 @@ class MainActivity : SimpleActivity(), EventListFragment.DeleteListener {
|
|||||||
weeklyAdapter.updateScrollY(week_view_view_pager.currentItem, y)
|
weeklyAdapter.updateScrollY(week_view_view_pager.currentItem, y)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
week_view_hours_scrollview.setOnTouchListener({ view, motionEvent -> true })
|
||||||
}
|
}
|
||||||
|
|
||||||
fun updateHoursTopMargin(margin: Int) {
|
fun updateHoursTopMargin(margin: Int) {
|
||||||
|
@@ -27,7 +27,7 @@ class MyWeekPagerAdapter(fm: FragmentManager, val mWeekTimestamps: List<Int>, va
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun updateScrollY(pos: Int, y: Int) {
|
fun updateScrollY(pos: Int, y: Int) {
|
||||||
(-1..1).map { mFragments[pos + it] }
|
mFragments[pos - 1].updateScrollY(y)
|
||||||
.forEach { it?.updateScrollY(y) }
|
mFragments[pos + 1].updateScrollY(y)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -60,8 +60,8 @@ class WeekFragment : Fragment(), WeeklyCalendar {
|
|||||||
|
|
||||||
week_events_scrollview.viewTreeObserver.addOnGlobalLayoutListener(object : ViewTreeObserver.OnGlobalLayoutListener {
|
week_events_scrollview.viewTreeObserver.addOnGlobalLayoutListener(object : ViewTreeObserver.OnGlobalLayoutListener {
|
||||||
override fun onGlobalLayout() {
|
override fun onGlobalLayout() {
|
||||||
updateScrollY(Math.max(MainActivity.mWeekScrollY, minScrollY))
|
|
||||||
week_events_scrollview.viewTreeObserver.removeOnGlobalLayoutListener(this)
|
week_events_scrollview.viewTreeObserver.removeOnGlobalLayoutListener(this)
|
||||||
|
updateScrollY(Math.max(MainActivity.mWeekScrollY, minScrollY))
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -145,7 +145,8 @@ class WeekFragment : Fragment(), WeeklyCalendar {
|
|||||||
} else if (maxScrollY != -1 && y > maxScrollY) {
|
} else if (maxScrollY != -1 && y > maxScrollY) {
|
||||||
mView.week_events_scrollview.scrollY = maxScrollY
|
mView.week_events_scrollview.scrollY = maxScrollY
|
||||||
} else {
|
} else {
|
||||||
mListener?.scrollTo(y)
|
if (isFragmentVisible)
|
||||||
|
mListener?.scrollTo(y)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user