mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-27 04:43:54 +01:00
Fix Crash When Explore Tab is Clicked (#5550)
This commit is contained in:
parent
013bc7db39
commit
4c5d690a9e
1 changed files with 13 additions and 20 deletions
|
|
@ -5,8 +5,7 @@ import android.content.res.Configuration
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.View.GONE
|
import android.view.View.*
|
||||||
import android.view.View.VISIBLE
|
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
import androidx.lifecycle.LiveData
|
import androidx.lifecycle.LiveData
|
||||||
|
|
@ -19,6 +18,7 @@ import fr.free.nrw.commons.databinding.FragmentSearchPaginatedBinding
|
||||||
import fr.free.nrw.commons.di.CommonsDaggerSupportFragment
|
import fr.free.nrw.commons.di.CommonsDaggerSupportFragment
|
||||||
import fr.free.nrw.commons.utils.ViewUtil
|
import fr.free.nrw.commons.utils.ViewUtil
|
||||||
|
|
||||||
|
|
||||||
abstract class BasePagingFragment<T> : CommonsDaggerSupportFragment(),
|
abstract class BasePagingFragment<T> : CommonsDaggerSupportFragment(),
|
||||||
PagingContract.View<T> {
|
PagingContract.View<T> {
|
||||||
|
|
||||||
|
|
@ -29,20 +29,13 @@ abstract class BasePagingFragment<T> : CommonsDaggerSupportFragment(),
|
||||||
private val mergeAdapter by lazy { MergeAdapter(pagedListAdapter, loadingAdapter) }
|
private val mergeAdapter by lazy { MergeAdapter(pagedListAdapter, loadingAdapter) }
|
||||||
private var searchResults: LiveData<PagedList<T>>? = null
|
private var searchResults: LiveData<PagedList<T>>? = null
|
||||||
|
|
||||||
private var _binding: FragmentSearchPaginatedBinding? = null
|
private var binding : FragmentSearchPaginatedBinding? = null
|
||||||
private val binding get() = _binding!!
|
|
||||||
|
|
||||||
override fun onCreateView(
|
|
||||||
inflater: LayoutInflater,
|
|
||||||
container: ViewGroup?,
|
|
||||||
savedInstanceState: Bundle?
|
|
||||||
): View {
|
|
||||||
_binding = FragmentSearchPaginatedBinding.inflate(inflater, container, false)
|
|
||||||
return binding.root
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
|
val binding = FragmentSearchPaginatedBinding.bind(view)
|
||||||
|
this.binding = binding
|
||||||
|
|
||||||
binding.paginatedSearchResultsList.apply {
|
binding.paginatedSearchResultsList.apply {
|
||||||
layoutManager = GridLayoutManager(context, if (isPortrait) 1 else 2)
|
layoutManager = GridLayoutManager(context, if (isPortrait) 1 else 2)
|
||||||
adapter = mergeAdapter
|
adapter = mergeAdapter
|
||||||
|
|
@ -58,7 +51,7 @@ abstract class BasePagingFragment<T> : CommonsDaggerSupportFragment(),
|
||||||
*/
|
*/
|
||||||
override fun onConfigurationChanged(newConfig: Configuration) {
|
override fun onConfigurationChanged(newConfig: Configuration) {
|
||||||
super.onConfigurationChanged(newConfig)
|
super.onConfigurationChanged(newConfig)
|
||||||
binding.paginatedSearchResultsList.apply {
|
binding!!.paginatedSearchResultsList.apply {
|
||||||
layoutManager = GridLayoutManager(context, if (isPortrait) 1 else 2)
|
layoutManager = GridLayoutManager(context, if (isPortrait) 1 else 2)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -82,15 +75,15 @@ abstract class BasePagingFragment<T> : CommonsDaggerSupportFragment(),
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun hideInitialLoadProgress() {
|
override fun hideInitialLoadProgress() {
|
||||||
binding.paginatedSearchInitialLoadProgress.visibility = GONE
|
binding!!.paginatedSearchInitialLoadProgress.visibility = GONE
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun showInitialLoadInProgress() {
|
override fun showInitialLoadInProgress() {
|
||||||
binding.paginatedSearchInitialLoadProgress.visibility = VISIBLE
|
binding!!.paginatedSearchInitialLoadProgress.visibility = VISIBLE
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun showSnackbar() {
|
override fun showSnackbar() {
|
||||||
ViewUtil.showShortSnackbar(binding.paginatedSearchResultsList, errorTextId)
|
ViewUtil.showShortSnackbar(binding!!.paginatedSearchResultsList, errorTextId)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun onQueryUpdated(query: String) {
|
fun onQueryUpdated(query: String) {
|
||||||
|
|
@ -98,14 +91,14 @@ abstract class BasePagingFragment<T> : CommonsDaggerSupportFragment(),
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun showEmptyText(query: String) {
|
override fun showEmptyText(query: String) {
|
||||||
binding.contentNotFound.text = getEmptyText(query)
|
binding!!.contentNotFound.text = getEmptyText(query)
|
||||||
binding.contentNotFound.visibility = VISIBLE
|
binding!!.contentNotFound.visibility = VISIBLE
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract fun getEmptyText(query: String): String
|
abstract fun getEmptyText(query: String): String
|
||||||
|
|
||||||
override fun hideEmptyText() {
|
override fun hideEmptyText() {
|
||||||
binding.contentNotFound.visibility = GONE
|
binding!!.contentNotFound.visibility = GONE
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue