diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/base/lazypager/LazyViewPager.kt b/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/base/lazypager/LazyViewPager.kt index 7f7c4334..45337990 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/base/lazypager/LazyViewPager.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/base/lazypager/LazyViewPager.kt @@ -13,10 +13,12 @@ class LazyViewPager @JvmOverloads constructor( ) : ViewPager(context, attrs) { private var pageSelection = -1 + private var scrollState = 0 init { addOnPageChangeListener(object : OnPageChangeListener { override fun onPageScrollStateChanged(state: Int) { + scrollState = state (adapter as? LazyPagerAdapter)?.let { it.swipeRefreshLayout?.isEnabled = state == SCROLL_STATE_IDLE && it.enabledList[pageSelection, true] } @@ -28,7 +30,8 @@ class LazyViewPager @JvmOverloads constructor( override fun onPageSelected(position: Int) { pageSelection = position - if (adapter is LazyPagerAdapter) { + (adapter as? LazyPagerAdapter)?.let { + it.swipeRefreshLayout?.isEnabled = scrollState == SCROLL_STATE_IDLE && it.enabledList[pageSelection, true] val fragment = adapter?.instantiateItem(this@LazyViewPager, position) val lazyFragment = fragment as? LazyFragment lazyFragment?.createPage() diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/homework/HomeworkListFragment.kt b/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/homework/HomeworkListFragment.kt index 38586593..0cbba646 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/homework/HomeworkListFragment.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/homework/HomeworkListFragment.kt @@ -93,6 +93,7 @@ class HomeworkListFragment : LazyFragment(), CoroutineScope { } } adapter.notifyDataSetChanged() + setSwipeToRefresh(false) // TODO // show/hide relevant views b.progressBar.isVisible = false diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/template/TemplateListFragment.kt b/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/template/TemplateListFragment.kt index fb3b1084..e2d6c220 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/template/TemplateListFragment.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/template/TemplateListFragment.kt @@ -64,6 +64,7 @@ class TemplateListFragment : Fragment(), CoroutineScope { } } adapter.notifyDataSetChanged() + b.refreshLayout.isEnabled = false // TODO // show/hide relevant views b.progressBar.isVisible = false diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/template/TemplateListPageFragment.kt b/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/template/TemplateListPageFragment.kt index 6908b30e..ce5c5001 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/template/TemplateListPageFragment.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/template/TemplateListPageFragment.kt @@ -64,6 +64,7 @@ class TemplateListPageFragment : LazyFragment(), CoroutineScope { } } adapter.notifyDataSetChanged() + setSwipeToRefresh(false) // TODO // show/hide relevant views b.progressBar.isVisible = false