Skip to content

Commit

Permalink
Fixed A Bug Related Internet Connectivity
Browse files Browse the repository at this point in the history
  • Loading branch information
rahat14 committed Jul 8, 2021
1 parent 52c8ed0 commit 161e57c
Show file tree
Hide file tree
Showing 11 changed files with 12 additions and 7 deletions.
Binary file modified .gradle/6.5/executionHistory/executionHistory.bin
Binary file not shown.
Binary file modified .gradle/6.5/executionHistory/executionHistory.lock
Binary file not shown.
Binary file modified .gradle/6.5/fileHashes/fileHashes.bin
Binary file not shown.
Binary file modified .gradle/6.5/fileHashes/fileHashes.lock
Binary file not shown.
Binary file modified .gradle/6.5/fileHashes/resourceHashesCache.bin
Binary file not shown.
Binary file modified .gradle/6.5/javaCompile/classAnalysis.bin
Binary file not shown.
Binary file modified .gradle/6.5/javaCompile/jarAnalysis.bin
Binary file not shown.
Binary file modified .gradle/6.5/javaCompile/javaCompile.lock
Binary file not shown.
Binary file modified .gradle/6.5/javaCompile/taskHistory.bin
Binary file not shown.
Binary file modified .gradle/buildOutputCleanup/buildOutputCleanup.lock
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ class VersesListFragment : androidx.fragment.app.Fragment(R.layout.fragment_news
lateinit var connectionLiveData: ConnectionLiveData
lateinit var binding: FragmentNewsBinding
var isInternetGone = false
private val newsPagingAdapter = VersesListAdapter(this)
private val pagingAdapter = VersesListAdapter(this)


override fun onCreate(savedInstanceState: Bundle?) {
Expand All @@ -44,15 +44,15 @@ class VersesListFragment : androidx.fragment.app.Fragment(R.layout.fragment_news

viewLifecycleOwner.lifecycleScope.launch {
viewModel.pager.collectLatest {
newsPagingAdapter.submitData(it)
pagingAdapter.submitData(it)

}
}

//check for internet
connectionLiveData.observe(viewLifecycleOwner) { isNetworkAvailable ->
if (isNetworkAvailable && isInternetGone == true) {
viewModel.internetIsBackMsg(binding.root, newsPagingAdapter)
viewModel.internetIsBackMsg(binding.root, pagingAdapter)
isInternetGone = false
} else if (isNetworkAvailable == false) {
viewModel.noInternetMsg(binding.root)
Expand All @@ -62,19 +62,23 @@ class VersesListFragment : androidx.fragment.app.Fragment(R.layout.fragment_news

}

binding.btnRetry.setOnClickListener {
pagingAdapter.refresh()
}


}

private fun setupView(binding: FragmentNewsBinding) {

binding.blogList.apply {
setHasFixedSize(true)
adapter = newsPagingAdapter.withLoadStateFooter(
footer = VerseNetworkLoadStateAdapter { newsPagingAdapter.retry() }
adapter = pagingAdapter.withLoadStateFooter(
footer = VerseNetworkLoadStateAdapter { pagingAdapter.retry() }
)
layoutManager = LinearLayoutManager(context)
}
newsPagingAdapter.addLoadStateListener { loadState ->
pagingAdapter.addLoadStateListener { loadState ->

if (loadState.refresh is LoadState.Loading) {
binding.btnRetry.visibility = View.GONE
Expand All @@ -89,7 +93,7 @@ class VersesListFragment : androidx.fragment.app.Fragment(R.layout.fragment_news
loadState.append is LoadState.Error -> loadState.append as LoadState.Error
loadState.prepend is LoadState.Error -> loadState.prepend as LoadState.Error
loadState.refresh is LoadState.Error -> {
if (newsPagingAdapter.itemCount == 0) {
if (pagingAdapter.itemCount == 0) {
binding.btnRetry.visibility = View.VISIBLE
} else binding.btnRetry.visibility = View.GONE
loadState.refresh as LoadState.Error
Expand All @@ -114,6 +118,7 @@ class VersesListFragment : androidx.fragment.app.Fragment(R.layout.fragment_news

if (!Utils.isOnline(requireContext())) {
viewModel.noInternetMsg(binding.root)
isInternetGone = true
}

}
Expand Down

0 comments on commit 161e57c

Please sign in to comment.