Fix contacts controller

This commit is contained in:
Mario Danic 2019-12-19 13:30:22 +01:00
parent 352147332b
commit ffc62fa4fb
No known key found for this signature in database
GPG Key ID: CDE0BBD2738C4CC0

View File

@ -82,6 +82,10 @@ import io.reactivex.Observer
import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.android.schedulers.AndroidSchedulers
import io.reactivex.disposables.Disposable import io.reactivex.disposables.Disposable
import io.reactivex.schedulers.Schedulers import io.reactivex.schedulers.Schedulers
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.GlobalScope
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import okhttp3.ResponseBody import okhttp3.ResponseBody
import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode import org.greenrobot.eventbus.ThreadMode
@ -215,23 +219,28 @@ class ContactsController : BaseController,
override fun onViewBound(view: View) { override fun onViewBound(view: View) {
super.onViewBound(view) super.onViewBound(view)
currentUser = usersRepository.getActiveUser()
if (currentUser != null) { GlobalScope.launch {
credentials = ApiUtils.getCredentials(currentUser!!.username, currentUser!!.token) currentUser = usersRepository.getActiveUser()
}
if (adapter == null) {
contactItems = ArrayList()
adapter = FlexibleAdapter(contactItems, activity, true)
if (currentUser != null) { if (currentUser != null) {
fetchData(true) credentials = ApiUtils.getCredentials(currentUser!!.username, currentUser!!.token)
}
if (adapter == null) {
contactItems = ArrayList()
adapter = FlexibleAdapter(contactItems, activity, true)
if (currentUser != null) {
fetchData(true)
}
}
setupAdapter()
withContext(Dispatchers.Main) {
prepareViews()
} }
} }
setupAdapter()
prepareViews()
} }
private fun setupAdapter() { private fun setupAdapter() {
@ -240,11 +249,6 @@ class ContactsController : BaseController,
adapter!!.setEndlessScrollListener(this, ProgressItem()) adapter!!.setEndlessScrollListener(this, ProgressItem())
adapter!!.setStickyHeaderElevation(5)
.setUnlinkAllItemsOnRemoveHeaders(true)
.setDisplayHeadersAtStartUp(true)
.setStickyHeaders(true)
adapter!!.addListener(this) adapter!!.addListener(this)
} }
@ -664,6 +668,11 @@ class ContactsController : BaseController,
recyclerView!!.setHasFixedSize(true) recyclerView!!.setHasFixedSize(true)
recyclerView!!.adapter = adapter recyclerView!!.adapter = adapter
adapter!!.setStickyHeaderElevation(5)
.setUnlinkAllItemsOnRemoveHeaders(true)
.setDisplayHeadersAtStartUp(true)
.setStickyHeaders(true)
swipeRefreshLayout!!.setOnRefreshListener { fetchData(true) } swipeRefreshLayout!!.setOnRefreshListener { fetchData(true) }
swipeRefreshLayout!!.setColorSchemeResources(R.color.colorPrimary) swipeRefreshLayout!!.setColorSchemeResources(R.color.colorPrimary)